@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Roboto+Slab:400,700,300,100|Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900,900italic);
@import url(https://fonts.googleapis.com/css?family=Pinyon+Script|Tinos:400,400italic,700,700italic);
@import url(https://fonts.googleapis.com/css?family=Oxygen+Mono);
.element-invisible {
  display: none; }

.no-select {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

@font-face {
  font-family: 'oxbow';
  src: url("../fonts/fontello-oxbow/font/oxbow.eot?");
  src: url("../fonts/fontello-oxbow/font/oxbow.eot?#iefix") format("embedded-opentype"), url("../fonts/fontello-oxbow/font/oxbow.woff") format("woff"), url("../fonts/fontello-oxbow/font/oxbow.ttf") format("truetype"), url("../fonts/fontello-oxbow/font/oxbow.svg#oxbow") format("svg");
  font-weight: bold;
  font-weight: normal;
  font-style: normal; }

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

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

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

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

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

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

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

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

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

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

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

html, body {
  height: 100%; }

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

html, body {
  font-size: 18px; }

body {
  background: #FFFFFF;
  color: #333333;
  cursor: auto;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 150%;
  margin: 0;
  padding: 0;
  position: relative; }

a:hover {
  cursor: pointer; }

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

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

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

.left {
  float: left !important; }

.right {
  float: right !important; }

.clearfix:before, #admin #block-starter-local-tasks ul:before, body.page-node-type-page hr:before, .paragraph .view-front-page .view-content:before, .view-front-page:before, .view-front-page > .view-content .views-row .node .node__title:before, .view-about > .view-content .views-row:before, .view-topics:before, .view-recent-blogs > .view-content:before, .view-client-letter-excerpts:before, .group:before, .clearfix:after, #admin #block-starter-local-tasks ul:after, body.page-node-type-page hr:after, .paragraph .view-front-page .view-content:after, .view-front-page:after, .view-front-page > .view-content .views-row .node .node__title:after, .view-about > .view-content .views-row:after, .view-topics:after, .view-recent-blogs > .view-content:after, .view-client-letter-excerpts:after, .group:after {
  content: " ";
  display: table; }

.clearfix:after, #admin #block-starter-local-tasks ul:after, body.page-node-type-page hr:after, .paragraph .view-front-page .view-content:after, .view-front-page:after, .view-front-page > .view-content .views-row .node .node__title:after, .view-about > .view-content .views-row:after, .view-topics:after, .view-recent-blogs > .view-content:after, .view-client-letter-excerpts:after, .group:after {
  clear: both; }

.hide {
  display: none; }

.invisible {
  visibility: hidden; }

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

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

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

select {
  width: 100%; }

.accordion {
  margin-bottom: 0;
  margin-left: 0; }
  .accordion:before, .accordion:after {
    content: " ";
    display: table; }
  .accordion:after {
    clear: both; }
  .accordion .accordion-navigation, .accordion dd {
    display: block;
    margin-bottom: 0 !important; }
    .accordion .accordion-navigation.active > a, .accordion dd.active > a {
      background: #e8e8e8;
      color: #222222; }
    .accordion .accordion-navigation > a, .accordion dd > a {
      background: #EFEFEF;
      color: #222222;
      display: block;
      font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-size: 0.88889rem;
      padding: 0.88889rem; }
      .accordion .accordion-navigation > a:hover, .accordion dd > a:hover {
        background: #e3e3e3; }
    .accordion .accordion-navigation > .content, .accordion dd > .content {
      display: none;
      padding: 0.75rem; }
      .accordion .accordion-navigation > .content.active, .accordion dd > .content.active {
        background: #FFFFFF;
        display: block; }

.alert-box {
  border-style: solid;
  border-width: 1px;
  display: block;
  font-size: 0.72222rem;
  font-weight: normal;
  margin-bottom: 1.11111rem;
  padding: 1.5rem 2.05556rem 1.5rem 1.5rem;
  position: relative;
  -webkit-transition: opacity 300ms ease-out;
  transition: opacity 300ms ease-out;
  background-color: #3498DB;
  border-color: #2385c6;
  color: #FFFFFF; }
  .alert-box .close {
    right: 0.22222rem;
    background: inherit;
    color: #333333;
    font-size: 1.22222rem;
    line-height: .9;
    margin-top: -0.61111rem;
    opacity: 0.3;
    padding: 0 6px 4px;
    position: absolute;
    top: 50%; }
    .alert-box .close:hover, .alert-box .close:focus {
      opacity: 0.5; }
  .alert-box.radius {
    border-radius: 3px; }
  .alert-box.round {
    border-radius: 1000px; }
  .alert-box.success {
    background-color: #43AC6A;
    border-color: #3a945b;
    color: #FFFFFF; }
  .alert-box.alert {
    background-color: #f04124;
    border-color: #de2d0f;
    color: #FFFFFF; }
  .alert-box.secondary {
    background-color: hotpink;
    border-color: #ff379b;
    color: #7a003d; }
  .alert-box.warning {
    background-color: #f08a24;
    border-color: #de770f;
    color: #FFFFFF; }
  .alert-box.info {
    background-color: #5BB1D3;
    border-color: #3aa1ca;
    color: #FFFFFF; }
  .alert-box.alert-close {
    opacity: 0; }

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

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

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

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

.breadcrumbs {
  border-style: solid;
  border-width: 1px;
  display: block;
  list-style: none;
  margin-left: 0;
  overflow: hidden;
  padding: 0.5rem 0.77778rem 0.5rem;
  background-color: #ffbcdd;
  border-color: #ff8fc7;
  border-radius: 3px; }
  .breadcrumbs > * {
    color: #3498DB;
    float: left;
    font-size: 0.61111rem;
    line-height: 0.61111rem;
    margin: 0;
    text-transform: uppercase; }
    .breadcrumbs > *:hover a, .breadcrumbs > *:focus a {
      text-decoration: underline; }
    .breadcrumbs > * a {
      color: #3498DB; }
    .breadcrumbs > *.current {
      color: #333333;
      cursor: default; }
      .breadcrumbs > *.current a {
        color: #333333;
        cursor: default; }
      .breadcrumbs > *.current:hover, .breadcrumbs > *.current:hover a, .breadcrumbs > *.current:focus, .breadcrumbs > *.current:focus a {
        text-decoration: none; }
    .breadcrumbs > *.unavailable {
      color: #999999; }
      .breadcrumbs > *.unavailable a {
        color: #999999; }
      .breadcrumbs > *.unavailable:hover,
      .breadcrumbs > *.unavailable:hover a, .breadcrumbs > *.unavailable:focus,
      .breadcrumbs > *.unavailable a:focus {
        color: #999999;
        cursor: not-allowed;
        text-decoration: none; }
    .breadcrumbs > *:before {
      color: #AAAAAA;
      content: "/";
      margin: 0 0.66667rem;
      position: relative;
      top: 1px; }
    .breadcrumbs > *:first-child:before {
      content: " ";
      margin: 0; }

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

button, .button {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.88889rem 1.77778rem 0.94444rem 1.77778rem;
  font-size: 0.88889rem;
  background-color: #3498DB;
  border-color: #217bb8;
  color: #FFFFFF;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out; }
  button:hover, button:focus, .button:hover, .button:focus {
    background-color: #217bb8; }
  button:hover, button:focus, .button:hover, .button:focus {
    color: #FFFFFF; }
  button.secondary, .button.secondary {
    background-color: hotpink;
    border-color: #ff2190;
    color: #333333; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      background-color: #ff2190; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      color: #FFFFFF; }
  button.success, .button.success {
    background-color: #43AC6A;
    border-color: #368a55;
    color: #FFFFFF; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      background-color: #368a55; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      color: #FFFFFF; }
  button.alert, .button.alert {
    background-color: #f04124;
    border-color: #cf2a0e;
    color: #FFFFFF; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      background-color: #cf2a0e; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      color: #FFFFFF; }
  button.warning, .button.warning {
    background-color: #f08a24;
    border-color: #cf6e0e;
    color: #FFFFFF; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      background-color: #cf6e0e; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      color: #FFFFFF; }
  button.info, .button.info {
    background-color: #5BB1D3;
    border-color: #3397be;
    color: #FFFFFF; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      background-color: #3397be; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      color: #FFFFFF; }
  button.large, .button.large {
    padding: 1rem 2rem 1.05556rem 2rem;
    font-size: 1.11111rem; }
  button.small, .button.small {
    padding: 0.77778rem 1.55556rem 0.83333rem 1.55556rem;
    font-size: 0.72222rem; }
  button.tiny, .button.tiny {
    padding: 0.55556rem 1.11111rem 0.61111rem 1.11111rem;
    font-size: 0.61111rem; }
  button.expand, .button.expand {
    padding: 0.88889rem 1.77778rem 0.94444rem 1.77778rem;
    font-size: 0.88889rem;
    padding-bottom: 0.94444rem;
    padding-top: 0.88889rem;
    padding-left: 0.88889rem;
    padding-right: 0.88889rem;
    width: 100%; }
  button.left-align, .button.left-align {
    text-align: left;
    text-indent: 0.66667rem; }
  button.right-align, .button.right-align {
    text-align: right;
    padding-right: 0.66667rem; }
  button.radius, .button.radius {
    border-radius: 0.16667rem; }
  button.round, .button.round {
    border-radius: 1000px; }
  button.disabled, button[disabled], .button.disabled, .button[disabled] {
    background-color: #3498DB;
    border-color: #217bb8;
    color: #FFFFFF;
    -webkit-box-shadow: none;
            box-shadow: none;
    cursor: default;
    opacity: 0.7; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #217bb8; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      color: #FFFFFF; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #3498DB; }
    button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .button[disabled].secondary {
      background-color: hotpink;
      border-color: #ff2190;
      color: #333333;
      -webkit-box-shadow: none;
              box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #ff2190; }
      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: #FFFFFF; }
      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: hotpink; }
    button.disabled.success, button[disabled].success, .button.disabled.success, .button[disabled].success {
      background-color: #43AC6A;
      border-color: #368a55;
      color: #FFFFFF;
      -webkit-box-shadow: none;
              box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #368a55; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        color: #FFFFFF; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #43AC6A; }
    button.disabled.alert, button[disabled].alert, .button.disabled.alert, .button[disabled].alert {
      background-color: #f04124;
      border-color: #cf2a0e;
      color: #FFFFFF;
      -webkit-box-shadow: none;
              box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cf2a0e; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        color: #FFFFFF; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #f04124; }
    button.disabled.warning, button[disabled].warning, .button.disabled.warning, .button[disabled].warning {
      background-color: #f08a24;
      border-color: #cf6e0e;
      color: #FFFFFF;
      -webkit-box-shadow: none;
              box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #cf6e0e; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        color: #FFFFFF; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #f08a24; }
    button.disabled.info, button[disabled].info, .button.disabled.info, .button[disabled].info {
      background-color: #5BB1D3;
      border-color: #3397be;
      color: #FFFFFF;
      -webkit-box-shadow: none;
              box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #3397be; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        color: #FFFFFF; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #5BB1D3; }

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

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

.button-group {
  list-style: none;
  margin: 0;
  left: 0; }
  .button-group:before, .button-group:after {
    content: " ";
    display: table; }
  .button-group:after {
    clear: both; }
  .button-group.even-2 li {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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 {
    display: inline-block;
    margin: 0 -2px;
    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-group > li {
    display: inline-block;
    margin: 0 -2px; }
    .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.stack > li {
    display: block;
    margin: 0;
    float: none; }
    .button-group.stack > li > button, .button-group.stack > li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.stack > li:first-child button, .button-group.stack > li:first-child .button {
      border-left: 0; }
    .button-group.stack > li > button, .button-group.stack > li .button {
      border-color: rgba(255, 255, 255, 0.5);
      border-left-width: 0;
      border-top: 1px solid;
      display: block;
      margin: 0; }
    .button-group.stack > li > button {
      width: 100%; }
    .button-group.stack > li:first-child button, .button-group.stack > li:first-child .button {
      border-top: 0; }
  .button-group.stack-for-small > li {
    display: inline-block;
    margin: 0 -2px; }
    .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button {
      border-left: 0; }
    @media only screen and (max-width: 50em) {
      .button-group.stack-for-small > li {
        display: block;
        margin: 0;
        width: 100%; }
        .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button {
          border-left: 1px solid;
          border-color: rgba(255, 255, 255, 0.5); }
        .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button {
          border-left: 0; }
        .button-group.stack-for-small > li > button, .button-group.stack-for-small > li .button {
          border-color: rgba(255, 255, 255, 0.5);
          border-left-width: 0;
          border-top: 1px solid;
          display: block;
          margin: 0; }
        .button-group.stack-for-small > li > button {
          width: 100%; }
        .button-group.stack-for-small > li:first-child button, .button-group.stack-for-small > li:first-child .button {
          border-top: 0; } }
  .button-group.radius > * {
    display: inline-block;
    margin: 0 -2px; }
    .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 > *,
    .button-group.radius > * > a,
    .button-group.radius > * > button,
    .button-group.radius > * > .button {
      border-radius: 0; }
    .button-group.radius > *:first-child,
    .button-group.radius > *:first-child > a,
    .button-group.radius > *:first-child > button,
    .button-group.radius > *:first-child > .button {
      -webkit-border-bottom-left-radius: 0.16667rem;
      -webkit-border-top-left-radius: 0.16667rem;
      border-bottom-left-radius: 0.16667rem;
      border-top-left-radius: 0.16667rem; }
    .button-group.radius > *:last-child,
    .button-group.radius > *:last-child > a,
    .button-group.radius > *:last-child > button,
    .button-group.radius > *:last-child > .button {
      -webkit-border-bottom-right-radius: 0.16667rem;
      -webkit-border-top-right-radius: 0.16667rem;
      border-bottom-right-radius: 0.16667rem;
      border-top-right-radius: 0.16667rem; }
  .button-group.radius.stack > * {
    display: block;
    margin: 0; }
    .button-group.radius.stack > * > button, .button-group.radius.stack > * .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.radius.stack > *:first-child button, .button-group.radius.stack > *:first-child .button {
      border-left: 0; }
    .button-group.radius.stack > * > button, .button-group.radius.stack > * .button {
      border-color: rgba(255, 255, 255, 0.5);
      border-left-width: 0;
      border-top: 1px solid;
      display: block;
      margin: 0; }
    .button-group.radius.stack > * > button {
      width: 100%; }
    .button-group.radius.stack > *:first-child button, .button-group.radius.stack > *:first-child .button {
      border-top: 0; }
    .button-group.radius.stack > *,
    .button-group.radius.stack > * > a,
    .button-group.radius.stack > * > button,
    .button-group.radius.stack > * > .button {
      border-radius: 0; }
    .button-group.radius.stack > *:first-child,
    .button-group.radius.stack > *:first-child > a,
    .button-group.radius.stack > *:first-child > button,
    .button-group.radius.stack > *:first-child > .button {
      -webkit-top-left-radius: 0.16667rem;
      -webkit-top-right-radius: 0.16667rem;
      border-top-left-radius: 0.16667rem;
      border-top-right-radius: 0.16667rem; }
    .button-group.radius.stack > *:last-child,
    .button-group.radius.stack > *:last-child > a,
    .button-group.radius.stack > *:last-child > button,
    .button-group.radius.stack > *:last-child > .button {
      -webkit-bottom-left-radius: 0.16667rem;
      -webkit-bottom-right-radius: 0.16667rem;
      border-bottom-left-radius: 0.16667rem;
      border-bottom-right-radius: 0.16667rem; }
  @media only screen and (min-width: 50.0625em) {
    .button-group.radius.stack-for-small > * {
      display: inline-block;
      margin: 0 -2px; }
      .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button {
        border-left: 1px solid;
        border-color: rgba(255, 255, 255, 0.5); }
      .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button {
        border-left: 0; }
      .button-group.radius.stack-for-small > *,
      .button-group.radius.stack-for-small > * > a,
      .button-group.radius.stack-for-small > * > button,
      .button-group.radius.stack-for-small > * > .button {
        border-radius: 0; }
      .button-group.radius.stack-for-small > *:first-child,
      .button-group.radius.stack-for-small > *:first-child > a,
      .button-group.radius.stack-for-small > *:first-child > button,
      .button-group.radius.stack-for-small > *:first-child > .button {
        -webkit-border-bottom-left-radius: 0.16667rem;
        -webkit-border-top-left-radius: 0.16667rem;
        border-bottom-left-radius: 0.16667rem;
        border-top-left-radius: 0.16667rem; }
      .button-group.radius.stack-for-small > *:last-child,
      .button-group.radius.stack-for-small > *:last-child > a,
      .button-group.radius.stack-for-small > *:last-child > button,
      .button-group.radius.stack-for-small > *:last-child > .button {
        -webkit-border-bottom-right-radius: 0.16667rem;
        -webkit-border-top-right-radius: 0.16667rem;
        border-bottom-right-radius: 0.16667rem;
        border-top-right-radius: 0.16667rem; } }
  @media only screen and (max-width: 50em) {
    .button-group.radius.stack-for-small > * {
      display: block;
      margin: 0; }
      .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button {
        border-left: 1px solid;
        border-color: rgba(255, 255, 255, 0.5); }
      .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button {
        border-left: 0; }
      .button-group.radius.stack-for-small > * > button, .button-group.radius.stack-for-small > * .button {
        border-color: rgba(255, 255, 255, 0.5);
        border-left-width: 0;
        border-top: 1px solid;
        display: block;
        margin: 0; }
      .button-group.radius.stack-for-small > * > button {
        width: 100%; }
      .button-group.radius.stack-for-small > *:first-child button, .button-group.radius.stack-for-small > *:first-child .button {
        border-top: 0; }
      .button-group.radius.stack-for-small > *,
      .button-group.radius.stack-for-small > * > a,
      .button-group.radius.stack-for-small > * > button,
      .button-group.radius.stack-for-small > * > .button {
        border-radius: 0; }
      .button-group.radius.stack-for-small > *:first-child,
      .button-group.radius.stack-for-small > *:first-child > a,
      .button-group.radius.stack-for-small > *:first-child > button,
      .button-group.radius.stack-for-small > *:first-child > .button {
        -webkit-top-left-radius: 0.16667rem;
        -webkit-top-right-radius: 0.16667rem;
        border-top-left-radius: 0.16667rem;
        border-top-right-radius: 0.16667rem; }
      .button-group.radius.stack-for-small > *:last-child,
      .button-group.radius.stack-for-small > *:last-child > a,
      .button-group.radius.stack-for-small > *:last-child > button,
      .button-group.radius.stack-for-small > *:last-child > .button {
        -webkit-bottom-left-radius: 0.16667rem;
        -webkit-bottom-right-radius: 0.16667rem;
        border-bottom-left-radius: 0.16667rem;
        border-bottom-right-radius: 0.16667rem; } }
  .button-group.round > * {
    display: inline-block;
    margin: 0 -2px; }
    .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 > *,
    .button-group.round > * > a,
    .button-group.round > * > button,
    .button-group.round > * > .button {
      border-radius: 0; }
    .button-group.round > *:first-child,
    .button-group.round > *:first-child > a,
    .button-group.round > *:first-child > button,
    .button-group.round > *:first-child > .button {
      -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 > button,
    .button-group.round > *:last-child > .button {
      -webkit-border-bottom-right-radius: 1000px;
      -webkit-border-top-right-radius: 1000px;
      border-bottom-right-radius: 1000px;
      border-top-right-radius: 1000px; }
  .button-group.round.stack > * {
    display: block;
    margin: 0; }
    .button-group.round.stack > * > button, .button-group.round.stack > * .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.round.stack > *:first-child button, .button-group.round.stack > *:first-child .button {
      border-left: 0; }
    .button-group.round.stack > * > button, .button-group.round.stack > * .button {
      border-color: rgba(255, 255, 255, 0.5);
      border-left-width: 0;
      border-top: 1px solid;
      display: block;
      margin: 0; }
    .button-group.round.stack > * > button {
      width: 100%; }
    .button-group.round.stack > *:first-child button, .button-group.round.stack > *:first-child .button {
      border-top: 0; }
    .button-group.round.stack > *,
    .button-group.round.stack > * > a,
    .button-group.round.stack > * > button,
    .button-group.round.stack > * > .button {
      border-radius: 0; }
    .button-group.round.stack > *:first-child,
    .button-group.round.stack > *:first-child > a,
    .button-group.round.stack > *:first-child > button,
    .button-group.round.stack > *:first-child > .button {
      -webkit-top-left-radius: 0.88889rem;
      -webkit-top-right-radius: 0.88889rem;
      border-top-left-radius: 0.88889rem;
      border-top-right-radius: 0.88889rem; }
    .button-group.round.stack > *:last-child,
    .button-group.round.stack > *:last-child > a,
    .button-group.round.stack > *:last-child > button,
    .button-group.round.stack > *:last-child > .button {
      -webkit-bottom-left-radius: 0.88889rem;
      -webkit-bottom-right-radius: 0.88889rem;
      border-bottom-left-radius: 0.88889rem;
      border-bottom-right-radius: 0.88889rem; }
  @media only screen and (min-width: 50.0625em) {
    .button-group.round.stack-for-small > * {
      display: inline-block;
      margin: 0 -2px; }
      .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button {
        border-left: 1px solid;
        border-color: rgba(255, 255, 255, 0.5); }
      .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button {
        border-left: 0; }
      .button-group.round.stack-for-small > *,
      .button-group.round.stack-for-small > * > a,
      .button-group.round.stack-for-small > * > button,
      .button-group.round.stack-for-small > * > .button {
        border-radius: 0; }
      .button-group.round.stack-for-small > *:first-child,
      .button-group.round.stack-for-small > *:first-child > a,
      .button-group.round.stack-for-small > *:first-child > button,
      .button-group.round.stack-for-small > *:first-child > .button {
        -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.stack-for-small > *:last-child,
      .button-group.round.stack-for-small > *:last-child > a,
      .button-group.round.stack-for-small > *:last-child > button,
      .button-group.round.stack-for-small > *:last-child > .button {
        -webkit-border-bottom-right-radius: 1000px;
        -webkit-border-top-right-radius: 1000px;
        border-bottom-right-radius: 1000px;
        border-top-right-radius: 1000px; } }
  @media only screen and (max-width: 50em) {
    .button-group.round.stack-for-small > * {
      display: block;
      margin: 0; }
      .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button {
        border-left: 1px solid;
        border-color: rgba(255, 255, 255, 0.5); }
      .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button {
        border-left: 0; }
      .button-group.round.stack-for-small > * > button, .button-group.round.stack-for-small > * .button {
        border-color: rgba(255, 255, 255, 0.5);
        border-left-width: 0;
        border-top: 1px solid;
        display: block;
        margin: 0; }
      .button-group.round.stack-for-small > * > button {
        width: 100%; }
      .button-group.round.stack-for-small > *:first-child button, .button-group.round.stack-for-small > *:first-child .button {
        border-top: 0; }
      .button-group.round.stack-for-small > *,
      .button-group.round.stack-for-small > * > a,
      .button-group.round.stack-for-small > * > button,
      .button-group.round.stack-for-small > * > .button {
        border-radius: 0; }
      .button-group.round.stack-for-small > *:first-child,
      .button-group.round.stack-for-small > *:first-child > a,
      .button-group.round.stack-for-small > *:first-child > button,
      .button-group.round.stack-for-small > *:first-child > .button {
        -webkit-top-left-radius: 0.88889rem;
        -webkit-top-right-radius: 0.88889rem;
        border-top-left-radius: 0.88889rem;
        border-top-right-radius: 0.88889rem; }
      .button-group.round.stack-for-small > *:last-child,
      .button-group.round.stack-for-small > *:last-child > a,
      .button-group.round.stack-for-small > *:last-child > button,
      .button-group.round.stack-for-small > *:last-child > .button {
        -webkit-bottom-left-radius: 0.88889rem;
        -webkit-bottom-right-radius: 0.88889rem;
        border-bottom-left-radius: 0.88889rem;
        border-bottom-right-radius: 0.88889rem; } }

.button-bar:before, .button-bar:after {
  content: " ";
  display: table; }

.button-bar:after {
  clear: both; }

.button-bar .button-group {
  float: left;
  margin-right: 0.55556rem; }
  .button-bar .button-group div {
    overflow: hidden; }

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

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

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

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

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

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

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

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

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

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

/* Foundation Dropdowns */
.f-dropdown {
  display: none;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  position: absolute;
  background: #FFFFFF;
  border: solid 1px #cccccc;
  font-size: 0.77778rem;
  height: auto;
  max-height: none;
  width: 100%;
  z-index: 89;
  margin-top: 2px;
  max-width: 200px; }
  .f-dropdown.open {
    display: block; }
  .f-dropdown > *:first-child {
    margin-top: 0; }
  .f-dropdown > *:last-child {
    margin-bottom: 0; }
  .f-dropdown:before {
    border: inset 6px;
    content: "";
    display: block;
    height: 0;
    width: 0;
    border-color: transparent transparent #FFFFFF transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -12px;
    left: 10px;
    z-index: 89; }
  .f-dropdown:after {
    border: inset 7px;
    content: "";
    display: block;
    height: 0;
    width: 0;
    border-color: transparent transparent #cccccc transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -14px;
    left: 9px;
    z-index: 88; }
  .f-dropdown.right:before {
    left: auto;
    right: 10px; }
  .f-dropdown.right:after {
    left: auto;
    right: 9px; }
  .f-dropdown.drop-right {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.77778rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-top: 0;
    margin-left: 2px;
    max-width: 200px; }
    .f-dropdown.drop-right.open {
      display: block; }
    .f-dropdown.drop-right > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-right > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-right:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent #FFFFFF transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 10px;
      left: -12px;
      z-index: 89; }
    .f-dropdown.drop-right:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent #cccccc transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 9px;
      left: -14px;
      z-index: 88; }
  .f-dropdown.drop-left {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.77778rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-top: 0;
    margin-left: -2px;
    max-width: 200px; }
    .f-dropdown.drop-left.open {
      display: block; }
    .f-dropdown.drop-left > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-left > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-left:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent #FFFFFF;
      border-left-style: solid;
      position: absolute;
      top: 10px;
      right: -12px;
      left: auto;
      z-index: 89; }
    .f-dropdown.drop-left:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent #cccccc;
      border-left-style: solid;
      position: absolute;
      top: 9px;
      right: -14px;
      left: auto;
      z-index: 88; }
  .f-dropdown.drop-top {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.77778rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-left: 0;
    margin-top: -2px;
    max-width: 200px; }
    .f-dropdown.drop-top.open {
      display: block; }
    .f-dropdown.drop-top > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-top > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-top:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: #FFFFFF transparent transparent transparent;
      border-top-style: solid;
      bottom: -12px;
      position: absolute;
      top: auto;
      left: 10px;
      right: auto;
      z-index: 89; }
    .f-dropdown.drop-top:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: #cccccc transparent transparent transparent;
      border-top-style: solid;
      bottom: -14px;
      position: absolute;
      top: auto;
      left: 9px;
      right: auto;
      z-index: 88; }
  .f-dropdown li {
    cursor: pointer;
    font-size: 0.77778rem;
    line-height: 1rem;
    margin: 0; }
    .f-dropdown li:hover, .f-dropdown li:focus {
      background: #EEEEEE; }
    .f-dropdown li a {
      display: block;
      padding: 0.5rem;
      color: #555555; }
  .f-dropdown.content {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.77778rem;
    height: auto;
    max-height: none;
    padding: 1.11111rem;
    width: 100%;
    z-index: 89;
    max-width: 200px; }
    .f-dropdown.content.open {
      display: block; }
    .f-dropdown.content > *:first-child {
      margin-top: 0; }
    .f-dropdown.content > *:last-child {
      margin-bottom: 0; }
  .f-dropdown.radius {
    border-radius: 3px; }
  .f-dropdown.tiny {
    max-width: 200px; }
  .f-dropdown.small {
    max-width: 300px; }
  .f-dropdown.medium {
    max-width: 500px; }
  .f-dropdown.large {
    max-width: 800px; }
  .f-dropdown.mega {
    width: 100% !important;
    max-width: 100% !important; }
    .f-dropdown.mega.open {
      left: 0 !important; }

.dropdown.button, button.dropdown {
  position: relative;
  padding-right: 3.16667rem; }
  .dropdown.button::after, button.dropdown::after {
    border-color: #FFFFFF transparent transparent transparent;
    border-style: solid;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: 50%;
    width: 0; }
  .dropdown.button::after, button.dropdown::after {
    border-width: 0.33333rem;
    right: 1.25rem;
    margin-top: -0.13889rem; }
  .dropdown.button::after, button.dropdown::after {
    border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.tiny, button.dropdown.tiny {
    padding-right: 2.33333rem; }
    .dropdown.button.tiny:after, button.dropdown.tiny:after {
      border-width: 0.33333rem;
      right: 1rem;
      margin-top: -0.11111rem; }
    .dropdown.button.tiny::after, button.dropdown.tiny::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.small, button.dropdown.small {
    padding-right: 2.72222rem; }
    .dropdown.button.small::after, button.dropdown.small::after {
      border-width: 0.38889rem;
      right: 1.16667rem;
      margin-top: -0.13889rem; }
    .dropdown.button.small::after, button.dropdown.small::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.large, button.dropdown.large {
    padding-right: 3.22222rem; }
    .dropdown.button.large::after, button.dropdown.large::after {
      border-width: 0.27778rem;
      right: 1.52778rem;
      margin-top: -0.13889rem; }
    .dropdown.button.large::after, button.dropdown.large::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.secondary:after, button.dropdown.secondary:after {
    border-color: #333333 transparent transparent transparent; }

.flex-video {
  height: 0;
  margin-bottom: 0.88889rem;
  overflow: hidden;
  padding-bottom: 67.5%;
  padding-top: 1.38889rem;
  position: relative; }
  .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 {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    left: 0; }

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

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

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

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

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

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

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

.prefix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 0.16667rem;
  -webkit-border-top-left-radius: 0.16667rem;
  border-bottom-left-radius: 0.16667rem;
  border-top-left-radius: 0.16667rem; }

.postfix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 0.16667rem;
  -webkit-border-top-right-radius: 0.16667rem;
  border-bottom-right-radius: 0.16667rem;
  border-top-right-radius: 0.16667rem; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

::-webkit-input-placeholder {
  color: #cccccc; }

:-moz-placeholder {
  /* Firefox 18- */
  color: #cccccc; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: #cccccc; }

:-ms-input-placeholder {
  color: #cccccc; }

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

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

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

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

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

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

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

span.error, small.error {
  display: block;
  font-size: 0.66667rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1.5rem;
  margin-top: -1px;
  padding: 0.33333rem 0.5rem 0.5rem;
  background: #f04124;
  color: #FFFFFF; }

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

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

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

.error small.error {
  display: block;
  font-size: 0.66667rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1.5rem;
  margin-top: -1px;
  padding: 0.33333rem 0.5rem 0.5rem;
  background: #f04124;
  color: #FFFFFF; }

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

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

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

label.error {
  color: #f04124; }

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

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

.column + .column:last-child,
.columns + .column:last-child, .column +
.columns:last-child,
.columns +
.columns:last-child {
  float: right; }

.column + .column.end,
.columns + .column.end, .column +
.columns.end,
.columns +
.columns.end {
  float: left; }

@media only screen and (min-width: 33.8125em) {
  .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.75rem;
    padding-right: 0.75rem;
    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, form .form-item.webform-component-time .webform-container-inline > * {
    width: 100%; }
  .small-offset-0 {
    margin-left: 0 !important; }
  .small-offset-1 {
    margin-left: 8.33333% !important; }
  .small-offset-2 {
    margin-left: 16.66667% !important; }
  .small-offset-3 {
    margin-left: 25% !important; }
  .small-offset-4 {
    margin-left: 33.33333% !important; }
  .small-offset-5 {
    margin-left: 41.66667% !important; }
  .small-offset-6 {
    margin-left: 50% !important; }
  .small-offset-7 {
    margin-left: 58.33333% !important; }
  .small-offset-8 {
    margin-left: 66.66667% !important; }
  .small-offset-9 {
    margin-left: 75% !important; }
  .small-offset-10 {
    margin-left: 83.33333% !important; }
  .small-offset-11 {
    margin-left: 91.66667% !important; }
  .small-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.small-centered,
  .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.small-uncentered,
  .columns.small-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.small-centered:last-child,
  .columns.small-centered:last-child {
    float: none; }
  .column.small-uncentered:last-child,
  .columns.small-uncentered:last-child {
    float: left; }
  .column.small-uncentered.opposite,
  .columns.small-uncentered.opposite {
    float: right; }
  .row.small-collapse > .column,
  .row.small-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.small-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.small-uncollapse > .column,
  .row.small-uncollapse > .columns {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    float: left; } }

@media only screen and (min-width: 50.0625em) {
  .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.75rem;
    padding-right: 0.75rem;
    float: left; }
  .medium-1 {
    width: 8.33333%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-3 {
    width: 25%; }
  .medium-4, form .form-item.webform-component-time .webform-container-inline > * {
    width: 33.33333%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-6 {
    width: 50%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-9 {
    width: 75%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-0 {
    margin-left: 0 !important; }
  .medium-offset-1 {
    margin-left: 8.33333% !important; }
  .medium-offset-2 {
    margin-left: 16.66667% !important; }
  .medium-offset-3 {
    margin-left: 25% !important; }
  .medium-offset-4 {
    margin-left: 33.33333% !important; }
  .medium-offset-5 {
    margin-left: 41.66667% !important; }
  .medium-offset-6 {
    margin-left: 50% !important; }
  .medium-offset-7 {
    margin-left: 58.33333% !important; }
  .medium-offset-8 {
    margin-left: 66.66667% !important; }
  .medium-offset-9 {
    margin-left: 75% !important; }
  .medium-offset-10 {
    margin-left: 83.33333% !important; }
  .medium-offset-11 {
    margin-left: 91.66667% !important; }
  .medium-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.medium-centered,
  .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.medium-uncentered,
  .columns.medium-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.medium-centered:last-child,
  .columns.medium-centered:last-child {
    float: none; }
  .column.medium-uncentered:last-child,
  .columns.medium-uncentered:last-child {
    float: left; }
  .column.medium-uncentered.opposite,
  .columns.medium-uncentered.opposite {
    float: right; }
  .row.medium-collapse > .column,
  .row.medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.medium-uncollapse > .column,
  .row.medium-uncollapse > .columns {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    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.0625em) {
  .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.75rem;
    padding-right: 0.75rem;
    float: left; }
  .large-1 {
    width: 8.33333%; }
  .large-2 {
    width: 16.66667%; }
  .large-3 {
    width: 25%; }
  .large-4 {
    width: 33.33333%; }
  .large-5 {
    width: 41.66667%; }
  .large-6 {
    width: 50%; }
  .large-7 {
    width: 58.33333%; }
  .large-8 {
    width: 66.66667%; }
  .large-9 {
    width: 75%; }
  .large-10 {
    width: 83.33333%; }
  .large-11 {
    width: 91.66667%; }
  .large-12 {
    width: 100%; }
  .large-offset-0 {
    margin-left: 0 !important; }
  .large-offset-1 {
    margin-left: 8.33333% !important; }
  .large-offset-2 {
    margin-left: 16.66667% !important; }
  .large-offset-3 {
    margin-left: 25% !important; }
  .large-offset-4 {
    margin-left: 33.33333% !important; }
  .large-offset-5 {
    margin-left: 41.66667% !important; }
  .large-offset-6 {
    margin-left: 50% !important; }
  .large-offset-7 {
    margin-left: 58.33333% !important; }
  .large-offset-8 {
    margin-left: 66.66667% !important; }
  .large-offset-9 {
    margin-left: 75% !important; }
  .large-offset-10 {
    margin-left: 83.33333% !important; }
  .large-offset-11 {
    margin-left: 91.66667% !important; }
  .large-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.large-centered,
  .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.large-uncentered,
  .columns.large-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.large-centered:last-child,
  .columns.large-centered:last-child {
    float: none; }
  .column.large-uncentered:last-child,
  .columns.large-uncentered:last-child {
    float: left; }
  .column.large-uncentered.opposite,
  .columns.large-uncentered.opposite {
    float: right; }
  .row.large-collapse > .column,
  .row.large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.large-uncollapse > .column,
  .row.large-uncollapse > .columns {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    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; } }

.inline-list {
  list-style: none;
  margin-top: 0;
  margin-bottom: 0.94444rem;
  margin-left: -1.22222rem;
  margin-right: 0;
  overflow: hidden;
  padding: 0; }
  .inline-list > li {
    display: block;
    float: left;
    list-style: none;
    margin-left: 1.22222rem; }
    .inline-list > li > * {
      display: block; }

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

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

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

.joyride-content-wrapper {
  padding: 1rem 1.11111rem 1.33333rem;
  width: 100%; }
  .joyride-content-wrapper .button {
    margin-bottom: 0 !important; }
  .joyride-content-wrapper .joyride-prev-tip {
    margin-right: 10px; }

/* Add a little css triangle pip, older browser just miss out on the fanciness of it */
.joyride-tip-guide .joyride-nub {
  border: 10px solid #333333;
  display: block;
  height: 0;
  position: absolute;
  width: 0;
  left: 22px; }
  .joyride-tip-guide .joyride-nub.top {
    border-color: #333333;
    border-top-color: transparent !important;
    border-top-style: solid;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    top: -20px; }
  .joyride-tip-guide .joyride-nub.bottom {
    border-color: #333333 !important;
    border-bottom-color: transparent !important;
    border-bottom-style: solid;
    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 .node-page.has-pb-menu > .content > .pb-menu > ul li a,
.node-page.has-pb-menu > .content > .pb-menu > ul li .joyride-tip-guide a,
.joyride-tip-guide h6 {
  color: #FFFFFF;
  font-weight: bold;
  line-height: 1.25;
  margin: 0; }

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

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

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

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

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

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

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

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

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

.label {
  display: inline-block;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1;
  margin-bottom: auto;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  padding: 0.22222rem 0.44444rem 0.22222rem;
  font-size: 0.61111rem;
  background-color: #3498DB;
  color: #FFFFFF; }
  .label.radius {
    border-radius: 3px; }
  .label.round {
    border-radius: 1000px; }
  .label.alert {
    background-color: #f04124;
    color: #FFFFFF; }
  .label.warning {
    background-color: #f08a24;
    color: #FFFFFF; }
  .label.success {
    background-color: #43AC6A;
    color: #FFFFFF; }
  .label.secondary {
    background-color: hotpink;
    color: #333333; }
  .label.info {
    background-color: #5BB1D3;
    color: #FFFFFF; }

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

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

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

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

.orbit-container {
  background: none;
  overflow: hidden;
  position: relative;
  width: 100%; }
  .orbit-container .orbit-slides-container {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
    .orbit-container .orbit-slides-container img {
      display: block;
      max-width: 100%; }
    .orbit-container .orbit-slides-container > * {
      position: absolute;
      top: 0;
      width: 100%;
      margin-left: 100%; }
      .orbit-container .orbit-slides-container > *:first-child {
        margin-left: 0; }
      .orbit-container .orbit-slides-container > * .orbit-caption {
        bottom: 0;
        position: absolute;
        background-color: rgba(51, 51, 51, 0.8);
        color: #FFFFFF;
        font-size: 0.77778rem;
        padding: 0.55556rem 0.77778rem;
        width: 100%; }
  .orbit-container .orbit-slide-number {
    left: 10px;
    background: rgba(0, 0, 0, 0);
    color: #FFFFFF;
    font-size: 12px;
    position: absolute;
    top: 10px;
    z-index: 10; }
    .orbit-container .orbit-slide-number span {
      font-weight: 700;
      padding: 0.27778rem; }
  .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 {
      border: solid 4px #FFFFFF;
      border-bottom: none;
      border-top: none;
      display: none;
      height: 14px;
      position: absolute;
      top: 0;
      width: 11px;
      right: 0; }
    .orbit-container .orbit-timer.paused > span {
      top: 0;
      width: 11px;
      height: 14px;
      border: inset 8px;
      border-left-style: solid;
      border-color: transparent;
      border-left-color: #FFFFFF;
      right: -4px; }
      .orbit-container .orbit-timer.paused > span.dark {
        border-left-color: #333333; }
  .orbit-container:hover .orbit-timer > span {
    display: block; }
  .orbit-container .orbit-prev,
  .orbit-container .orbit-next {
    background-color: transparent;
    color: white;
    height: 60px;
    line-height: 50px;
    margin-top: -25px;
    position: absolute;
    text-indent: -9999px !important;
    top: 45%;
    width: 36px;
    z-index: 10; }
    .orbit-container .orbit-prev:hover,
    .orbit-container .orbit-next:hover {
      background-color: rgba(0, 0, 0, 0.3); }
    .orbit-container .orbit-prev > span,
    .orbit-container .orbit-next > span {
      border: inset 10px;
      display: block;
      height: 0;
      margin-top: -10px;
      position: absolute;
      top: 50%;
      width: 0; }
  .orbit-container .orbit-prev {
    left: 0; }
    .orbit-container .orbit-prev > span {
      border-right-style: solid;
      border-color: transparent;
      border-right-color: #FFFFFF; }
    .orbit-container .orbit-prev:hover > span {
      border-right-color: #FFFFFF; }
  .orbit-container .orbit-next {
    right: 0; }
    .orbit-container .orbit-next > span {
      border-color: transparent;
      border-left-style: solid;
      border-left-color: #FFFFFF;
      left: 50%;
      margin-left: -4px; }
    .orbit-container .orbit-next:hover > span {
      border-left-color: #FFFFFF; }

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

.orbit-bullets {
  display: block;
  float: none;
  margin: 0 auto 30px auto;
  overflow: hidden;
  position: relative;
  text-align: center;
  top: 10px; }
  .orbit-bullets li {
    background: #CCCCCC;
    cursor: pointer;
    display: inline-block;
    float: none;
    height: 0.5rem;
    margin-right: 6px;
    width: 0.5rem;
    border-radius: 1000px; }
    .orbit-bullets li.active {
      background: #999999; }
    .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: 50.0625em) {
  .touch .orbit-container .orbit-prev,
  .touch .orbit-container .orbit-next {
    display: inherit; }
  .touch .orbit-bullets {
    display: block; } }

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

ul.pagination {
  display: block;
  margin-left: -0.27778rem;
  min-height: 1.33333rem; }
  ul.pagination li {
    color: #222222;
    font-size: 0.77778rem;
    height: 1.33333rem;
    margin-left: 0.27778rem; }
    ul.pagination li a, ul.pagination li button {
      border-radius: 3px;
      -webkit-transition: background-color 300ms ease-out;
      transition: background-color 300ms ease-out;
      background: none;
      color: #999999;
      display: block;
      font-size: 1em;
      font-weight: normal;
      line-height: inherit;
      padding: 0.05556rem 0.55556rem 0.05556rem; }
    ul.pagination li:hover a,
    ul.pagination li a:focus,
    ul.pagination li:hover button,
    ul.pagination li button:focus {
      background: #e6e6e6; }
    ul.pagination li.unavailable a, ul.pagination li.unavailable button {
      cursor: default;
      color: #999999;
      pointer-events: none; }
    ul.pagination li.unavailable:hover a,
    ul.pagination li.unavailable a:focus,
    ul.pagination li.unavailable:hover button,
    ul.pagination li.unavailable button:focus {
      background: transparent; }
    ul.pagination li.current a, ul.pagination li.current button {
      background: #3498DB;
      color: #FFFFFF;
      cursor: default;
      font-weight: bold; }
      ul.pagination li.current a:hover, ul.pagination li.current a:focus, ul.pagination li.current button:hover, ul.pagination li.current button:focus {
        background: #3498DB; }
  ul.pagination li {
    display: block;
    float: left; }

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

/* Panels */
.panel {
  border-style: solid;
  border-width: 1px;
  border-color: #d8d8d8;
  margin-bottom: 1.11111rem;
  padding: 1.11111rem;
  background: #f2f2f2;
  color: #333333; }
  .panel > :first-child {
    margin-top: 0; }
  .panel > :last-child {
    margin-bottom: 0; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel .node-page.has-pb-menu > .content > .pb-menu > ul li a, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel a, .panel h6, .panel p, .panel li, .panel dl {
    color: #333333; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel .node-page.has-pb-menu > .content > .pb-menu > ul li a, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel a, .panel h6 {
    line-height: 1;
    margin-bottom: 0.55556rem; }
    .panel h1.subheader, .panel h2.subheader, .panel h3.subheader, .panel h4.subheader, .panel h5.subheader, .panel .node-page.has-pb-menu > .content > .pb-menu > ul li a.subheader, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel a.subheader, .panel h6.subheader {
      line-height: 1.4; }
  .panel.callout {
    border-style: solid;
    border-width: 1px;
    border-color: #d8d8d8;
    margin-bottom: 1.11111rem;
    padding: 1.11111rem;
    background: #f3f9fd;
    color: #333333; }
    .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 .node-page.has-pb-menu > .content > .pb-menu > ul li a, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel.callout a, .panel.callout h6, .panel.callout p, .panel.callout li, .panel.callout dl {
      color: #333333; }
    .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout .node-page.has-pb-menu > .content > .pb-menu > ul li a, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel.callout a, .panel.callout h6 {
      line-height: 1;
      margin-bottom: 0.55556rem; }
      .panel.callout h1.subheader, .panel.callout h2.subheader, .panel.callout h3.subheader, .panel.callout h4.subheader, .panel.callout h5.subheader, .panel.callout .node-page.has-pb-menu > .content > .pb-menu > ul li a.subheader, .node-page.has-pb-menu > .content > .pb-menu > ul li .panel.callout a.subheader, .panel.callout h6.subheader {
        line-height: 1.4; }
    .panel.callout a:not(.button) {
      color: #3498DB; }
      .panel.callout a:not(.button):hover, .panel.callout a:not(.button):focus {
        color: #2385c6; }
  .panel.radius {
    border-radius: 3px; }

/* Pricing Tables */
.pricing-table {
  border: solid 1px #DDDDDD;
  margin-left: 0;
  margin-bottom: 1.11111rem; }
  .pricing-table * {
    list-style: none;
    line-height: 1; }
  .pricing-table .title {
    background-color: #333333;
    color: #EEEEEE;
    font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 0.88889rem;
    font-weight: normal;
    padding: 0.83333rem 1.11111rem;
    text-align: center; }
  .pricing-table .price {
    background-color: #F6F6F6;
    color: #333333;
    font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 1.77778rem;
    font-weight: normal;
    padding: 0.83333rem 1.11111rem;
    text-align: center; }
  .pricing-table .description {
    background-color: #FFFFFF;
    border-bottom: dotted 1px #DDDDDD;
    color: #777777;
    font-size: 0.66667rem;
    font-weight: normal;
    line-height: 1.4;
    padding: 0.83333rem;
    text-align: center; }
  .pricing-table .bullet-item {
    background-color: #FFFFFF;
    border-bottom: dotted 1px #DDDDDD;
    color: #333333;
    font-size: 0.77778rem;
    font-weight: normal;
    padding: 0.83333rem;
    text-align: center; }
  .pricing-table .cta-button {
    background-color: #FFFFFF;
    padding: 1.11111rem 1.11111rem 0;
    text-align: center; }

/* Progress Bar */
.progress {
  background-color: #F6F6F6;
  border: 1px solid white;
  height: 1.38889rem;
  margin-bottom: 0.55556rem;
  padding: 0.11111rem; }
  .progress .meter {
    background: #3498DB;
    display: block;
    height: 100%;
    float: left;
    width: 0%; }
    .progress .meter.secondary {
      background: hotpink;
      display: block;
      height: 100%;
      float: left;
      width: 0%; }
    .progress .meter.success {
      background: #43AC6A;
      display: block;
      height: 100%;
      float: left;
      width: 0%; }
    .progress .meter.alert {
      background: #f04124;
      display: block;
      height: 100%;
      float: left;
      width: 0%; }
  .progress.secondary .meter {
    background: hotpink;
    display: block;
    height: 100%;
    float: left;
    width: 0%; }
  .progress.success .meter {
    background: #43AC6A;
    display: block;
    height: 100%;
    float: left;
    width: 0%; }
  .progress.alert .meter {
    background: #f04124;
    display: block;
    height: 100%;
    float: left;
    width: 0%; }
  .progress.radius {
    border-radius: 3px; }
    .progress.radius .meter {
      border-radius: 2px; }
  .progress.round {
    border-radius: 1000px; }
    .progress.round .meter {
      border-radius: 999px; }

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

.reveal-modal {
  border-radius: 3px;
  display: none;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: 1005;
  left: 0;
  background-color: #FFFFFF;
  padding: 1.66667rem;
  border: solid 1px #666666;
  -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: 50em) {
    .reveal-modal {
      min-height: 100vh; } }
  .reveal-modal .column, .reveal-modal .columns {
    min-width: 0; }
  .reveal-modal > :first-child {
    margin-top: 0; }
  .reveal-modal > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 80%; } }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal {
      top: 5.55556rem; } }
  .reveal-modal.radius {
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 3px; }
  .reveal-modal.round {
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 1000px; }
  .reveal-modal.collapse {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal.tiny {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 30%; } }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal.small {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 40%; } }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal.medium {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 60%; } }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal.large {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 70%; } }
  @media only screen and (min-width: 50.0625em) {
    .reveal-modal.xlarge {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 95%; } }
  .reveal-modal.full {
    height: 100vh;
    height: 100%;
    left: 0;
    margin-left: 0 !important;
    max-width: none !important;
    min-height: 100vh;
    top: 0; }
    @media only screen and (min-width: 50.0625em) {
      .reveal-modal.full {
        left: 0;
        margin: 0 auto;
        max-width: 62.5rem;
        right: 0;
        width: 100%; } }
  .reveal-modal.toback {
    z-index: 1003; }
  .reveal-modal .close-reveal-modal {
    color: #AAAAAA;
    cursor: pointer;
    font-size: 2.22222rem;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    top: 0.55556rem;
    right: 1.22222rem; }

.side-nav {
  display: block;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  list-style-position: outside;
  list-style-type: none;
  margin: 0;
  padding: 0.77778rem 0; }
  .side-nav li {
    font-size: 0.77778rem;
    font-weight: normal;
    margin: 0 0 0.38889rem 0; }
    .side-nav li a:not(.button) {
      color: #3498DB;
      display: block;
      margin: 0;
      padding: 0.38889rem 0.77778rem; }
      .side-nav li a:not(.button):hover, .side-nav li a:not(.button):focus {
        background: rgba(0, 0, 0, 0.025);
        color: #71b7e6; }
      .side-nav li a:not(.button):active {
        color: #71b7e6; }
    .side-nav li.active > a:first-child:not(.button) {
      color: #71b7e6;
      font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-weight: normal; }
    .side-nav li.divider {
      border-top: 1px solid;
      height: 0;
      list-style: none;
      padding: 0;
      border-top-color: #e6e6e6; }
    .side-nav li.heading {
      color: #3498DB;
      font-size: 0.77778rem;
      font-weight: bold;
      text-transform: uppercase; }

.split.button {
  position: relative;
  padding-right: 4.5rem; }
  .split.button span {
    display: block;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    border-left: solid 1px; }
    .split.button span:after {
      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: 2.75rem; }
    .split.button span:after {
      border-top-style: solid;
      border-width: 0.33333rem;
      margin-left: -0.33333rem;
      top: 48%; }
  .split.button span:after {
    border-color: #FFFFFF transparent transparent transparent; }
  .split.button.secondary span {
    border-left-color: rgba(255, 255, 255, 0.5); }
  .split.button.secondary span:after {
    border-color: #FFFFFF transparent transparent transparent; }
  .split.button.alert span {
    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.33333rem; }
    .split.button.tiny span {
      width: 2rem; }
      .split.button.tiny span:after {
        border-top-style: solid;
        border-width: 0.33333rem;
        margin-left: -0.33333rem;
        top: 48%; }
  .split.button.small {
    padding-right: 3.88889rem; }
    .split.button.small span {
      width: 2.33333rem; }
      .split.button.small span:after {
        border-top-style: solid;
        border-width: 0.38889rem;
        margin-left: -0.33333rem;
        top: 48%; }
  .split.button.large {
    padding-right: 4.88889rem; }
    .split.button.large span {
      width: 3.05556rem; }
      .split.button.large span:after {
        border-top-style: solid;
        border-width: 0.27778rem;
        margin-left: -0.33333rem;
        top: 48%; }
  .split.button.expand {
    padding-left: 2rem; }
  .split.button.secondary span:after {
    border-color: #333333 transparent transparent transparent; }
  .split.button.radius span {
    -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 {
    -webkit-border-bottom-right-radius: 1000px;
    -webkit-border-top-right-radius: 1000px;
    border-bottom-right-radius: 1000px;
    border-top-right-radius: 1000px; }
  .split.button.no-pip span:before {
    border-style: none; }
  .split.button.no-pip span:after {
    border-style: none; }
  .split.button.no-pip span > i {
    display: block;
    left: 50%;
    margin-left: -0.28889em;
    margin-top: -0.48889em;
    position: absolute;
    top: 50%; }

.sub-nav {
  display: block;
  margin: -0.22222rem 0 1rem;
  overflow: hidden;
  padding-top: 0.22222rem;
  width: auto; }
  .sub-nav dt {
    text-transform: uppercase; }
  .sub-nav dt,
  .sub-nav dd,
  .sub-nav li {
    color: #999999;
    float: left;
    font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 0.77778rem;
    font-weight: normal;
    margin-left: 0.88889rem;
    margin-bottom: 0; }
    .sub-nav dt a,
    .sub-nav dd a,
    .sub-nav li a {
      color: #999999;
      padding: 0.16667rem 0.88889rem;
      text-decoration: none; }
      .sub-nav dt a:hover,
      .sub-nav dd a:hover,
      .sub-nav li a:hover {
        color: #737373; }
    .sub-nav dt.active a,
    .sub-nav dd.active a,
    .sub-nav li.active a {
      border-radius: 3px;
      background: #3498DB;
      color: #FFFFFF;
      cursor: default;
      font-weight: normal;
      padding: 0.16667rem 0.88889rem; }
      .sub-nav dt.active a:hover,
      .sub-nav dd.active a:hover,
      .sub-nav li.active a:hover {
        background: #2385c6; }

.switch {
  border: none;
  margin-bottom: 1.5rem;
  outline: 0;
  padding: 0;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .switch label {
    background: #DDDDDD;
    color: transparent;
    cursor: pointer;
    display: block;
    margin-bottom: 1rem;
    position: relative;
    text-indent: 100%;
    width: 4rem;
    height: 2rem;
    -webkit-transition: left 0.15s ease-out;
    transition: left 0.15s ease-out; }
  .switch input {
    left: 10px;
    opacity: 0;
    padding: 0;
    position: absolute;
    top: 9px; }
    .switch input + label {
      margin-left: 0;
      margin-right: 0; }
  .switch label:after {
    background: #FFFFFF;
    content: "";
    display: block;
    height: 1.5rem;
    left: .25rem;
    position: absolute;
    top: .25rem;
    width: 1.5rem;
    -webkit-transition: left 0.15s ease-out;
    transition: left 0.15s ease-out;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  .switch input:checked + label {
    background: #3498DB; }
  .switch input:checked + label:after {
    left: 2.25rem; }
  .switch label {
    height: 2rem;
    width: 4rem; }
  .switch label:after {
    height: 1.5rem;
    width: 1.5rem; }
  .switch input:checked + label:after {
    left: 2.25rem; }
  .switch label {
    color: transparent;
    background: #DDDDDD; }
  .switch label:after {
    background: #FFFFFF; }
  .switch input:checked + label {
    background: #3498DB; }
  .switch.large label {
    height: 2.5rem;
    width: 5rem; }
  .switch.large label:after {
    height: 2rem;
    width: 2rem; }
  .switch.large input:checked + label:after {
    left: 2.75rem; }
  .switch.small label {
    height: 1.75rem;
    width: 3.5rem; }
  .switch.small label:after {
    height: 1.25rem;
    width: 1.25rem; }
  .switch.small input:checked + label:after {
    left: 2rem; }
  .switch.tiny label {
    height: 1.5rem;
    width: 3rem; }
  .switch.tiny label:after {
    height: 1rem;
    width: 1rem; }
  .switch.tiny input:checked + label:after {
    left: 1.75rem; }
  .switch.radius label {
    border-radius: 4px; }
  .switch.radius label:after {
    border-radius: 3px; }
  .switch.round {
    border-radius: 1000px; }
    .switch.round label {
      border-radius: 2rem; }
    .switch.round label:after {
      border-radius: 2rem; }

table {
  background: #FFFFFF;
  border: solid 1px #AAAAAA;
  margin-bottom: 1.11111rem;
  table-layout: auto; }
  table caption {
    background: transparent;
    color: #333333;
    font-size: 0.66667rem;
    font-weight: normal; }
  table thead {
    background: #DDDDDD; }
    table thead tr th,
    table thead tr td {
      color: #333333;
      font-size: 0.77778rem;
      font-weight: bold;
      padding: 0.44444rem 0.55556rem 0.55556rem; }
  table tfoot {
    background: #DDDDDD; }
    table tfoot tr th,
    table tfoot tr td {
      color: #333333;
      font-size: 0.77778rem;
      font-weight: bold;
      padding: 0.44444rem 0.55556rem 0.55556rem; }
  table tr th,
  table tr td {
    color: #333333;
    font-size: 0.77778rem;
    padding: 0.5rem 0.55556rem;
    text-align: left; }
  table tr.even, table tr.alt, table tr:nth-of-type(even) {
    background: #DDDDDD; }
  table thead tr th,
  table tfoot tr th,
  table tfoot tr td,
  table tbody tr th,
  table tbody tr td,
  table tr td {
    display: table-cell;
    line-height: 1rem; }

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

.tabs-content {
  margin-bottom: 1.33333rem;
  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.75rem 0;
    width: 100%; }
    .tabs-content > .content.active {
      display: block;
      float: none; }
    .tabs-content > .content.contained {
      padding: 0.75rem; }
  .tabs-content.vertical {
    display: block; }
    .tabs-content.vertical > .content {
      padding: 0 0.75rem; }

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

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

/* Image Thumbnails */
.th {
  border: solid 4px #FFFFFF;
  -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);
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  -webkit-transition: all 200ms ease-out;
  transition: all 200ms ease-out; }
  .th:hover, .th:focus {
    -webkit-box-shadow: 0 0 6px 1px rgba(52, 152, 219, 0.5);
            box-shadow: 0 0 6px 1px rgba(52, 152, 219, 0.5); }
  .th.radius {
    border-radius: 3px; }

/* Tooltips */
.has-tip {
  border-bottom: dotted 1px #CCCCCC;
  color: #333333;
  cursor: help;
  font-weight: bold; }
  .has-tip:hover, .has-tip:focus {
    border-bottom: dotted 1px #124568;
    color: #3498DB; }
  .has-tip.tip-left, .has-tip.tip-right {
    float: none !important; }

.tooltip {
  background: #333333;
  color: #FFFFFF;
  display: none;
  font-size: 0.77778rem;
  font-weight: normal;
  line-height: 1.3;
  max-width: 300px;
  padding: 0.66667rem;
  position: absolute;
  width: 100%;
  z-index: 1006;
  left: 50%; }
  .tooltip > .nub {
    border: solid 5px;
    border-color: transparent transparent #333333 transparent;
    display: block;
    height: 0;
    pointer-events: none;
    position: absolute;
    top: -10px;
    width: 0;
    left: 5px; }
    .tooltip > .nub.rtl {
      left: auto;
      right: 5px; }
  .tooltip.radius {
    border-radius: 3px; }
  .tooltip.round {
    border-radius: 1000px; }
    .tooltip.round > .nub {
      left: 2rem; }
  .tooltip.opened {
    border-bottom: dotted 1px #124568 !important;
    color: #3498DB !important; }

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

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

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

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

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

.top-bar {
  background: #333333;
  height: 2.5rem;
  line-height: 2.5rem;
  margin-bottom: 0;
  overflow: hidden;
  position: relative; }
  .top-bar ul {
    list-style: none;
    margin-bottom: 0; }
  .top-bar .row {
    max-width: none; }
  .top-bar form,
  .top-bar input,
  .top-bar select {
    margin-bottom: 0; }
  .top-bar input,
  .top-bar select {
    font-size: 0.75rem;
    height: 1.55556rem;
    padding-bottom: .35rem;
    padding-top: .35rem; }
  .top-bar .button, .top-bar button {
    font-size: 0.75rem;
    margin-bottom: 0;
    padding-bottom: 0.40556rem;
    padding-top: 0.40556rem; }
    @media only screen and (max-width: 50em) {
      .top-bar .button, .top-bar button {
        position: relative;
        top: -1px; } }
  .top-bar .title-area {
    margin: 0;
    position: relative; }
  .top-bar .name {
    font-size: 18px;
    height: 2.5rem;
    margin: 0; }
    .top-bar .name h1, .top-bar .name h2, .top-bar .name h3, .top-bar .name h4, .top-bar .name p, .top-bar .name span {
      font-size: 0.94444rem;
      line-height: 2.5rem;
      margin: 0; }
      .top-bar .name h1 a, .top-bar .name h2 a, .top-bar .name h3 a, .top-bar .name h4 a, .top-bar .name p a, .top-bar .name span a {
        color: #FFFFFF;
        display: block;
        font-weight: normal;
        padding: 0 0.83333rem;
        width: 75%; }
  .top-bar .toggle-topbar {
    position: absolute;
    right: 0;
    top: 0; }
    .top-bar .toggle-topbar a {
      color: #FFFFFF;
      display: block;
      font-size: 0.72222rem;
      font-weight: bold;
      height: 2.5rem;
      line-height: 2.5rem;
      padding: 0 0.83333rem;
      position: relative;
      text-transform: uppercase; }
    .top-bar .toggle-topbar.menu-icon {
      margin-top: -16px;
      top: 50%; }
      .top-bar .toggle-topbar.menu-icon a {
        color: #FFFFFF;
        height: 34px;
        line-height: 33px;
        padding: 0 2.22222rem 0 0.83333rem;
        position: relative; }
        .top-bar .toggle-topbar.menu-icon a span::after {
          content: "";
          display: block;
          height: 0;
          position: absolute;
          margin-top: -8px;
          top: 50%;
          right: 0.83333rem;
          -webkit-box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
                  box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
          width: 16px; }
        .top-bar .toggle-topbar.menu-icon a span:hover:after {
          -webkit-box-shadow: 0 0 0 1px "", 0 7px 0 1px "", 0 14px 0 1px "";
                  box-shadow: 0 0 0 1px "", 0 7px 0 1px "", 0 14px 0 1px ""; }
  .top-bar.expanded {
    background: transparent;
    height: auto; }
    .top-bar.expanded .title-area {
      background: #333333; }
    .top-bar.expanded .toggle-topbar a {
      color: #888888; }
      .top-bar.expanded .toggle-topbar a span::after {
        -webkit-box-shadow: 0 0 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888;
                box-shadow: 0 0 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888; }
    @media screen and (-webkit-min-device-pixel-ratio: 0) {
      .top-bar.expanded .top-bar-section .has-dropdown.moved > .dropdown,
      .top-bar.expanded .top-bar-section .dropdown {
        clip: initial; }
      .top-bar.expanded .top-bar-section .has-dropdown:not(.moved) > ul {
        padding: 0; } }

.top-bar-section {
  left: 0;
  position: relative;
  width: auto;
  -webkit-transition: left 300ms ease-out;
  transition: left 300ms ease-out; }
  .top-bar-section ul {
    display: block;
    font-size: 18px;
    height: auto;
    margin: 0;
    padding: 0;
    width: 100%; }
  .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 {
    background: #333333; }
    .top-bar-section ul li > a {
      color: #FFFFFF;
      display: block;
      font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-size: 0.72222rem;
      font-weight: normal;
      padding-left: 0.83333rem;
      padding: 12px 0 12px 0.83333rem;
      text-transform: none;
      width: 100%; }
      .top-bar-section ul li > a.button {
        font-size: 0.72222rem;
        padding-left: 0.83333rem;
        padding-right: 0.83333rem;
        background-color: #3498DB;
        border-color: #217bb8;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          background-color: #217bb8; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.secondary {
        background-color: hotpink;
        border-color: #ff2190;
        color: #333333; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          background-color: #ff2190; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.info {
        background-color: #5BB1D3;
        border-color: #3397be;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.info:hover, .top-bar-section ul li > a.button.info:focus {
          background-color: #3397be; }
        .top-bar-section ul li > a.button.info:hover, .top-bar-section ul li > a.button.info:focus {
          color: #FFFFFF; }
    .top-bar-section ul li > button {
      font-size: 0.72222rem;
      padding-left: 0.83333rem;
      padding-right: 0.83333rem;
      background-color: #3498DB;
      border-color: #217bb8;
      color: #FFFFFF; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        background-color: #217bb8; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        color: #FFFFFF; }
      .top-bar-section ul li > button.secondary {
        background-color: hotpink;
        border-color: #ff2190;
        color: #333333; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          background-color: #ff2190; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.info {
        background-color: #5BB1D3;
        border-color: #3397be;
        color: #FFFFFF; }
        .top-bar-section ul li > button.info:hover, .top-bar-section ul li > button.info:focus {
          background-color: #3397be; }
        .top-bar-section ul li > button.info:hover, .top-bar-section ul li > button.info:focus {
          color: #FFFFFF; }
    .top-bar-section ul li:hover:not(.has-form) > a {
      background-color: #555555;
      color: #FFFFFF;
      background: #222222; }
    .top-bar-section ul li.active > a {
      background: #3498DB;
      color: #FFFFFF; }
      .top-bar-section ul li.active > a:hover {
        background: #2385c6;
        color: #FFFFFF; }
  .top-bar-section .has-form {
    padding: 0.83333rem; }
  .top-bar-section .has-dropdown {
    position: relative; }
    .top-bar-section .has-dropdown > a:after {
      border: inset 5px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent rgba(255, 255, 255, 0.4);
      border-left-style: solid;
      margin-right: 0.83333rem;
      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 {
        position: static !important;
        height: auto;
        width: auto;
        overflow: visible;
        clip: auto;
        display: block;
        position: absolute !important;
        width: 100%; }
      .top-bar-section .has-dropdown.moved > a:after {
        display: none; }
  .top-bar-section .dropdown {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
    display: block;
    padding: 0;
    position: absolute;
    top: 0;
    z-index: 99;
    left: 100%; }
    .top-bar-section .dropdown li {
      height: auto;
      width: 100%; }
      .top-bar-section .dropdown li a {
        font-weight: normal;
        padding: 8px 0.83333rem; }
        .top-bar-section .dropdown li a.parent-link {
          font-weight: normal; }
      .top-bar-section .dropdown li.title h5, .top-bar-section .dropdown .node-page.has-pb-menu > .content > .pb-menu > ul li.title a, .node-page.has-pb-menu > .content > .pb-menu > ul .top-bar-section .dropdown li.title a, .top-bar-section .dropdown li.parent-link {
        margin-bottom: 0;
        margin-top: 0;
        font-size: 1rem; }
        .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown .node-page.has-pb-menu > .content > .pb-menu > ul li.title a a, .node-page.has-pb-menu > .content > .pb-menu > ul .top-bar-section .dropdown li.title a a, .top-bar-section .dropdown li.parent-link a {
          color: #FFFFFF;
          display: block; }
          .top-bar-section .dropdown li.title h5 a:hover, .top-bar-section .dropdown .node-page.has-pb-menu > .content > .pb-menu > ul li.title a a:hover, .node-page.has-pb-menu > .content > .pb-menu > ul .top-bar-section .dropdown li.title a a:hover, .top-bar-section .dropdown li.parent-link a:hover {
            background: none; }
      .top-bar-section .dropdown li.has-form {
        padding: 8px 0.83333rem; }
      .top-bar-section .dropdown li .button,
      .top-bar-section .dropdown li button {
        top: auto; }
    .top-bar-section .dropdown label {
      color: #777777;
      font-size: 0.55556rem;
      font-weight: bold;
      margin-bottom: 0;
      padding: 8px 0.83333rem 2px;
      text-transform: uppercase; }

.js-generated {
  display: block; }

@media only screen and (min-width: 50.0625em) {
  .top-bar {
    background: #333333;
    overflow: visible; }
    .top-bar:before, .top-bar:after {
      content: " ";
      display: table; }
    .top-bar:after {
      clear: both; }
    .top-bar .toggle-topbar {
      display: none; }
    .top-bar .title-area {
      float: left; }
    .top-bar .name h1 a,
    .top-bar .name h2 a,
    .top-bar .name h3 a,
    .top-bar .name h4 a,
    .top-bar .name h5 a,
    .top-bar .name .node-page.has-pb-menu > .content > .pb-menu > ul li a a,
    .node-page.has-pb-menu > .content > .pb-menu > ul li .top-bar .name a a,
    .top-bar .name h6 a {
      width: auto; }
    .top-bar input,
    .top-bar select,
    .top-bar .button,
    .top-bar button {
      font-size: 0.77778rem;
      height: 1.55556rem;
      position: relative;
      top: 0.47222rem; }
    .top-bar .has-form > .button,
    .top-bar .has-form > button {
      font-size: 0.77778rem;
      height: 1.55556rem;
      position: relative;
      top: 0.47222rem; }
    .top-bar.expanded {
      background: #333333; }
  .contain-to-grid .top-bar {
    margin: 0 auto;
    margin-bottom: 0;
    max-width: 62.5rem; }
  .top-bar-section {
    -webkit-transition: none 0 0;
    transition: none 0 0;
    left: 0 !important; }
    .top-bar-section ul {
      display: inline;
      height: auto !important;
      width: auto; }
      .top-bar-section ul li {
        float: left; }
        .top-bar-section ul li .js-generated {
          display: none; }
    .top-bar-section li.hover > a:not(.button) {
      background-color: #555555;
      background: #222222;
      color: #FFFFFF; }
    .top-bar-section li:not(.has-form) a:not(.button) {
      background: #333333;
      line-height: 2.5rem;
      padding: 0 0.83333rem; }
      .top-bar-section li:not(.has-form) a:not(.button):hover {
        background-color: #555555;
        background: #222222; }
    .top-bar-section li.active:not(.has-form) a:not(.button) {
      background: #3498DB;
      color: #FFFFFF;
      line-height: 2.5rem;
      padding: 0 0.83333rem; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover {
        background: #2385c6;
        color: #FFFFFF; }
    .top-bar-section .has-dropdown > a {
      padding-right: 1.94444rem !important; }
      .top-bar-section .has-dropdown > a:after {
        border: inset 5px;
        content: "";
        display: block;
        height: 0;
        width: 0;
        border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent;
        border-top-style: solid;
        margin-top: -2.5px;
        top: 1.25rem; }
    .top-bar-section .has-dropdown.moved {
      position: relative; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        clip: rect(1px, 1px, 1px, 1px);
        height: 1px;
        overflow: hidden;
        position: absolute !important;
        width: 1px;
        display: block; }
    .top-bar-section .has-dropdown.hover > .dropdown, .top-bar-section .has-dropdown.not-click:hover > .dropdown {
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      display: block;
      position: absolute !important; }
    .top-bar-section .has-dropdown > a:focus + .dropdown {
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      display: block;
      position: absolute !important; }
    .top-bar-section .has-dropdown .dropdown li.has-dropdown > a:after {
      border: none;
      content: "\00bb";
      top: 0.16667rem;
      right: 5px; }
    .top-bar-section .dropdown {
      left: 0;
      background: transparent;
      min-width: 100%;
      top: auto; }
      .top-bar-section .dropdown li a {
        background: #333333;
        color: #FFFFFF;
        line-height: 2.5rem;
        padding: 12px 0.83333rem;
        white-space: nowrap; }
      .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
        background: #333333;
        color: #FFFFFF; }
      .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) {
        background-color: #555555;
        color: #FFFFFF;
        background: #222222; }
      .top-bar-section .dropdown li label {
        background: #333333;
        white-space: nowrap; }
      .top-bar-section .dropdown li .dropdown {
        left: 100%;
        top: 0; }
    .top-bar-section > ul > .divider,
    .top-bar-section > ul > [role="separator"] {
      border-right: solid 1px #4e4e4e;
      border-bottom: none;
      border-top: none;
      clear: none;
      height: 2.5rem;
      width: 0; }
    .top-bar-section .has-form {
      background: #333333;
      height: 2.5rem;
      padding: 0 0.83333rem; }
    .top-bar-section .right li .dropdown {
      left: auto;
      right: 0; }
      .top-bar-section .right li .dropdown li .dropdown {
        right: 100%; }
    .top-bar-section .left li .dropdown {
      right: auto;
      left: 0; }
      .top-bar-section .left li .dropdown li .dropdown {
        left: 100%; }
  .no-js .top-bar-section ul li:hover > a {
    background-color: #555555;
    background: #222222;
    color: #FFFFFF; }
  .no-js .top-bar-section ul li:active > a {
    background: #3498DB;
    color: #FFFFFF; }
  .no-js .top-bar-section .has-dropdown:hover > .dropdown {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    display: block;
    position: absolute !important; }
  .no-js .top-bar-section .has-dropdown > a:focus + .dropdown {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    display: block;
    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: 50em) {
  .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 and (min-width: 33.8125em) {
  .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: 50.0625em) 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: 50.0625em) {
  .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.0625em) 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.0625em) {
  .large-text-left {
    text-align: left !important; }
  .large-text-right {
    text-align: right !important; }
  .large-text-center {
    text-align: center !important; }
  .large-text-justify {
    text-align: justify !important; } }

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

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

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

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

/* Typography resets */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
.node-page.has-pb-menu > .content > .pb-menu > ul li a,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

/* Default Link Styles */
a {
  color: #3498DB;
  line-height: inherit;
  text-decoration: none; }
  a:hover, a:focus {
    color: #2385c6; }
  a img {
    border: none; }

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

/* Default header styles */
h1, h2, h3, h4,
h5,
.node-page.has-pb-menu > .content > .pb-menu > ul li a, h6 {
  color: #333333;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  margin-top: 0.2rem;
  text-rendering: optimizeLegibility; }
  h1 small, h2 small, h3 small, h4 small, h5 small, .node-page.has-pb-menu > .content > .pb-menu > ul li a small, h6 small {
    color: #7a7a7a;
    font-size: 60%;
    line-height: 0; }

h1 {
  font-size: 1.88889rem; }

h2 {
  font-size: 1.22222rem; }

h3 {
  font-size: 1.16667rem; }

h4 {
  font-size: 0.94444rem; }


h5,
.node-page.has-pb-menu > .content > .pb-menu > ul li a {
  font-size: 1.05556rem; }

h6 {
  font-size: 1rem; }

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

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

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

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

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

code {
  background-color: #ffd2e9;
  border-color: #ffa4d1;
  border-style: solid;
  border-width: 1px;
  color: #333333;
  font-family: "Oxygen Mono", Consolas, monospace;
  font-weight: normal;
  padding: 0.11111rem 0.27778rem 0.05556rem; }

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

ul {
  margin-left: 1.1rem; }

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

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

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

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

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

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

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

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

dl dd {
  margin-bottom: 0.66667rem; }

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

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

/* Blockquotes */
blockquote {
  margin: 0 0 1.11111rem;
  padding: 0.5rem 1.11111rem 0 1.05556rem;
  border-left: 1px solid #DDDDDD; }
  blockquote cite {
    display: block;
    font-size: 0.72222rem;
    color: #626262; }
    blockquote cite:before {
      content: "\2014 \0020"; }
    blockquote cite a,
    blockquote cite a:visited {
      color: #626262; }

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

/* Microformats */
.vcard {
  display: inline-block;
  margin: 0 0 1.11111rem 0;
  border: 1px solid #DDDDDD;
  padding: 0.55556rem 0.66667rem; }
  .vcard li {
    margin: 0;
    display: block; }
  .vcard .fn {
    font-weight: bold;
    font-size: 0.83333rem; }

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

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

@media only screen and (min-width: 50.0625em) {
  h1, h2, h3, h4,
  h5,
  .node-page.has-pb-menu > .content > .pb-menu > ul li a, h6 {
    line-height: 1.4; }
  h1 {
    font-size: 2.44444rem; }
  h2 {
    font-size: 1.77778rem; }
  h3 {
    font-size: 1.44444rem; }
  h4 {
    font-size: 1.22222rem; }
  
  h5,
  .node-page.has-pb-menu > .content > .pb-menu > ul li a {
    font-size: 1.05556rem; }
  h6 {
    font-size: 1rem; } }

/*
       * 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)
      */
@media print {
  * {
    background: transparent !important;
    color: #000000 !important;
    /* Black prints faster: h5bp.com/s */
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.34in; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

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

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

.tab-bar {
  -webkit-backface-visibility: hidden;
  background: #333333;
  color: #FFFFFF;
  height: 2.5rem;
  line-height: 2.5rem;
  position: relative; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4, .tab-bar h5, .tab-bar .node-page.has-pb-menu > .content > .pb-menu > ul li a, .node-page.has-pb-menu > .content > .pb-menu > ul li .tab-bar a, .tab-bar h6 {
    color: #FFFFFF;
    font-weight: bold;
    line-height: 2.5rem;
    margin: 0; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4 {
    font-size: 1.05556rem; }

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

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

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

.tab-bar .menu-icon {
  color: #FFFFFF;
  display: block;
  height: 2.5rem;
  padding: 0;
  position: relative;
  text-indent: 1.94444rem;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  width: 2.5rem; }
  .tab-bar .menu-icon span::after {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: 50%;
    margin-top: -0.44444rem;
    left: 0.80556rem;
    -webkit-box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
            box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
    width: 0.88889rem; }
  .tab-bar .menu-icon span:hover:after {
    -webkit-box-shadow: 0 0 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3;
            box-shadow: 0 0 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3; }

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

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

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

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

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

.move-right > .inner-wrap {
  -webkit-transform: translate3d(13.88889rem, 0, 0);
  transform: translate3d(13.88889rem, 0, 0); }

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

.move-left > .inner-wrap {
  -webkit-transform: translate3d(-13.88889rem, 0, 0);
  transform: translate3d(-13.88889rem, 0, 0); }

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

.move-top > .inner-wrap {
  -webkit-transform: translate3d(0, -16.66667rem, 0);
  transform: translate3d(0, -16.66667rem, 0); }

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

.move-bottom > .inner-wrap {
  -webkit-transform: translate3d(0, 16.66667rem, 0);
  transform: translate3d(0, 16.66667rem, 0); }

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

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

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

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

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

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

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

.offcanvas-overlap-top .bottom-off-canvas-menu {
  -webkit-transform: none;
  transform: none;
  z-index: 1003; }

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

.offcanvas-overlap-bottom .top-off-canvas-menu {
  -webkit-transform: none;
  transform: none;
  z-index: 1003; }

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

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

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

.no-csstransforms .top-off-canvas-menu {
  top: -16.66667rem; }

.no-csstransforms .bottom-off-canvas-menu {
  bottom: -16.66667rem; }

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

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

.no-csstransforms .move-top > .inner-wrap {
  right: 16.66667rem; }

.no-csstransforms .move-bottom > .inner-wrap {
  left: 16.66667rem; }

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

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

.top-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #333333;
  bottom: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 13.88889rem;
  height: 16.66667rem;
  z-index: 1002;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
  top: 0;
  width: 100%;
  -webkit-transition: -webkit-transform 500ms ease;
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease; }
  .top-submenu * {
    -webkit-backface-visibility: hidden; }
  .top-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.83333rem;
    text-transform: uppercase;
    margin: 0; }
    .top-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
  .top-submenu.move-bottom, .top-submenu.offcanvas-overlap-bottom, .top-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0, 0%, 0);
    transform: translate3d(0, 0%, 0); }

.bottom-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #333333;
  bottom: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 13.88889rem;
  height: 16.66667rem;
  z-index: 1002;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  bottom: 0;
  width: 100%;
  -webkit-transition: -webkit-transform 500ms ease;
  transition: -webkit-transform 500ms ease;
  transition: transform 500ms ease;
  transition: transform 500ms ease, -webkit-transform 500ms ease; }
  .bottom-submenu * {
    -webkit-backface-visibility: hidden; }
  .bottom-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.83333rem;
    text-transform: uppercase;
    margin: 0; }
    .bottom-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
  .bottom-submenu.move-top, .bottom-submenu.offcanvas-overlap-top, .bottom-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0, 0%, 0);
    transform: translate3d(0, 0%, 0); }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Print visibility */
.print-only,
.show-for-print {
  display: none !important; }

@media print {
  .print-only,
  .show-for-print {
    display: block !important; }
  .hide-on-print,
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; } }

html, body {
  height: 100%; }

#page {
  min-height: 100%;
  position: relative;
  padding-bottom: 402px; }
  #page #header {
    width: 100%; }
    #page #header #header-top > .layout-container {
      max-width: 64rem;
      margin: 0 auto;
      padding-left: 1.5rem;
      padding-right: 1.5rem; }
    #page #header #header-main > .layout-container {
      max-width: 64rem;
      margin: 0 auto;
      padding-left: 1.5rem;
      padding-right: 1.5rem; }

body:not(.page-node-type-page) #content #content-main > .layout-container {
  max-width: 64rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  overflow: hidden; }

#footer {
  margin-top: -402px;
  position: relative; }
  #footer > .layout-container {
    max-width: 64rem;
    margin: 0 auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem; }

#header {
  background: #FFFFFF;
  color: #333333;
  position: relative;
  padding-top: 95px; }
  #header * {
    color: #333333; }
  #header #header-top {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 100;
    background: #FFFFFF;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.8);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.8); }
    #header #header-top > .layout-container {
      padding-top: 0.75rem;
      padding-bottom: 0.75rem;
      padding-left: 10.77778rem !important;
      position: relative;
      height: 95px;
      overflow: hidden; }
    #header #header-top #block-starter-branding {
      position: absolute;
      top: 0.75rem;
      left: 1.5rem;
      height: 3.77778rem;
      font-size: 0; }
      #header #header-top #block-starter-branding img {
        height: 100%;
        width: auto; }
    #header #header-top nav#block-starter-main-menu {
      float: right; }
      #header #header-top nav#block-starter-main-menu > ul {
        margin: 0; }
        #header #header-top nav#block-starter-main-menu > ul:after {
          content: "";
          display: table;
          clear: both; }
        #header #header-top nav#block-starter-main-menu > ul li {
          list-style: none;
          float: left;
          height: 3.77778rem;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          padding: 0 0.75rem; }
          #header #header-top nav#block-starter-main-menu > ul li a {
            font-size: 1.2rem;
            border-bottom: 2px solid transparent; }
            #header #header-top nav#block-starter-main-menu > ul li a.is-active {
              border-bottom-color: #333333; }
          #header #header-top nav#block-starter-main-menu > ul li a[title='25th Anniversary'] {
            background-image: url("../images/25_anniversary.jpg");
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center;
            font-size: 0;
            width: 4.44444rem;
            height: 4.44444rem;
            border: none;
            pointer-events: none; }
      #header #header-top nav#block-starter-main-menu.show-desktop > ul {
        position: static; }
      #header #header-top nav#block-starter-main-menu .mobile-menu-button {
        display: none;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 1.5rem;
        line-height: 1;
        font-size: 2.22222rem;
        cursor: pointer;
        color: #125E91; }
        #header #header-top nav#block-starter-main-menu .mobile-menu-button.open {
          font-size: 0; }
          #header #header-top nav#block-starter-main-menu .mobile-menu-button.open:after {
            content: '×';
            position: absolute;
            top: 0;
            bottom: 0;
            right: 0;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            font-size: 2.22222rem;
            text-align: center;
            cursor: pointer; }
      #header #header-top nav#block-starter-main-menu.show-mobile ul {
        position: relative;
        top: -100vh; }
      #header #header-top nav#block-starter-main-menu.show-mobile .mobile-menu-button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
    #header #header-top nav#block-mainnavigation {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      top: 95px;
      position: fixed;
      z-index: 1001;
      background: #125E91;
      padding: 1.5rem;
      display: none; }
      body.toolbar-fixed #header #header-top nav#block-mainnavigation {
        top: 134px; }
      #header #header-top nav#block-mainnavigation > ul:not(.contextual-links) {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin: 0;
        list-style: none; }
        #header #header-top nav#block-mainnavigation > ul:not(.contextual-links) li {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center; }
          #header #header-top nav#block-mainnavigation > ul:not(.contextual-links) li a {
            color: white;
            padding: 1.5rem;
            font-size: 1.44444rem;
            text-align: center; }
          #header #header-top nav#block-mainnavigation > ul:not(.contextual-links) li a[title='25th Anniversary'] {
            display: none; }
      #header #header-top nav#block-mainnavigation.open {
        display: block; }
  #header #header-main {
    background: #03446f; }
    #header #header-main #block-jvbruniandcompany {
      text-align: center;
      padding: 0.375rem 0; }
      #header #header-main #block-jvbruniandcompany * {
        color: #FFFFFF;
        font-family: "Pinyon Script";
        font-size: 2.66667rem;
        font-weight: normal;
        margin: 0; }
        @media screen and (max-width: 1023px) {
          #header #header-main #block-jvbruniandcompany * {
            font-size: 5vw; } }
        @media screen and (max-width: 600px) {
          #header #header-main #block-jvbruniandcompany * {
            font-size: 7vw; } }

body.toolbar-fixed #header #header-top {
  top: 39px; }

body.toolbar-fixed.toolbar-horizontal.toolbar-tray-open #header #header-top {
  top: 79px; }

body.toolbar-fixed.toolbar-vertical.toolbar-tray-open #header #header-top {
  top: 39px;
  left: 240px; }

#page #content {
  background: #FFFFFF;
  color: #333333; }
  #page #content #content-main > .layout-container {
    padding-bottom: 3rem; }

#page #page-scroll {
  position: fixed;
  bottom: 20px;
  right: -100px;
  z-index: 101;
  width: 30px;
  height: 30px;
  font-family: oxbow;
  font-style: 19px;
  color: white;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all .3s;
  transition: all .3s;
  -webkit-transition-delay: .5s;
          transition-delay: .5s;
  cursor: pointer;
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently not supported by any browser */ }
  #page #page-scroll.show {
    right: 20px; }

body.user-logged-in #page #page-scroll {
  bottom: 60px; }

#footer {
  position: relative;
  z-index: 99;
  background: #333333;
  color: #DDDDDD; }
  #footer * {
    color: #DDDDDD; }
  #footer > .layout-container {
    padding-top: 3rem;
    padding-bottom: 3rem; }
  #footer #block-footeraddress {
    float: right; }
    #footer #block-footeraddress .field--name-body {
      display: inline-block;
      text-align: left; }
      #footer #block-footeraddress .field--name-body *:last-child {
        margin-bottom: 0; }
  #footer #block-disclaimer {
    margin-right: 16.66667rem;
    padding-right: 5rem; }
    #footer #block-disclaimer * {
      font-size: .90em;
      color: #FFFFFF; }
  #footer #block-copyrightblock {
    color: #999;
    font-size: .90em; }
    #footer #block-copyrightblock * {
      color: #999; }
  #footer #block-oxbowlabscopyrightblock {
    margin-top: 0.75rem;
    color: #666666;
    font-size: .90em; }
    #footer #block-oxbowlabscopyrightblock * {
      color: #666666; }
  @media screen and (max-width: 750px) {
    #footer #block-footeraddress {
      float: none;
      text-align: center;
      padding-bottom: 3rem; }
      #footer #block-footeraddress * {
        text-align: center; }
    #footer #block-disclaimer {
      margin-right: 0;
      padding-right: 0; }
    #footer #block-copyrightblock {
      text-align: center; }
    #footer #block-oxbowlabscopyrightblock {
      text-align: center; } }

.fs-s {
  font-size: 13.5px; }

.fs-m {
  font-size: 18px; }

.fs-l {
  font-size: 22.5px; }

.fs-xl {
  font-size: 27px; }

.fs-xxl {
  font-size: 31.5px; }

.f-serif,
.f-serif * {
  font-family: "Tinos", serif;
  font-weight: normal; }

.f-sans,
.f-sans * {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; }

p:not(.text-align-center):not(.text-align-right) {
  text-align: justify; }

hr {
  border: none !important; }
  hr:after {
    content: '\2666' !important;
    display: block !important;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    background: #bfbfbf;
    color: #bfbfbf;
    text-align: center;
    line-height: 0; }

#block-starter-page-title h1 {
  padding-top: 3rem; }
  #block-starter-page-title h1.hide {
    display: none; }

.paragraph.title-align-center .field--name-field-p-title,
.p__title {
  text-align: center; }

.paragraph.title-align-right .field--name-field-p-title {
  text-align: right; }

h1, h2 {
  font-weight: bold; }

h1 {
  font-family: "Tinos", serif; }

table {
  margin: 1.5rem auto;
  border-collapse: collapse; }
  table tr:nth-child(even) {
    background: #efefef; }
  table caption {
    caption-side: bottom; }

.view-insights.view-display-id-block_1 .views-row, blockquote {
  position: relative;
  margin-top: 3rem;
  padding-top: 3rem;
  border: none;
  text-align: center;
  font-family: "Tinos", serif;
  font-size: 1.44444rem; }
  .view-insights.view-display-id-block_1 .views-row *, blockquote * {
    font-size: 1.22222rem;
    font-family: "Tinos", serif; }
  .view-insights.view-display-id-block_1 .views-row:after, blockquote:after {
    content: '';
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    margin: 0 auto;
    width: 100%;
    height: 0.27778rem;
    max-width: 70%;
    background: #3498DB; }
  .view-insights.view-display-id-block_1 .views-row:before, blockquote:before {
    content: '\201C';
    position: absolute;
    top: -1.66667rem;
    left: 0;
    right: 0;
    z-index: 2;
    width: 3.33333rem;
    height: 3.33333rem;
    margin: 0 auto;
    border-radius: 50%;
    background: #3498DB;
    text-align: center;
    line-height: 1.05;
    color: white;
    font-size: 5rem; }

ul {
  margin: 1.5rem 0 1.5rem 1.9rem; }
  ul:first-child {
    margin-top: 0; }
  ul:last-child {
    margin-bottom: 0; }

.button-default,
.is-style-button .button {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: #3498DB;
  border-color: #217bb8;
  color: #FFFFFF;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: #FFFFFF !important;
  -webkit-box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25); }
  .button-default:hover, .button-default:focus,
  .is-style-button .button:hover,
  .is-style-button .button:focus {
    background-color: #217bb8; }
  .button-default:hover, .button-default:focus,
  .is-style-button .button:hover,
  .is-style-button .button:focus {
    color: #FFFFFF; }

.button-secondary {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: #666666;
  border-color: #525252;
  color: #FFFFFF;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: #FFFFFF !important;
  -webkit-box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25); }
  .button-secondary:hover, .button-secondary:focus {
    background-color: #525252; }
  .button-secondary:hover, .button-secondary:focus {
    color: #FFFFFF; }

.button-tertiary {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: #efefef;
  border-color: #bfbfbf;
  color: #333333;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: #333333 !important;
  -webkit-box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 5px 0 rgba(0, 0, 0, 0.25); }
  .button-tertiary:hover, .button-tertiary:focus {
    background-color: #bfbfbf; }
  .button-tertiary:hover, .button-tertiary:focus {
    color: #333333; }

.button-white {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: white;
  border-color: #cccccc;
  color: #333333;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: #333333 !important; }
  .button-white:hover, .button-white:focus {
    background-color: #cccccc; }
  .button-white:hover, .button-white:focus {
    color: #333333; }

.button-outline,
.is-style-button-outline .button {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0);
  color: #FFFFFF;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: black;
  border: 1px solid black; }
  .button-outline:hover, .button-outline:focus,
  .is-style-button-outline .button:hover,
  .is-style-button-outline .button:focus {
    background-color: rgba(0, 0, 0, 0); }
  .button-outline:hover, .button-outline:focus,
  .is-style-button-outline .button:hover,
  .is-style-button-outline .button:focus {
    color: #FFFFFF; }
  .button-outline:hover, .button-outline:focus,
  .is-style-button-outline .button:hover,
  .is-style-button-outline .button:focus {
    color: black;
    background: transparent; }

.button-outline {
  border-color: #455a64;
  color: #455a64; }

form .form-submit {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.88889rem 1.77778rem 0.94444rem 1.77778rem;
  font-size: 0.88889rem;
  background-color: #3498DB;
  border-color: #217bb8;
  color: #FFFFFF;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out; }
  form .form-submit:hover, form .form-submit:focus {
    background-color: #217bb8; }
  form .form-submit:hover, form .form-submit:focus {
    color: #FFFFFF; }

form .form-item {
  margin-bottom: 1.5rem; }
  form .form-item .form-item {
    margin-bottom: 0.75rem; }
  form .form-item input, form .form-item textarea {
    margin: 0; }
  form .form-item .description {
    font-size: 0.77778rem;
    margin-top: 0.375rem; }
  form .form-item label {
    font-size: 1.05556rem;
    margin-bottom: 0.375rem; }
  form .form-item.form-type-radio input, form .form-item.form-type-checkbox input {
    display: none; }
  form .form-item.form-type-radio label, form .form-item.form-type-checkbox label {
    margin-left: 0; }
    form .form-item.form-type-radio label:before, form .form-item.form-type-checkbox label:before {
      content: '';
      display: inline-block;
      width: 1em;
      height: 1em;
      position: relative;
      top: .1em;
      margin-right: .5em;
      background: #FFFFFF;
      border: 1px solid #cccccc; }
  form .form-item.form-type-radio input:checked + label:before, form .form-item.form-type-checkbox input:checked + label:before {
    border-width: 5px;
    border-color: #999999; }
  form .form-item.form-type-radio label:before {
    border-radius: 50%; }
  form .form-item.webform-component-file:before, form .form-item.webform-component-file:after {
    content: " ";
    display: table; }
  form .form-item.webform-component-file:after {
    clear: both; }
  form .form-item.webform-component-file .form-managed-file:before, form .form-item.webform-component-file .form-managed-file:after {
    content: " ";
    display: table; }
  form .form-item.webform-component-file .form-managed-file:after {
    clear: both; }
  form .form-item.webform-component-file .form-managed-file .form-submit {
    margin-top: 0.75rem; }
  form .form-item.webform-component-time {
    font-size: 0; }
    form .form-item.webform-component-time:before, form .form-item.webform-component-time:after {
      content: " ";
      display: table; }
    form .form-item.webform-component-time:after {
      clear: both; }
    form .form-item.webform-component-time .webform-container-inline > * {
      float: left;
      font-size: 18px; }
      form .form-item.webform-component-time .webform-container-inline > * .form-select {
        margin: 0; }
    form .form-item.webform-component-time .form-item-submitted-time-hour {
      padding-right: 1rem; }
      @media only screen and (max-width: 50em) {
        form .form-item.webform-component-time .form-item-submitted-time-hour {
          padding-right: 0; } }
    form .form-item.webform-component-time .form-item-submitted-time-minute {
      padding: 0 0.5rem; }
      @media only screen and (max-width: 50em) {
        form .form-item.webform-component-time .form-item-submitted-time-minute {
          padding-left: 0;
          padding-right: 0; } }
    form .form-item.webform-component-time .form-radios {
      padding-left: 1rem;
      margin-top: 2.22222rem; }
      @media only screen and (max-width: 50em) {
        form .form-item.webform-component-time .form-radios {
          padding-left: 0;
          margin-top: 0; } }

body.page-node-type-page #block-starter-page-title {
  display: none; }

body.page-node-type-page .pager__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  body.page-node-type-page .pager__items a {
    padding: .5em;
    position: relative; }
    .is-active body.page-node-type-page .pager__items a::after {
      content: '';
      position: absolute;
      left: 0.275rem;
      right: 0.275rem;
      bottom: -1px;
      border-bottom: 2px solid; }

body.page-node-type-page #content #content-main > .layout-container {
  padding-bottom: 0 !important; }
  body.page-node-type-page #content #content-main > .layout-container .field--name-body h1 {
    padding-top: 3rem; }
  body.page-node-type-page #content #content-main > .layout-container .field--name-body h2 {
    font-family: "Tinos", serif; }
  body.page-node-type-page #content #content-main > .layout-container .field--name-body > *:not(.alignfull) {
    max-width: 64rem;
    margin: 0 auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    overflow: hidden; }
  body.page-node-type-page #content #content-main > .layout-container .field--name-body > .alignfull > .wp-block-group__inner-container {
    max-width: 64rem;
    margin: 0 auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    overflow: hidden; }

#block-starter-page-title h1 {
  padding-top: 3rem; }

h1.is-style-text-shadow,
h2.is-style-text-shadow,
h3.is-style-text-shadow,
h4.is-style-text-shadow,
h5.is-style-text-shadow,
.node-page.has-pb-menu > .content > .pb-menu > ul li a.is-style-text-shadow,
h6.is-style-text-shadow {
  text-shadow: 0 0 5px black; }

.wp-block-jvbruni-spacer {
  height: 3rem; }
  .wp-block-jvbruni-spacer.is-style-large {
    height: 1rem; }
  .wp-block-jvbruni-spacer.is-style-medium {
    height: 3rem; }
  .wp-block-jvbruni-spacer.is-style-large {
    height: 6rem; }

.wp-block-cover,
.wp-block-cover-image {
  min-height: 2rem !important;
  padding: 1.5rem; }
  .wp-block-cover > .wp-block-cover__inner-container,
  .wp-block-cover-image > .wp-block-cover__inner-container {
    max-width: 64rem;
    margin: 0 auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    overflow: hidden; }

.wp-block-image {
  margin: 0 auto; }
  .wp-block-image img {
    margin-bottom: 0 !important; }

.wp-block-columns {
  margin-bottom: 0; }

.wp-block-group.has-background,
.wp-block-cover.has-background {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }

.wp-block-group.is-style-padding-large,
.wp-block-cover.is-style-padding-large {
  padding-top: 3rem;
  padding-bottom: 3rem; }

.wp-block-group h1,
.wp-block-cover h1 {
  padding-top: 0 !important; }

.wp-block-group .views-element-container > h2,
.wp-block-cover .views-element-container > h2 {
  display: none; }

.alignleft,
.aligncenter,
.alignright {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5em; }

.alignleft {
  float: none !important; }

.aligncenter {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.alignright {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

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

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

.view-client-letter-excerpts {
  position: relative; }
  .view-client-letter-excerpts .view-filters .view-content {
    background: #3498DB;
    margin: 0 auto; }
  .view-client-letter-excerpts .view-filters .button-outline {
    border-color: white;
    background: transparent;
    color: white; }
    .view-client-letter-excerpts .view-filters .button-outline.filter-active {
      color: #3498DB;
      background: white; }
  .view-client-letter-excerpts .node__card {
    background: white; }
    .view-client-letter-excerpts .node__card .field--name-body > * {
      padding-left: 0 !important;
      max-width: none !important; }
  .view-client-letter-excerpts .views-group__title {
    background: white;
    color: #3498DB; }
  .view-client-letter-excerpts .views-group__bar {
    background: white; }

.view-topics.view-display-id-block_1 {
  position: relative; }
  .view-topics.view-display-id-block_1 .view-topics-list .view-content {
    background: #efefef;
    margin: 0 auto; }

.view-articles.view-display-id-articles_block h2 {
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif !important; }

#content-top .messages {
  max-width: 64rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  margin-top: 1.5rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  background: transparent; }
  #content-top .messages .message__content {
    border-style: solid;
    border-width: 1px;
    display: block;
    font-size: 0.72222rem;
    font-weight: normal;
    margin-bottom: 1.11111rem;
    padding: 1.5rem 2.05556rem 1.5rem 1.5rem;
    position: relative;
    -webkit-transition: opacity 300ms ease-out;
    transition: opacity 300ms ease-out;
    background-color: whitesmoke;
    border-color: lightgray;
    color: #7a003d;
    position: relative;
    padding: 0.75rem;
    padding-left: 1.5rem;
    color: #333333;
    border: none;
    border-left: 6rem solid #5BB1D3;
    background-image: none;
    font-size: 18px;
    font-family: "Oxygen Mono", Consolas, monospace;
    -webkit-box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.2);
    border-radius: 3px; }
    #content-top .messages .message__content:after {
      content: '\E831';
      font-family: oxbow;
      width: 6rem;
      position: absolute;
      left: -6rem;
      top: 0;
      bottom: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      font-size: 1.11111rem;
      color: rgba(255, 255, 255, 0.8); }
    #content-top .messages .message__content .close {
      right: 0.22222rem;
      background: inherit;
      color: #333333;
      font-size: 1.22222rem;
      line-height: .9;
      margin-top: -0.61111rem;
      opacity: 0.3;
      padding: 0 6px 4px;
      position: absolute;
      top: 50%;
      background-image: none;
      right: 0.75rem;
      border-bottom: none !important;
      opacity: .5;
      font-size: 2rem;
      line-height: 1;
      margin-top: -1rem; }
      #content-top .messages .message__content .close:hover, #content-top .messages .message__content .close:focus {
        opacity: 0.5; }
  #content-top .messages.messages--status .message__content {
    border-left-color: #43AC6A; }
    #content-top .messages.messages--status .message__content:after {
      content: '\E81D'; }
  #content-top .messages.messages--error .message__content {
    border-left-color: #f04124; }
    #content-top .messages.messages--error .message__content:after {
      content: '\E83C'; }
  #content-top .messages.messages--warning .message__content {
    border-left-color: #f08a24; }
    #content-top .messages.messages--warning .message__content:after {
      content: '\E841'; }
  #content-top .messages.alert-close {
    max-height: 0;
    opacity: 0; }

#admin #block-starter-local-tasks {
  position: fixed;
  right: 0;
  bottom: -1px;
  z-index: 1000;
  max-width: 64rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem; }
  #admin #block-starter-local-tasks ul {
    margin: 0;
    text-align: center;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    border-radius: 3px;
    overflow: hidden; }
    #admin #block-starter-local-tasks ul li {
      list-style: none;
      float: left;
      padding: 0;
      margin: 0; }
      #admin #block-starter-local-tasks ul li a {
        -webkit-appearance: none;
        -moz-appearance: none;
        border-radius: 0;
        border-style: solid;
        border-width: 0;
        cursor: pointer;
        font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-weight: normal;
        line-height: normal;
        margin: 0 0 0;
        position: relative;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
        background-color: mediumseagreen;
        border-color: #308f5a;
        color: #FFFFFF;
        border-radius: 0.16667rem;
        -webkit-transition: background-color 300ms ease-out;
        transition: background-color 300ms ease-out;
        color: white !important;
        font-weight: bold;
        border-radius: 0 !important;
        border-left: 1px solid rgba(0, 0, 0, 0.2);
        border-right: 1px solid rgba(0, 0, 0, 0.2); }
        #admin #block-starter-local-tasks ul li a:hover, #admin #block-starter-local-tasks ul li a:focus {
          background-color: #308f5a; }
        #admin #block-starter-local-tasks ul li a:hover, #admin #block-starter-local-tasks ul li a:focus {
          color: #FFFFFF; }
        #admin #block-starter-local-tasks ul li a.is-active {
          display: none; }
        #admin #block-starter-local-tasks ul li a[href$='delete'] {
          -webkit-appearance: none;
          -moz-appearance: none;
          border-radius: 0;
          border-style: solid;
          border-width: 0;
          cursor: pointer;
          font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
          font-weight: normal;
          line-height: normal;
          margin: 0 0 0;
          position: relative;
          text-align: center;
          text-decoration: none;
          display: inline-block;
          padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
          background-color: crimson;
          border-color: #b01030;
          color: #FFFFFF;
          border-radius: 0.16667rem;
          -webkit-transition: background-color 300ms ease-out;
          transition: background-color 300ms ease-out;
          color: white !important;
          font-weight: bold; }
          #admin #block-starter-local-tasks ul li a[href$='delete']:hover, #admin #block-starter-local-tasks ul li a[href$='delete']:focus {
            background-color: #b01030; }
          #admin #block-starter-local-tasks ul li a[href$='delete']:hover, #admin #block-starter-local-tasks ul li a[href$='delete']:focus {
            color: #FFFFFF; }
        #admin #block-starter-local-tasks ul li a[href*='devel'] {
          -webkit-appearance: none;
          -moz-appearance: none;
          border-radius: 0;
          border-style: solid;
          border-width: 0;
          cursor: pointer;
          font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
          font-weight: normal;
          line-height: normal;
          margin: 0 0 0;
          position: relative;
          text-align: center;
          text-decoration: none;
          display: inline-block;
          padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
          background-color: gold;
          border-color: #ccac00;
          color: #FFFFFF;
          border-radius: 0.16667rem;
          -webkit-transition: background-color 300ms ease-out;
          transition: background-color 300ms ease-out;
          color: white !important;
          font-weight: bold; }
          #admin #block-starter-local-tasks ul li a[href*='devel']:hover, #admin #block-starter-local-tasks ul li a[href*='devel']:focus {
            background-color: #ccac00; }
          #admin #block-starter-local-tasks ul li a[href*='devel']:hover, #admin #block-starter-local-tasks ul li a[href*='devel']:focus {
            color: #FFFFFF; }

#toolbar-administration #toolbar-item-administration-tray .toolbar-menu li.menu-item {
  font-size: small; }

#toolbar-administration #admin-toolbar-search-input {
  height: unset; }

body.path-node #block-starter-page-title {
  text-align: left;
  margin-bottom: 0; }

.node .node__link {
  margin-top: 1.5rem; }
  .node .node__link a {
    -webkit-appearance: none;
    -moz-appearance: none;
    border-radius: 0;
    border-style: solid;
    border-width: 0;
    cursor: pointer;
    font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-weight: normal;
    line-height: normal;
    margin: 0 0 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
    background-color: transparent;
    border-color: rgba(0, 0, 0, 0);
    color: #FFFFFF;
    border-radius: 0.16667rem;
    -webkit-transition: background-color 300ms ease-out;
    transition: background-color 300ms ease-out;
    color: #3498DB;
    border: 1px solid #3498DB; }
    .node .node__link a:hover, .node .node__link a:focus {
      background-color: rgba(0, 0, 0, 0); }
    .node .node__link a:hover, .node .node__link a:focus {
      color: #FFFFFF; }
    .node .node__link a:hover, .node .node__link a:focus {
      color: #3498DB;
      background: transparent; }

.node.node--view-mode-full .node__info .sep {
  margin: 0 0.375rem; }

.node.node--view-mode-full .node__info .field--name-field-topics > .field__item {
  margin-right: 0.375rem; }

body.path-user #block-starter-page-title {
  text-align: left;
  margin-bottom: 0; }

body.path-user .field--name-user-picture {
  float: right;
  margin-left: 1.5rem;
  margin-bottom: 1.5rem;
  margin-top: -6rem; }

body.path-user .field--name-field-position {
  margin-bottom: 1.5rem;
  font-size: 1.44444rem; }

.profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .profile .profile__image {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 20%;
            flex: 1 0 20%;
    margin: 0 0 1.5rem 1.5rem; }
  .profile .profile__name * {
    margin: 0; }
  .profile .profile__position {
    font-style: italic;
    margin-bottom: 0.75rem; }
  @media screen and (max-width: 1024px) {
    .profile .profile__image {
      -webkit-box-flex: 1;
          -ms-flex: 1 0 33.33333%;
              flex: 1 0 33.33333%; } }
  @media screen and (max-width: 750px) {
    .profile {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .profile .profile__image {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 33.33333%;
                flex: 1 0 33.33333%;
        margin: 0 0 1.5rem 0; }
      .profile .profile__name,
      .profile .profile__position {
        text-align: center; } }

body.path-frontpage #block-starter-page-title {
  display: none; }

body.path-frontpage #content-main > .layout-container {
  padding-top: 0 !important; }

body.page-node-type-page #block-starter-page-title {
  text-align: center; }

body.page-node-type-page .field--name-body img {
  margin-bottom: 1.5rem; }
  body.page-node-type-page .field--name-body img.align-right {
    margin-left: 1.5rem; }
  body.page-node-type-page .field--name-body img.align-left {
    margin-right: 1.5rem; }

body.page-node-type-page hr {
  clear: both;
  border: none;
  height: auto;
  padding: 1.5rem 0; }
  body.page-node-type-page hr:before {
    content: '\2666' !important;
    display: block !important;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    background: #bfbfbf;
    color: #bfbfbf;
    text-align: center;
    line-height: 0; }

.node-page.has-pb-menu > .content {
  margin: 1.5rem 0 0;
  border-top: none;
  padding-top: 1.5rem; }
  .node-page.has-pb-menu > .content > .pb-menu {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 301;
    height: 2.5rem;
    overflow: auto;
    text-align: center;
    line-height: 1;
    font-size: 0;
    background: #FFFFFF; }
    .node-page.has-pb-menu > .content > .pb-menu.fixed {
      position: fixed; }
    .node-page.has-pb-menu > .content > .pb-menu > ul {
      max-width: 64rem;
      margin: 0 auto;
      padding-left: 1.5rem;
      padding-right: 1.5rem;
      list-style: none;
      margin-top: 0;
      margin-bottom: 0.94444rem;
      margin-left: -1.22222rem;
      margin-right: 0;
      overflow: hidden;
      padding: 0;
      display: inline-block;
      margin: 0 auto;
      padding: 0.75rem 1.5rem 0; }
      .node-page.has-pb-menu > .content > .pb-menu > ul > li {
        display: block;
        float: left;
        list-style: none;
        margin-left: 1.22222rem; }
        .node-page.has-pb-menu > .content > .pb-menu > ul > li > * {
          display: block; }
      .node-page.has-pb-menu > .content > .pb-menu > ul li {
        margin: 0;
        padding: 0 0.75rem 0.75rem; }
        .node-page.has-pb-menu > .content > .pb-menu > ul li a {
          line-height: 1;
          margin: 0;
          border-bottom: 1px solid transparent;
          -webkit-transition: border-color 0.7s ease-out;
          transition: border-color 0.7s ease-out; }
          .node-page.has-pb-menu > .content > .pb-menu > ul li a.active {
            cursor: default;
            border-bottom-color: rgba(51, 51, 51, 0.5); }
  .node-page.has-pb-menu > .content > .paragraphs-items-field-paragraphs {
    padding-top: 2.5rem; }

.node-slideshow-slide {
  font-size: 0;
  line-height: 1; }
  .node-slideshow-slide .slide-wrap {
    width: 100%; }
  .node-slideshow-slide .slide {
    width: 100%;
    display: inline-block;
    position: relative; }
  .node-slideshow-slide .slide-link {
    display: inline-block;
    width: 100%;
    padding: 0;
    margin: 0;
    border: none; }
  .node-slideshow-slide .slide-img {
    width: 100%; }
    .node-slideshow-slide .slide-img * {
      width: 100%; }
  .node-slideshow-slide .slide-text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 64rem;
    margin: 0 auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem; }
    .node-slideshow-slide .slide-text > .inner {
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      padding: 1.5rem;
      font-size: 1.77778rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      .node-slideshow-slide .slide-text > .inner .slide-text-line {
        display: inline-block;
        width: 100%;
        text-align: center;
        padding: 0.75rem 0; }
      .node-slideshow-slide .slide-text > .inner .line-link a {
        -webkit-appearance: none;
        -moz-appearance: none;
        border-radius: 0;
        border-style: solid;
        border-width: 0;
        cursor: pointer;
        font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-weight: normal;
        line-height: normal;
        margin: 0 0 0;
        position: relative;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        padding: 0.88889rem 1.77778rem 0.94444rem 1.77778rem;
        font-size: 0.88889rem;
        background-color: #3498DB;
        border-color: #217bb8;
        color: #FFFFFF;
        -webkit-transition: background-color 300ms ease-out;
        transition: background-color 300ms ease-out;
        font-size: 1.77778rem;
        margin: 0.75rem 0; }
        .node-slideshow-slide .slide-text > .inner .line-link a:hover, .node-slideshow-slide .slide-text > .inner .line-link a:focus {
          background-color: #217bb8; }
        .node-slideshow-slide .slide-text > .inner .line-link a:hover, .node-slideshow-slide .slide-text > .inner .line-link a:focus {
          color: #FFFFFF; }
  .node-slideshow-slide.text-pos-left .slide-text .inner {
    left: 0; }
  .node-slideshow-slide.text-pos-center .slide-text .inner {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .node-slideshow-slide.text-pos-right .slide-text .inner {
    right: 0; }

.node.node--type-article .node__info > * {
  float: left; }

.node.node--type-article .node__info * {
  text-transform: uppercase;
  font-size: 1.05556rem; }

.node.node--type-article .node__info .node__date {
  color: #666666; }

.node.node--type-article .node__info .sep {
  margin: 0 .25em; }

.node.node--type-article .node__info .field--name-field-topics * {
  display: inline-block; }

.node.node--type-article .node__info .field--name-field-topics .field__item:not(:last-of-type) a:after {
  content: ','; }

.node.node--type-article .node__author, .node.node--type-article .node__author * {
  display: inline-block;
  font-size: 1.05556rem;
  color: #666666; }
  .node.node--type-article .node__author span, .node.node--type-article .node__author * span {
    padding-left: .25em; }

.node.node--type-article.node--view-mode-full header {
  margin-bottom: 1.5rem; }

.node.node--type-article.node--view-mode-full .node__subtitle {
  margin-bottom: 0.75rem; }

.node.node--type-article.node--view-mode-full .node__author {
  margin-top: 0.75rem; }

.node.node--type-article.node--view-mode-full .node__image {
  max-width: 400px;
  width: 35%;
  float: right;
  margin-left: 1.5rem;
  margin-bottom: 1.5rem; }
  @media screen and (max-width: 600px) {
    .node.node--type-article.node--view-mode-full .node__image {
      max-width: none;
      width: 100%;
      float: none;
      margin-left: 0; } }

.node.node--type-article.node--view-mode-teaser .node__content {
  float: left;
  max-width: 70%; }
  .node.node--type-article.node--view-mode-teaser .node__content .node__info {
    margin-bottom: 0.75rem; }
  .node.node--type-article.node--view-mode-teaser .node__content .node__subtitle * {
    font-size: 1.05556rem; }

.node.node--type-article.node--view-mode-teaser .node__image {
  float: right;
  max-width: 30%;
  padding-left: 1.5rem; }

.node.node--type-blog-entry .node__info > * {
  float: left; }

.node.node--type-blog-entry .node__info * {
  text-transform: uppercase;
  font-size: 1.05556rem; }

.node.node--type-blog-entry .node__info .node__date {
  color: #666666; }

.node.node--type-blog-entry .node__info .sep {
  margin: 0 .25em; }

.node.node--type-blog-entry .node__info .field--name-field-topics * {
  display: inline-block; }

.node.node--type-blog-entry .node__info .field--name-field-topics .field__item:not(:last-of-type) a:after {
  content: ','; }

.node.node--type-blog-entry .node__author, .node.node--type-blog-entry .node__author * {
  display: inline-block;
  font-size: 1.05556rem;
  color: #666666; }
  .node.node--type-blog-entry .node__author span, .node.node--type-blog-entry .node__author * span {
    padding-left: .25em; }

.node.node--type-blog-entry.node--view-mode-full header {
  margin-bottom: 1.5rem; }

.node.node--type-blog-entry.node--view-mode-full .node__author {
  margin-top: 0.75rem; }

.node.node--type-blog-entry.node--view-mode-full .node__image {
  margin-bottom: 1.5rem; }

.node.node--type-blog-entry.node--view-mode-full footer {
  margin-top: 1.5rem; }
  .node.node--type-blog-entry.node--view-mode-full footer:before {
    content: '\2666' !important;
    display: block !important;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    background: #bfbfbf;
    color: #bfbfbf;
    text-align: center;
    line-height: 0;
    margin-bottom: 1.5rem; }

.node.node--type-blog-entry.node--view-mode-full .node__author_about {
  position: relative;
  padding-left: 5.55556rem; }
  .node.node--type-blog-entry.node--view-mode-full .node__author_about .field--name-user-picture {
    position: absolute;
    left: 0;
    top: 0; }

.node.node--type-blog-entry.node--view-mode-teaser .node__info {
  margin-bottom: 0.75rem; }

.node.node--type-blog-entry.node--view-mode-teaser .node__image {
  width: 100%;
  margin-bottom: 0.75rem; }

.node.node--type-blog-entry.node--view-mode-teaser .node__link {
  text-align: center; }

.node.node--type-client-letter-excerpt .node__info > * {
  float: left; }

.node.node--type-client-letter-excerpt .node__info * {
  text-transform: uppercase;
  font-size: 1.05556rem; }

.node.node--type-client-letter-excerpt .node__info .node__date {
  color: #666666; }

.node.node--type-client-letter-excerpt .node__info .field--name-field-topics * {
  display: inline-block; }

.node.node--type-client-letter-excerpt .node__info .field--name-field-topics .field__item:not(:last-of-type):after {
  content: ','; }

.node.node--type-client-letter-excerpt .node__author, .node.node--type-client-letter-excerpt .node__author * {
  display: inline-block;
  font-size: 1.05556rem;
  color: #666666; }

.node.node--type-client-letter-excerpt.node--view-mode-full header {
  margin-bottom: 1.5rem; }

.node.node--type-client-letter-excerpt.node--view-mode-full .node__author {
  margin-top: 0.75rem; }

.node.node--type-client-letter-excerpt.node--view-mode-full .node__image {
  margin-bottom: 1.5rem; }

.node.node--type-client-letter-excerpt.node--view-mode-teaser .node__info {
  margin-bottom: 0.75rem; }

.node.node--type-client-letter-excerpt.node--view-mode-teaser .node__image {
  width: 100%;
  margin-bottom: 0.75rem; }

@media print {
  body #header-top {
    display: none; }
  body #header {
    padding-top: 20px !important; }
  body #block-starter-local-tasks {
    display: none; }
  body footer nav {
    display: none; }
  body a[href]:after {
    content: '' !important;
    display: none; }
  body #block-copyrightblock {
    text-align: center;
    padding-top: 30px;
    font-size: small; }
  body .view-client-letter-excerpts .view-topics-list {
    display: none; }
  body .view-client-letter-excerpts > .view-content .views-row {
    width: 100% !important;
    position: static !important; }
    body .view-client-letter-excerpts > .view-content .views-row .node__card {
      padding: 0 !important; }
  body .view-client-letter-excerpts .views-group {
    height: auto !important;
    padding: 0 !important; }
  body .view-client-letter-excerpts .views-group__bar,
  body .view-client-letter-excerpts .views-group__tag {
    display: none !important; } }

.view > .view-content .views-row {
  margin-bottom: 3rem; }
  .view > .view-content .views-row .node__title {
    margin-top: 0; }

.paragraph .view-front-page .view-content {
  margin-bottom: 1.5rem; }

.view-front-page {
  margin: -0.375rem; }
  .view-front-page > .view-content {
    display: block !important; }
    .view-front-page > .view-content .views-row {
      position: relative;
      float: left !important;
      width: 25% !important;
      height: 0;
      padding: 0 !important;
      padding-top: 25% !important;
      margin: 0; }
      .view-front-page > .view-content .views-row .node {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: #efefef;
        background-size: cover;
        background-position: center;
        margin: 0.375rem; }
        .view-front-page > .view-content .views-row .node .node__content {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          padding: 1.5rem; }
          .view-front-page > .view-content .views-row .node .node__content * {
            color: #333333;
            -webkit-transition: color 0.3s ease-out;
            transition: color 0.3s ease-out; }
        .view-front-page > .view-content .views-row .node.text-color-white .node__content * {
          color: white; }
        .view-front-page > .view-content .views-row .node.text-color-gray .node__content * {
          color: #666666; }
        .view-front-page > .view-content .views-row .node.text-color-blue .node__content * {
          color: #3498DB; }
        .view-front-page > .view-content .views-row .node .node__title {
          display: inline-block;
          width: 100%;
          position: relative;
          z-index: 1;
          margin: 0;
          line-height: 1.1; }
          .view-front-page > .view-content .views-row .node .node__title a {
            display: inline-block;
            float: left;
            font-size: 48%; }
        .view-front-page > .view-content .views-row .node .node__info {
          position: relative;
          z-index: 1; }
          .view-front-page > .view-content .views-row .node .node__info * {
            font-size: 95%; }
        .view-front-page > .view-content .views-row .node .node__subtitle {
          position: absolute;
          left: 1.5rem;
          right: 1.5rem;
          bottom: 1.5rem; }
          .view-front-page > .view-content .views-row .node .node__subtitle h3 {
            margin: 0;
            font-size: 90%; }
        .view-front-page > .view-content .views-row .node .node__link {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0; }
      .view-front-page > .view-content .views-row:nth-child(odd) .node {
        background-color: #e2e2e2; }
      .view-front-page > .view-content .views-row:first-of-type {
        width: 50% !important;
        padding-top: 50% !important; }
        .view-front-page > .view-content .views-row:first-of-type .node {
          background-color: #c9c9c9; }
          .view-front-page > .view-content .views-row:first-of-type .node .node__title a {
            font-size: 62%; }
      .view-front-page > .view-content .views-row:last-of-type {
        width: 50% !important;
        padding-top: 25% !important; }
        .view-front-page > .view-content .views-row:last-of-type .node {
          background-color: lightgray; }
          .view-front-page > .view-content .views-row:last-of-type .node .node__title a {
            font-size: 58%; }

.view-about > .view-content .views-row:after {
  content: '\2666' !important;
  display: block !important;
  width: 50%;
  height: 1px;
  margin: 0 auto;
  background: #bfbfbf;
  color: #bfbfbf;
  text-align: center;
  line-height: 0; }

.view-about > .view-content .views-row:last-of-type:after {
  display: none !important; }

.view-about > .view-content .views-row .views-field-user-picture {
  float: right;
  margin-left: 1.5rem;
  margin-bottom: 3rem;
  max-width: 33%; }

.view-about > .view-content .views-row .views-field-name * {
  margin-bottom: 0; }

.view-about > .view-content .views-row .views-field-field-position {
  font-style: italic;
  margin-bottom: 0.75rem; }

.view-about > .view-content .views-row .views-field-field-bio {
  padding-bottom: 1.5rem; }

.view-topics header {
  margin: 0 -0.75rem; }

.view-topics .view-topics-list {
  margin-bottom: 1.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem; }
  .view-topics .view-topics-list:after {
    content: '\2666' !important;
    display: block !important;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    background: #bfbfbf;
    color: #bfbfbf;
    text-align: center;
    line-height: 0;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem; }

.view-topics > .view-content {
  display: block !important; }
  .view-topics > .view-content .views-row {
    display: block;
    float: left;
    margin: 0;
    padding: 0 !important; }
    .view-topics > .view-content .views-row .node {
      width: 33.33333%;
      padding: 0.75rem; }
      .view-topics > .view-content .views-row .node .node__content {
        padding: 1.5rem;
        background: #FFFFFF;
        border: 1px solid #b1b1b1;
        position: relative;
        overflow: hidden;
        -webkit-box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.1);
                box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.1); }
        .view-topics > .view-content .views-row .node .node__content .node__title {
          margin-top: 0;
          padding-right: 3.05556rem;
          font-size: 1.2rem; }
        .view-topics > .view-content .views-row .node .node__content .node__info * {
          font-size: 18px; }
        .view-topics > .view-content .views-row .node .node__content .node__type {
          width: 150px;
          position: absolute;
          top: 20px;
          right: -40px;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg);
          text-align: center;
          background: #3498DB;
          color: white;
          padding: 0.11111rem;
          font-size: 80%; }

@media (max-width: 900px) {
  .view-topics .view-id-topics_list .view-content {
    padding-bottom: 10px; }
  .view-topics .view-id-topics_list .views-row {
    margin: 0 2px 2px 0 !important; }
    .view-topics .view-id-topics_list .views-row a {
      font-size: 10px; }
  .view-topics > .view-content .views-row .node {
    width: 50%; } }

@media (max-width: 620px) {
  .view-topics > .view-content .views-row .node {
    width: 100%; } }

.view-topics-list {
  position: relative;
  text-align: left; }
  .view-topics-list > .view-content {
    display: block !important;
    text-align: center;
    padding: 0.75rem 0.375rem 0 0.75rem; }
    .view-topics-list > .view-content .views-row {
      display: inline-block;
      margin-bottom: .6rem !important;
      margin-right: .5rem;
      background-color: transparent !important;
      max-width: 100% !important;
      width: auto !important;
      -webkit-box-flex: 0 !important;
          -ms-flex: none !important;
              flex: none !important;
      padding: 0 !important; }
    .view-topics-list > .view-content.sticky-able {
      position: absolute !important;
      top: 0;
      left: -1.5rem;
      right: -1.5rem;
      max-width: none;
      border-radius: 0 0 10px 10px;
      -webkit-transition: -webkit-box-shadow .3s;
      transition: -webkit-box-shadow .3s;
      transition: box-shadow .3s;
      transition: box-shadow .3s, -webkit-box-shadow .3s; }
    .view-topics-list > .view-content.fixed {
      position: fixed !important;
      -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4);
              box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.4); }
      body.toolbar-fixed .view-topics-list > .view-content.fixed {
        top: 133px !important; }
      body.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .view-topics-list > .view-content.fixed {
        top: 173px !important; }

.view-filters a {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0);
  color: #FFFFFF;
  border-radius: 0.16667rem;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  color: black;
  border: 1px solid black;
  border-color: #3498DB;
  color: #3498DB;
  padding: 0.35rem 0.5rem 0.4rem 0.5rem; }
  .view-filters a:hover, .view-filters a:focus {
    background-color: rgba(0, 0, 0, 0); }
  .view-filters a:hover, .view-filters a:focus {
    color: #FFFFFF; }
  .view-filters a:hover, .view-filters a:focus {
    color: black;
    background: transparent; }
  .view-filters a:hover {
    color: #3498DB; }
  .view-filters a.filter-active {
    background: #3498DB;
    color: white; }

.view-articles.view-display-id-articles_block > .view-content {
  display: block !important; }
  .view-articles.view-display-id-articles_block > .view-content .views-row {
    margin-bottom: 3rem; }
    .view-articles.view-display-id-articles_block > .view-content .views-row:after {
      content: '\2666' !important;
      display: block !important;
      width: 50%;
      height: 1px;
      margin: 0 auto;
      background: #bfbfbf;
      color: #bfbfbf;
      text-align: center;
      line-height: 0;
      margin-top: 3rem; }
    .view-articles.view-display-id-articles_block > .view-content .views-row:last-of-type {
      margin-bottom: 0; }
      .view-articles.view-display-id-articles_block > .view-content .views-row:last-of-type:after {
        display: none; }

.view-blog > .view-content .views-row {
  margin-bottom: 3rem; }
  .view-blog > .view-content .views-row:after {
    content: '\2666' !important;
    display: block !important;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    background: #bfbfbf;
    color: #bfbfbf;
    text-align: center;
    line-height: 0;
    margin-top: 1.5rem; }
  .view-blog > .view-content .views-row:last-of-type {
    margin-bottom: 0; }
    .view-blog > .view-content .views-row:last-of-type:after {
      display: none; }

.view-recent-blogs > .view-content {
  margin-left: -0.75rem;
  margin-right: -0.75rem; }
  .view-recent-blogs > .view-content .views-row .node .node__title {
    margin-top: 0.75rem; }
    .view-recent-blogs > .view-content .views-row .node .node__title * {
      font-weight: bold; }
  .view-recent-blogs > .view-content .views-row .node .node__link {
    margin-top: 1.5rem;
    text-align: center; }
    .view-recent-blogs > .view-content .views-row .node .node__link a {
      -webkit-appearance: none;
      -moz-appearance: none;
      border-radius: 0;
      border-style: solid;
      border-width: 0;
      cursor: pointer;
      font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-weight: normal;
      line-height: normal;
      margin: 0 0 0;
      position: relative;
      text-align: center;
      text-decoration: none;
      display: inline-block;
      padding: 0.75rem 1.5rem 0.80556rem 1.5rem;
      background-color: transparent;
      border-color: rgba(0, 0, 0, 0);
      color: #FFFFFF;
      border-radius: 0.16667rem;
      -webkit-transition: background-color 300ms ease-out;
      transition: background-color 300ms ease-out;
      color: black;
      border: 1px solid black; }
      .view-recent-blogs > .view-content .views-row .node .node__link a:hover, .view-recent-blogs > .view-content .views-row .node .node__link a:focus {
        background-color: rgba(0, 0, 0, 0); }
      .view-recent-blogs > .view-content .views-row .node .node__link a:hover, .view-recent-blogs > .view-content .views-row .node .node__link a:focus {
        color: #FFFFFF; }
      .view-recent-blogs > .view-content .views-row .node .node__link a:hover, .view-recent-blogs > .view-content .views-row .node .node__link a:focus {
        color: black;
        background: transparent; }

body.path-client-letter-excerpts #page {
  background: #3498DB; }
  body.path-client-letter-excerpts #page #content-main {
    background: #3498DB; }
    body.path-client-letter-excerpts #page #content-main #block-starter-page-title * {
      color: #FFFFFF; }

.view-client-letter-excerpts {
  opacity: 0; }
  .view-client-letter-excerpts.show {
    opacity: 1;
    -webkit-transition: all .15s ease-in-out;
    transition: all .15s ease-in-out; }
  .view-client-letter-excerpts .view-topics-list {
    margin-bottom: 1.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem; }
    .view-client-letter-excerpts .view-topics-list:after {
      content: '\2666' !important;
      display: block !important;
      width: 50%;
      height: 1px;
      margin: 0 auto;
      background: #bfbfbf;
      color: #bfbfbf;
      text-align: center;
      line-height: 0;
      margin-top: 1.5rem;
      margin-bottom: 0.75rem; }
    .view-client-letter-excerpts .view-topics-list .views-field {
      background: transparent !important; }
  .view-client-letter-excerpts > .view-content {
    display: block !important; }
    .view-client-letter-excerpts > .view-content .views__foot {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      width: 5.55556rem;
      height: 0.55556rem;
      margin: 0 auto; }
    .view-client-letter-excerpts > .view-content .views-group {
      position: relative;
      width: 100%;
      padding: 5.93056rem 0 3rem; }
      .view-client-letter-excerpts > .view-content .views-group.filter-hidden {
        display: none; }
      .view-client-letter-excerpts > .view-content .views-group .views-group__bar {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 0.55556rem;
        height: 100%;
        margin-left: -0.27778rem; }
      .view-client-letter-excerpts > .view-content .views-group .views-group__tag {
        position: absolute;
        left: 50%;
        top: 0;
        z-index: 1;
        display: inline-block; }
        .view-client-letter-excerpts > .view-content .views-group .views-group__tag .views-group__title {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          width: 5.55556rem;
          height: 5.55556rem;
          margin: 0;
          margin-left: -2.77778rem;
          border-radius: 50%;
          font-weight: bold; }
    .view-client-letter-excerpts > .view-content .views-row {
      display: block;
      width: 50% !important;
      padding: 0 1.66667rem 1.5rem;
      margin: 0;
      background: transparent !important; }
      .view-client-letter-excerpts > .view-content .views-row.filter-hidden {
        display: none; }
      .view-client-letter-excerpts > .view-content .views-row .node__card {
        padding: 1.5rem;
        -webkit-box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.3);
                box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.3); }
        .view-client-letter-excerpts > .view-content .views-row .node__card .node {
          position: relative; }
        .view-client-letter-excerpts > .view-content .views-row .node__card .node__title {
          margin-top: 0;
          padding-right: 3.05556rem;
          font-size: 1.44444rem; }
          .view-client-letter-excerpts > .view-content .views-row .node__card .node__title span {
            color: #3498DB;
            font-family: "Roboto", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; }
        .view-client-letter-excerpts > .view-content .views-row .node__card .node__info * {
          font-size: 18px; }
      .view-client-letter-excerpts > .view-content .views-row.views-row--second {
        margin-top: 3rem; }
      .view-client-letter-excerpts > .view-content .views-row .node__arrow {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 1.5rem;
        width: 1.11111rem;
        height: 1.11111rem;
        background: white;
        opacity: 0;
        -webkit-transition: opacity 0.2s ease-out;
        transition: opacity 0.2s ease-out;
        display: none; }
        @media (min-width: 901px) {
          .view-client-letter-excerpts > .view-content .views-row .node__arrow {
            display: block; } }
      .view-client-letter-excerpts > .view-content .views-row.views-row--left .node__arrow {
        right: 1.11111rem;
        opacity: 1; }
      .view-client-letter-excerpts > .view-content .views-row.views-row--right .node__arrow {
        left: 1.11111rem;
        opacity: 1; }
      .view-client-letter-excerpts > .view-content .views-row.views-row--second .node__arrow {
        left: 1.11111rem; }

@media (max-width: 900px) {
  .view-client-letter-excerpts .view-id-topics_list .view-content {
    padding-bottom: 10px; }
  .view-client-letter-excerpts .view-id-topics_list .views-row {
    margin: 0 2px 2px 0 !important; }
    .view-client-letter-excerpts .view-id-topics_list .views-row a {
      font-size: 10px; }
  .view-client-letter-excerpts > .view-content .views__foot {
    position: absolute;
    left: 0;
    right: auto;
    width: 5.55556rem;
    height: 0.55556rem;
    margin: 0; }
  .view-client-letter-excerpts > .view-content .views-group .views-group__bar {
    position: absolute;
    left: 2.77778rem; }
  .view-client-letter-excerpts > .view-content .views-group .views-group__tag {
    position: absolute;
    left: 2.77778rem; }
  .view-client-letter-excerpts > .view-content .views-row {
    display: block;
    position: static !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 1.5rem 0 0 4.27778rem !important; }
  .paragraph--type--view.views-p--none > .p__inner {
    padding-left: 0;
    padding-right: 0; } }

.view-insights.view-display-id-block_1 .views-row {
  display: none; }
  .view-insights.view-display-id-block_1 .views-row.show {
    display: block; }
  .view-insights.view-display-id-block_1 .views-row > * {
    height: auto !important; }
  .view-insights.view-display-id-block_1 .views-row p {
    text-align: center; }

body.page-node-type-content-page #block-starter-page-title {
  max-width: 64rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center; }

body.page-node-type-content-page #page #content #content-main > .layout-container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0; }

body.page-node-type-content-page .paragraph:not(.constrain-none) > .p__inner {
  max-width: 64rem;
  margin: 0 auto; }

.paragraph .field--name-field-p-title h1 {
  letter-spacing: 1px; }

.paragraph .p__title h2,
.paragraph .field--name-field-p-content h2 {
  font-family: "Tinos", serif; }

.paragraph .p__scroll {
  width: 3rem;
  height: 3rem;
  bottom: -1.5rem; }
  .paragraph .p__scroll:after {
    content: '\E829';
    font-family: oxbow;
    position: relative;
    top: 0.16667rem;
    font-size: 2rem; }

.paragraph.height-20 > .p__inner {
  height: 20vh;
  overflow-y: auto; }

.paragraph.height-40 > .p__inner {
  height: 40vh;
  overflow-y: auto; }

.paragraph.height-60 > .p__inner {
  height: 60vh;
  overflow-y: auto; }

.paragraph.height-80 > .p__inner {
  height: 80vh;
  overflow-y: auto; }

.paragraph--type--board .field--name-field-p-board .field__item:not(:last-of-type):after, .paragraph--type--board .field--name-field-p-staff .field__item:not(:last-of-type):after, .paragraph--type--staff .field--name-field-p-board .field__item:not(:last-of-type):after, .paragraph--type--staff .field--name-field-p-staff .field__item:not(:last-of-type):after {
  content: '\2666' !important;
  display: block !important;
  width: 50%;
  height: 1px;
  margin: 0 auto;
  background: #bfbfbf;
  color: #bfbfbf;
  text-align: center;
  line-height: 0;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }

.view-staff > .view-content > .views-row:not(:last-of-type):after {
  content: '\2666' !important;
  display: block !important;
  width: 50%;
  height: 1px;
  margin: 0 auto;
  background: #bfbfbf;
  color: #bfbfbf;
  text-align: center;
  line-height: 0;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }

.paragraph.paragraph--type--featured .field--name-field-p-featured,
.paragraph.paragraph--type--featured .view-content,
.view-articles.view-display-id-block_1 .field--name-field-p-featured,
.view-articles.view-display-id-block_1 .view-content {
  display: -ms-grid !important;
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  grid-gap: 1.5rem; }
  .paragraph.paragraph--type--featured .field--name-field-p-featured .views__foot,
  .paragraph.paragraph--type--featured .view-content .views__foot,
  .view-articles.view-display-id-block_1 .field--name-field-p-featured .views__foot,
  .view-articles.view-display-id-block_1 .view-content .views__foot {
    display: none; }
  .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item,
  .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row,
  .paragraph.paragraph--type--featured .view-content .field__item,
  .paragraph.paragraph--type--featured .view-content .views-row,
  .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item,
  .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row,
  .view-articles.view-display-id-block_1 .view-content .field__item,
  .view-articles.view-display-id-block_1 .view-content .views-row {
    margin-bottom: 0; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node,
    .paragraph.paragraph--type--featured .view-content .field__item .node,
    .paragraph.paragraph--type--featured .view-content .views-row .node,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node,
    .view-articles.view-display-id-block_1 .view-content .field__item .node,
    .view-articles.view-display-id-block_1 .view-content .views-row .node {
      width: 100%;
      height: 100%;
      background: white; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__content,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__content,
    .paragraph.paragraph--type--featured .view-content .field__item .node__content,
    .paragraph.paragraph--type--featured .view-content .views-row .node__content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__content,
    .view-articles.view-display-id-block_1 .view-content .field__item .node__content,
    .view-articles.view-display-id-block_1 .view-content .views-row .node__content {
      width: 100%;
      height: 100%;
      background: white;
      display: -ms-grid;
      display: grid;
      grid-template-columns: 1.5rem 1fr 1.5rem;
      grid-template-rows: 1fr 3rem 1fr;
      -ms-grid-columns: 1.5rem 1fr 1.5rem;
      -ms-grid-rows: 1fr 3rem 1fr; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__image,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__image,
    .paragraph.paragraph--type--featured .view-content .field__item .node__image,
    .paragraph.paragraph--type--featured .view-content .views-row .node__image,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__image,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__image,
    .view-articles.view-display-id-block_1 .view-content .field__item .node__image,
    .view-articles.view-display-id-block_1 .view-content .views-row .node__image {
      grid-column: 1 / span 3;
      grid-row: 1 / span 2;
      -ms-grid-column: 1;
      -ms-grid-column-span: 3;
      -ms-grid-row: 1;
      -ms-grid-row-span: 2;
      background-color: #efefef;
      background-size: cover;
      background-position: center; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__text,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__text,
    .paragraph.paragraph--type--featured .view-content .field__item .node__text,
    .paragraph.paragraph--type--featured .view-content .views-row .node__text,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__text,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__text,
    .view-articles.view-display-id-block_1 .view-content .field__item .node__text,
    .view-articles.view-display-id-block_1 .view-content .views-row .node__text {
      grid-column: 2 / span 1;
      grid-row: 2 / span 2;
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      -ms-grid-row: 2;
      -ms-grid-row-span: 2;
      padding: 0.75rem 0 1.5rem;
      background: white;
      color: #333333;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__text h2,
      .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__text h2,
      .paragraph.paragraph--type--featured .view-content .field__item .node__text h2,
      .paragraph.paragraph--type--featured .view-content .views-row .node__text h2,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__text h2,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__text h2,
      .view-articles.view-display-id-block_1 .view-content .field__item .node__text h2,
      .view-articles.view-display-id-block_1 .view-content .views-row .node__text h2 {
        margin: 0;
        padding: 0 0.75rem;
        font-size: 18px;
        line-height: 1.2; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__text .node__link,
      .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__text .node__link,
      .paragraph.paragraph--type--featured .view-content .field__item .node__text .node__link,
      .paragraph.paragraph--type--featured .view-content .views-row .node__text .node__link,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__text .node__link,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__text .node__link,
      .view-articles.view-display-id-block_1 .view-content .field__item .node__text .node__link,
      .view-articles.view-display-id-block_1 .view-content .views-row .node__text .node__link {
        margin-top: 0.75rem;
        text-align: right;
        font-size: 14px; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__text .node__link a,
        .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__text .node__link a,
        .paragraph.paragraph--type--featured .view-content .field__item .node__text .node__link a,
        .paragraph.paragraph--type--featured .view-content .views-row .node__text .node__link a,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__text .node__link a,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__text .node__link a,
        .view-articles.view-display-id-block_1 .view-content .field__item .node__text .node__link a,
        .view-articles.view-display-id-block_1 .view-content .views-row .node__text .node__link a {
          padding: 0.27778rem 0.75rem; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item:first-of-type,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row:first-of-type,
    .paragraph.paragraph--type--featured .view-content .field__item:first-of-type,
    .paragraph.paragraph--type--featured .view-content .views-row:first-of-type,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item:first-of-type,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row:first-of-type,
    .view-articles.view-display-id-block_1 .view-content .field__item:first-of-type,
    .view-articles.view-display-id-block_1 .view-content .views-row:first-of-type {
      grid-column: 1 / span 1;
      grid-row: 1 / span 2; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item:first-of-type .node__content,
      .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row:first-of-type .node__content,
      .paragraph.paragraph--type--featured .view-content .field__item:first-of-type .node__content,
      .paragraph.paragraph--type--featured .view-content .views-row:first-of-type .node__content,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item:first-of-type .node__content,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row:first-of-type .node__content,
      .view-articles.view-display-id-block_1 .view-content .field__item:first-of-type .node__content,
      .view-articles.view-display-id-block_1 .view-content .views-row:first-of-type .node__content {
        grid-template-rows: 6fr 3rem 1fr;
        -ms-grid-rows: 6fr 3rem 1fr; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured .field__item .node__content > .node__link,
    .paragraph.paragraph--type--featured .field--name-field-p-featured .views-row .node__content > .node__link,
    .paragraph.paragraph--type--featured .view-content .field__item .node__content > .node__link,
    .paragraph.paragraph--type--featured .view-content .views-row .node__content > .node__link,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .field__item .node__content > .node__link,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured .views-row .node__content > .node__link,
    .view-articles.view-display-id-block_1 .view-content .field__item .node__content > .node__link,
    .view-articles.view-display-id-block_1 .view-content .views-row .node__content > .node__link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      display: none !important; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .paragraph.paragraph--type--featured .field--name-field-p-featured,
    .paragraph.paragraph--type--featured .view-content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured,
    .view-articles.view-display-id-block_1 .view-content {
      -ms-grid-columns: 2fr 1fr 1fr;
      -ms-grid-rows: 1fr 1fr; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-bottom: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(3),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(3),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(3),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(3) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-bottom: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-top: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(5),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(5),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(5),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(5) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-top: 0.75rem; } }
  @supports (-ms-ime-align: auto) {
    .paragraph.paragraph--type--featured .field--name-field-p-featured,
    .paragraph.paragraph--type--featured .view-content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured,
    .view-articles.view-display-id-block_1 .view-content {
      -ms-grid-columns: 2fr 1fr 1fr;
      -ms-grid-rows: 1fr 1fr; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-bottom: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(3),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(3),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(3),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(3) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-bottom: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-top: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(5),
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(5),
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(5),
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(5) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        padding-left: 1.5rem;
        padding-top: 0.75rem; } }
  @media (max-width: 1023px) {
    .paragraph.paragraph--type--featured .field--name-field-p-featured,
    .paragraph.paragraph--type--featured .view-content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured,
    .view-articles.view-display-id-block_1 .view-content {
      grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
      grid-template-rows: auto auto; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item,
      .paragraph.paragraph--type--featured .view-content > .field__item,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item,
      .view-articles.view-display-id-block_1 .view-content > .field__item {
        grid-column: span 2;
        grid-row: span 1 !important; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item .node .node__content,
        .paragraph.paragraph--type--featured .view-content > .field__item .node .node__content,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item .node .node__content,
        .view-articles.view-display-id-block_1 .view-content > .field__item .node .node__content {
          grid-template-rows: 2fr 3rem 1fr !important; }
          .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item .node .node__content .node__text,
          .paragraph.paragraph--type--featured .view-content > .field__item .node .node__content .node__text,
          .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item .node .node__content .node__text,
          .view-articles.view-display-id-block_1 .view-content > .field__item .node .node__content .node__text {
            min-height: 7.5rem; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1), .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2) {
          grid-column: span 3; } }

@media screen and (-ms-high-contrast: active) and (max-width: 1023px), screen and (-ms-high-contrast: none) and (max-width: 1023px) {
  .paragraph.paragraph--type--featured .field--name-field-p-featured,
  .paragraph.paragraph--type--featured .view-content,
  .view-articles.view-display-id-block_1 .field--name-field-p-featured,
  .view-articles.view-display-id-block_1 .view-content {
    -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    -ms-grid-rows: auto auto; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1),
    .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
    .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 3;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      padding-right: 0.75rem;
      padding-bottom: 0.75rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1) .node .node__content,
      .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1) .node .node__content,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1) .node .node__content,
      .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) .node .node__content {
        -ms-grid-rows: 2fr 3rem 1fr !important; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2),
    .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
    .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2) {
      -ms-grid-column: 4;
      -ms-grid-column-span: 3;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      padding-left: 0.75rem;
      padding-bottom: 0.75rem; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(3),
    .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(3),
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(3),
    .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(3) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 2;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      padding-right: 1rem;
      padding-top: 0.75rem;
      padding-left: 0;
      padding-bottom: 0; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
    .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
    .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 2;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      padding-left: 0.5rem;
      padding-right: 0.5rem;
      padding-top: 0.75rem; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(5),
    .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(5),
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(5),
    .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(5) {
      -ms-grid-column: 5;
      -ms-grid-column-span: 2;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      padding-left: 0.5rem;
      padding-top: 0.75rem; } }
  @supports (-ms-ime-align: auto) {
    @media screen and (max-width: 1023px) {
      .paragraph.paragraph--type--featured .field--name-field-p-featured,
      .paragraph.paragraph--type--featured .view-content,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured,
      .view-articles.view-display-id-block_1 .view-content {
        -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
        -ms-grid-rows: auto auto; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) {
          -ms-grid-column: 1;
          -ms-grid-column-span: 3;
          -ms-grid-row: 1;
          -ms-grid-row-span: 1;
          padding-right: 0.75rem;
          padding-bottom: 0.75rem; }
          .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1) .node .node__content,
          .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1) .node .node__content,
          .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1) .node .node__content,
          .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1) .node .node__content {
            -ms-grid-rows: 2fr 3rem 1fr !important; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2) {
          -ms-grid-column: 4;
          -ms-grid-column-span: 3;
          -ms-grid-row: 1;
          -ms-grid-row-span: 1;
          padding-left: 0.75rem;
          padding-bottom: 0.75rem; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(3),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(3),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(3),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(3) {
          -ms-grid-column: 1;
          -ms-grid-column-span: 2;
          -ms-grid-row: 2;
          -ms-grid-row-span: 1;
          padding-right: 1rem;
          padding-top: 0.75rem;
          padding-left: 0;
          padding-bottom: 0; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
          -ms-grid-column: 3;
          -ms-grid-column-span: 2;
          -ms-grid-row: 2;
          -ms-grid-row-span: 1;
          padding-left: 0.5rem;
          padding-right: 0.5rem;
          padding-top: 0.75rem; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(5),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(5),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(5),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(5) {
          -ms-grid-column: 5;
          -ms-grid-column-span: 2;
          -ms-grid-row: 2;
          -ms-grid-row-span: 1;
          padding-left: 0.5rem;
          padding-top: 0.75rem; } } }
  @media (max-width: 850px) {
    .paragraph.paragraph--type--featured .field--name-field-p-featured,
    .paragraph.paragraph--type--featured .view-content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured,
    .view-articles.view-display-id-block_1 .view-content {
      grid-template-columns: 1fr 1fr;
      grid-template-rows: auto auto; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item,
      .paragraph.paragraph--type--featured .view-content > .field__item,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item,
      .view-articles.view-display-id-block_1 .view-content > .field__item {
        grid-column: span 1 !important;
        display: none; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item .node .node__content,
        .paragraph.paragraph--type--featured .view-content > .field__item .node .node__content,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item .node .node__content,
        .view-articles.view-display-id-block_1 .view-content > .field__item .node .node__content {
          grid-template-rows: 2fr 3rem 1fr !important; }
          .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item .node .node__content .node__text,
          .paragraph.paragraph--type--featured .view-content > .field__item .node .node__content .node__text,
          .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item .node .node__content .node__text,
          .view-articles.view-display-id-block_1 .view-content > .field__item .node .node__content .node__text {
            min-height: 7.5rem; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(1), .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(2), .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(3), .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(1),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(2),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(3),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(3),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(1),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(2),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(3),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
          display: block; } }

@media screen and (-ms-high-contrast: active) and (max-width: 850px), (-ms-high-contrast: none) and (max-width: 850px) {
  .paragraph.paragraph--type--featured .field--name-field-p-featured,
  .paragraph.paragraph--type--featured .view-content,
  .view-articles.view-display-id-block_1 .field--name-field-p-featured,
  .view-articles.view-display-id-block_1 .view-content {
    display: block !important; }
    .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item,
    .paragraph.paragraph--type--featured .view-content > .field__item,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item,
    .view-articles.view-display-id-block_1 .view-content > .field__item {
      padding: 0 !important;
      margin-top: 1.5rem; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:first-of-type,
      .paragraph.paragraph--type--featured .view-content > .field__item:first-of-type,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:first-of-type,
      .view-articles.view-display-id-block_1 .view-content > .field__item:first-of-type {
        margin-top: 0; } }
  @supports (-ms-ime-align: auto) {
    @media (max-width: 850px) {
      .paragraph.paragraph--type--featured .field--name-field-p-featured,
      .paragraph.paragraph--type--featured .view-content,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured,
      .view-articles.view-display-id-block_1 .view-content {
        display: block !important; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item,
        .paragraph.paragraph--type--featured .view-content > .field__item,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item,
        .view-articles.view-display-id-block_1 .view-content > .field__item {
          padding: 0 !important;
          margin-top: 1.5rem; }
          .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:first-of-type,
          .paragraph.paragraph--type--featured .view-content > .field__item:first-of-type,
          .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:first-of-type,
          .view-articles.view-display-id-block_1 .view-content > .field__item:first-of-type {
            margin-top: 0; } } }
  @media (max-width: 600px) {
    .paragraph.paragraph--type--featured .field--name-field-p-featured,
    .paragraph.paragraph--type--featured .view-content,
    .view-articles.view-display-id-block_1 .field--name-field-p-featured,
    .view-articles.view-display-id-block_1 .view-content {
      display: block !important; }
      .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item,
      .paragraph.paragraph--type--featured .view-content > .field__item,
      .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item,
      .view-articles.view-display-id-block_1 .view-content > .field__item {
        margin-top: 1.5rem; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:first-child,
        .paragraph.paragraph--type--featured .view-content > .field__item:first-child,
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:first-child,
        .view-articles.view-display-id-block_1 .view-content > .field__item:first-child {
          margin-top: 0; }
        .paragraph.paragraph--type--featured .field--name-field-p-featured > .field__item:nth-child(4),
        .paragraph.paragraph--type--featured .view-content > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .field--name-field-p-featured > .field__item:nth-child(4),
        .view-articles.view-display-id-block_1 .view-content > .field__item:nth-child(4) {
          display: none; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNjcmVlbi5jc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJnbG9iYWwvX2NsYXNzZXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZ2xvYmFsLnNjc3MiLCJiYXNlL19icmVha3BvaW50cy5zY3NzIiwiZ2xvYmFsL19jb2xvcnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJmb3VuZGF0aW9uL19mdW5jdGlvbnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYWxlcnQtYm94ZXMuc2NzcyIsImJhc2UvX2dsb2JhbC5zY3NzIiwiYmFzZS9fYWxlcnRzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Jsb2NrLWdyaWQuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiYmFzZS9fYnV0dG9ucy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19idXR0b24tZ3JvdXBzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2NsZWFyaW5nLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLWJ1dHRvbnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZmxleC12aWRlby5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiYmFzZS9fZm9ybXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fam95cmlkZS5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19rZXlzdHJva2VzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2xhYmVscy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19tYWdlbGxhbi5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19wcmljaW5nLXRhYmxlcy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19wcm9ncmVzcy1iYXJzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zaWRlLW5hdi5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zcGxpdC1idXR0b25zLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3N1Yi1uYXYuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fc3dpdGNoZXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJiYXNlL190YWJsZXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdGFicy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL190aHVtYnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9vbHRpcHMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL190eXBlLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX29mZmNhbnZhcy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJsYXlvdXQvX2NvbnN0cmFpbi5zY3NzIiwiZ2xvYmFsL19jb25zdHJhaW4uc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJnbG9iYWwvX2dsb2JhbC5zY3NzIiwiZ2xvYmFsL19taXhpbnMuc2NzcyIsImxheW91dC9fY29udGVudC5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvdHlwb2dyYXBoeS9fZm9udHMuc2NzcyIsImNvbXBvbmVudHMvdHlwb2dyYXBoeS9fdGl0bGVzLnNjc3MiLCJjb21wb25lbnRzL3R5cG9ncmFwaHkvX3RhYmxlcy5zY3NzIiwiY29tcG9uZW50cy90eXBvZ3JhcGh5L19ibG9ja3F1b3RlLnNjc3MiLCJjb21wb25lbnRzL3R5cG9ncmFwaHkvX2xpc3RzLnNjc3MiLCJjb21wb25lbnRzL2J1dHRvbnMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL2d1dGVuYmVyZy9fZ3V0ZW5iZXJnLnNjc3MiLCJjb21wb25lbnRzL2FkbWluL19tZXNzYWdlcy5zY3NzIiwiY29tcG9uZW50cy9hZG1pbi9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9hZG1pbi9fbWVudS5zY3NzIiwiY29tcG9uZW50cy9ub2RlL19ub2RlLnNjc3MiLCJjb21wb25lbnRzL25vZGUvX25vZGUtLXVzZXIuc2NzcyIsImNvbXBvbmVudHMvbm9kZS9fbm9kZS0tZnJvbnQuc2NzcyIsImNvbXBvbmVudHMvbm9kZS9fbm9kZS0tcGFnZS5zY3NzIiwiY29tcG9uZW50cy9ub2RlL19ub2RlLS1zbGlkZXNob3ctc2xpZGUuc2NzcyIsImNvbXBvbmVudHMvbm9kZS9fbm9kZS0tYXJ0aWNsZS5zY3NzIiwiY29tcG9uZW50cy9ub2RlL19ub2RlLS1ibG9nLWVudHJ5LnNjc3MiLCJjb21wb25lbnRzL25vZGUvX25vZGUtLWNsaWVudC1sZXR0ZXItZXhjZXJwdC5zY3NzIiwibGF5b3V0L19wcmludC5zY3NzIiwiY29tcG9uZW50cy92aWV3L192aWV3LnNjc3MiLCJjb21wb25lbnRzL3ZpZXcvX3ZpZXctLWZyb250LnNjc3MiLCJjb21wb25lbnRzL3ZpZXcvX3ZpZXctLWFib3V0LnNjc3MiLCJjb21wb25lbnRzL3ZpZXcvX3ZpZXctLXRvcGljcy5zY3NzIiwiY29tcG9uZW50cy92aWV3L192aWV3LS10b3BpY3MtbGlzdC5zY3NzIiwiY29tcG9uZW50cy92aWV3L192aWV3LS1hcnRpY2xlcy5zY3NzIiwiY29tcG9uZW50cy92aWV3L192aWV3LS1ibG9nLnNjc3MiLCJjb21wb25lbnRzL3ZpZXcvX3ZpZXctLXJlY2VudC1ibG9ncy5zY3NzIiwiY29tcG9uZW50cy92aWV3L192aWV3LS1jbGllbnQtbGV0dGVyLWV4Y2VycHRzLnNjc3MiLCJjb21wb25lbnRzL3ZpZXcvX3ZpZXctLWluc2lnaHRzLnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMuc2NzcyIsImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy0tZmVhdHVyZWQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNDakIsNEtBQVk7QUFDWixxR0FBWTtBQUNaLGlFQUFZO0FDRlo7RUFDRSxjQUFhLEVBQ2Q7O0FBTUQ7RUFDRSw0QkFBMkI7RUFDM0IsMEJBQXlCO0VBRXpCLHVCQUFzQjtFQUN0QixzQkFBcUI7RUFDckIsa0JBQWlCLEVBQ2xCOztBRExEO0VBQ0UscUJBQW9CO0VBQ3BCLG9EQUFtRDtFQUNuRCwwUkFHc0U7RUFDdEUsa0JBQWlCO0VBQ2pCLG9CQUFtQjtFQUNuQixtQkFBa0IsRUFBQTs7QUUwWmhCO0VBQ0UsNkJBQTRCLEVBQzdCOztBQUVEO0VBQ0UsdURBQTJDO0VBQzNDLGlCQzVhMEMsRUQ2YTNDOztBQUVEO0VBQ0UsbURBQTZDO0VBQzdDLGlCQ2piMEMsRURrYjNDOztBQUVEO0VBQ0UsdURBQTRDO0VBQzVDLGlCQ3JiMEMsRURzYjNDOztBQUVEO0VBQ0UsNEVBQThDO0VBQzlDLGlCQzFiMEMsRUQyYjNDOztBQUVEO0VBQ0UsdURBQTJDO0VBQzNDLGlCQzliMEMsRUQrYjNDOztBQUVEO0VBQ0UsNEVBQTZDO0VBQzdDLGlCQ25jMEMsRURvYzNDOztBQUVEO0VBQ0UsdURBQTRDO0VBQzVDLGlCQ3ZjMEMsRUR3YzNDOztB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RTVGO0VqQnRYQSxpQmlCc1h5QztFakI1V3pDLDhDSWdEeUQ7RUovQ3pELDJDSStDeUQ7RUo5Q3pELHNDSThDeUQ7RUo3Q3pELG1DSTZDeUQsRWE0VDJDOztBQUNwRztFakJ2WEEsaUJpQnVYMEM7RWpCN1cxQywrQ0lnRHlEO0VKL0N6RCw0Q0krQ3lEO0VKOUN6RCx1Q0k4Q3lEO0VKN0N6RCxvQ0k2Q3lELEVhNlRpRDs7QUFDMUc7RWpCeFhBLGlCaUJ3WHdDO0VqQjlXeEMsMENNekNtQjtFTjBDbkIsdUNNMUNtQjtFTjJDbkIsa0NNM0NtQjtFTjRDbkIsK0JNNUNtQixFV3VaK0U7O0FBQ2xHO0VqQnpYQSxpQmlCeVh5QztFakIvV3pDLDJDTXpDbUI7RU4wQ25CLHdDTTFDbUI7RU4yQ25CLG1DTTNDbUI7RU40Q25CLGdDTTVDbUIsRVd3WnFGOztBQUV4Ryx3RkFBd0Y7QUFDeEY7RUF6TUEsb0JBbEtrRDtFQW1LbEQsbUJBQTBDO0VBR0MsZWZ4TXpCO0VlNk1sQixzQkExSzZELEVBMFdaOztBQUNqRDtFQTFLQSxvQkFsTWtEO0VBb01oRCxrQkFBcUM7RUFJSyxlZjFPMUI7RWUrT2xCLHNCQTVNNkQsRUEyV1Q7O0FBRXBELGlFQUFpRTtBQUNqRTtFQUNFLHlCQUF3QjtFQUN4QixzQkFBcUI7RUFDckIsaUJBQWdCO0VBalRwQiwwQmZ2R29CO0VleUdsQixvQkNwR3NCO0VEcUd0QixrQkNwR29CO0VEcUdwQixzQkN4R3NEO0VEMEd4RCx1RENwR2dEO1VEb0doRCwrQ0NwR2dEO0VEcUdoRCwyQkNoSGlDO0VEaUhqQyxlQUFjO0VBQ2QscUJDbkh5QjtFRG9IekIsc0JibEMyRDtFYW1DM0QsbUJBQWdFO0VBQ2hFLHFCQUEyQjtFQUMzQixpQkFBMEI7RUFDMUIsWUFBVztFakJrQlgsK0JpQmpCOEI7RWpCbUJ0Qix1QmlCbkJzQjtFQXFTeEIsdUVBMVZzQztFQThWdEMsK0RBOVZzQyxFQW1XekM7RUF6U0g7SUFDRSxvQkMxSHVEO0lEMkh2RCxzQkN6SDREO0lEMEg1RCxjQUFhLEVBQ2Q7RUFFRDtJQUNFLDBCZmpJa0I7SWVrSWxCLGdCakIrUTBCLEVpQjlRM0I7RUFHRDs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFHRSwwQmZ6SWtCO0llMElsQixnQmpCdVEwQixFaUJ0UTNCO0VBeVFDO0lqQmhZQSxtQk1oQ2UsRVc4YVo7O0FBR0g7Ozs7RWpCalpBLGlCaUJ1WmdDO0VqQjdZaEMsK0NJZ0R5RDtFSi9DekQsNENJK0N5RDtFSjlDekQsdUNJOEN5RDtFSjdDekQsb0NJNkN5RCxFYTZWdUM7O0FBTmhHO0VqQmpaQSxpQmlCd1ppQztFakI5WWpDLDhDSWdEeUQ7RUovQ3pELDJDSStDeUQ7RUo5Q3pELHNDSThDeUQ7RUo3Q3pELG1DSTZDeUQsRWE4Vm1DOztBQVA1Rjs7OztFakJqWkEsaUJpQjhaZ0M7RWpCcFpoQyw4Q0lnRHlEO0VKL0N6RCwyQ0krQ3lEO0VKOUN6RCxzQ0k4Q3lEO0VKN0N6RCxtQ0k2Q3lELEVhb1drQzs7QUFiM0Y7RWpCalpBLGlCaUIrWmtDO0VqQnJabEMsK0NJZ0R5RDtFSi9DekQsNENJK0N5RDtFSjlDekQsdUNJOEN5RDtFSjdDekQsb0NJNkN5RCxFYXFXeUM7O0FBZGxHOzs7O0VqQmpaQSxpQmlCcWFnQztFakIzWmhDLDJDTXpDbUI7RU4wQ25CLHdDTTFDbUI7RU4yQ25CLG1DTTNDbUI7RU40Q25CLGdDTTVDbUIsRVdvYzRFOztBQXBCL0Y7RWpCalpBLGlCaUJzYWlDO0VqQjVaakMsMENNekNtQjtFTjBDbkIsdUNNMUNtQjtFTjJDbkIsa0NNM0NtQjtFTjRDbkIsK0JNNUNtQixFV3Fjd0U7O0FBckIzRjs7OztFakJqWkEsaUJpQjRhZ0M7RWpCbGFoQywwQ016Q21CO0VOMENuQix1Q00xQ21CO0VOMkNuQixrQ00zQ21CO0VONENuQiwrQk01Q21CLEVXMmN1RTs7QUEzQjFGO0VqQmpaQSxpQmlCNmFrQztFakJuYWxDLDJDTXpDbUI7RU4wQ25CLHdDTTFDbUI7RU4yQ25CLG1DTTNDbUI7RU40Q25CLGdDTTVDbUIsRVc0YzhFOztBQUtqRztFQUNFLHlCQUF3QjtFQUN4QixzQkFBcUI7RUFDckIsaUJBQWdCLEVB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QmpEdEIsRXlCaURrRDtJQU9sRTtNQUNFLGVBQWM7TUFBRSwwQkFBK0IsRUFFaEQ7TUFEQztRQUFjLGlCQUFnQixFQUFJO0lBVXRDO01BS00sZXpCeEZRLEV5QjhGVDtNQVhMO1FBU1EsZUFoRTZFLEVBaUU5RTtFQVZQO0kzQm5EQSxtQk1oQ2UsRXFCbUdaOztBQ29DSCxvQkFBb0I7QUFDcEI7RUEzRUYsMEIxQmpEb0I7RTBCa0RwQixlQUFrQztFQUNsQywwQnhCMkIyRCxFd0JzRHhEO0VBL0VIO0lBQ0UsaUJBQWdCO0lBQ2hCLGVBQWMsRUFDZjtFQW9FQztJQTlERiwwQjFCM0RvQjtJMEI0RHBCLGU1QjBOc0I7STRCek50Qiw4RTlCeEV1RjtJOEJ5RXZGLHNCeEJhMkQ7SXdCWjNELG9COUJsRHlCO0k4Qm1EekIsK0J4QlcyRDtJd0JWM0QsbUJBOUR3QixFQXlIcUI7RUFIM0M7SUFqREYsMEI1QjJNc0I7STRCMU10QixlMUJ6RW9CO0kwQjBFcEIsOEU5QnJGdUY7SThCc0Z2RixzQnhCQTJEO0l3QkMzRCxvQjlCL0R5QjtJOEJnRXpCLCtCeEJGMkQ7SXdCRzNELG1CQWxFd0IsRUFpSHFCO0VBSjNDO0lBcENGLDBCMUJ6Rm9CO0kwQjBGcEIsa0MxQnpGb0I7STBCMEZwQixlNUJxTXNCO0k0QnBNdEIsc0J4QmIyRDtJd0JjM0Qsb0I5QjVFeUI7SThCNkV6QixpQkFoRTBCO0lBaUUxQixvQnhCaEIyRDtJd0JpQjNELG1CQXJFdUIsRUF1R2tDO0VBTHZEO0lBdEJGLDBCMUJ2R29CO0kwQndHcEIsa0MxQnZHb0I7STBCd0dwQixlMUJyR29CO0kwQnNHcEIsc0J4QjNCMkQ7SXdCNEIzRCxvQjlCMUZ5QjtJOEIyRnpCLG9CeEI3QjJEO0l3QjhCM0QsbUJBekV1QixFQStGNkI7RUFObEQ7SUFURiwwQjFCcEhvQjtJMEJxSHBCLGlDeEJyQ2dDO0l3QnNDaEMsbUJBM0VzQixFQXlGMEI7O0FDeEY5QyxrQkFBa0I7QUFDbEI7RUF2QkYsMEI3QmlRc0I7RTZCaFF0Qix3QkFwQjhEO0VBcUI5RCxtQnpCdUQyRDtFeUJ0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ekc3QztFQW5FRixvQmpDbERvQjtFaUNtRHBCLDBCakNqRG9CO0VpQ2tEcEIsMEIvQjJCMkQ7RStCMUIzRCxtQkMzQmlCLEVENkZkO0VBaEVIO0lBQ0Usd0JDMUMwQjtJRDJDMUIsZWpDakVjO0lpQ21FWixzQi9Cb0J1RDtJK0JuQnZELG9CQzNDNEIsRUQ2Qy9CO0VBRUQ7SUFDRSxvQmpDaEVrQixFaUMyRW5CO0lBUkc7O01BRUUsZWpDOUVVO01pQytFVixzQi9CUXFEO00rQlByRCxrQkNyRXFCO01Ec0VyQiwwQy9CTXFELEUrQkx0RDtFQUlMO0lBQ0Usb0JqQzlFa0IsRWlDeUZuQjtJQVJHOztNQUVFLGVqQzVGVTtNaUM2RlYsc0IvQk5xRDtNK0JPckQsa0JDbkZxQjtNRG9GckIsMEMvQlJxRCxFK0JTdEQ7RUFLSDs7SUFFRSxlakN2R1k7SWlDd0daLHNCL0JqQnVEO0krQmtCdkQsMkIvQmxCdUQ7SStCbUJ2RCxpQm5Dc09nQixFbUNyT2pCO0VBRUQ7SUFFc0Isb0JqQ3RHSixFaUNzR3NDO0VBRzFEOzs7Ozs7SUFLUSxvQkNwRmdCO0lEb0ZTLGtCL0JoQzBCLEUrQmdDUzs7QUUvRmxFO0VBRUUsNEJBQTJCO0VBQzNCLGVBQWMsRUFpRGY7RXJDNkpIO0lBQW9CLGFBQVk7SUFBRSxlQUFjLEVBQUk7RUFDcEQ7SUFBVSxZQUFXLEVBQUk7RXFDbE52Qjs7SUFPSSxZckNpVGM7SXFDaFRkLGlCQUFnQjtJQUNoQiw0QkFBMkI7SUFDM0IsbUJBQWtCLEVBbUJuQjtJQTdCSDs7TUFhTSxlQUFjO01BQ2QsMEJyQzJQYztNcUMxUGQsZXJDc1FjO01xQ3JRZCw4RXZDdkMrRTtNdUN3Qy9FLHNCakM4Q21EO01pQzdDbkQsK0JBQThELEVBSy9EO01BdkJMOztRQXFCUSwwQkFsQzRFLEVBbUM3RTtJQXRCUDs7TUEwQk0sMEJuQzFDWTtNbUMyQ1osZXJDMFBjLEVxQ3pQZjtFQTVCTDs7SXJDZUEsdUNNMUNlO0lOMkNmLG9DTTNDZTtJTjRDZiwrQk01Q2U7SU42Q2YsNEJNN0NlLEUrQjZEbUQ7RUFsQ2xFOztJckNlQSx3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Qix5QkExU2dDO01BMlNoQyxnQ0EzU2dDO01BNFNoQyxxQkE3U3VCO01BOFN2QixZQUFXLEVBY1o7TUFqREw7UUFzQ1Esc0JwQzdQaUQ7UW9DOFBqRCx5QkFqVDhCO1FBa1Q5QiwwQkFsVDhCO1E5QnVIdEMsMEJSOUpjO1FRK0pkLHNCQTFIZ0Y7UUErSGhGLGVSekprQixFc0NnVlg7UTlCM0xQO1VBQ1UsMEJBNUhzRSxFQTRIdkM7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO004QndJRDtROUJuSkEsMEJSMUkwQjtRUTJJMUIsc0JBUndIO1FBYXhILGVSckprQixFc0M4VXdEO1E5QjdMMUU7VUFDVSwwQkFkc0csRUFjdkU7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO004QndJRDtROUJuSkEsMEJIOUptQjtRRytKbkIsc0JBUndIO1FBYXhILGVSekprQixFc0NtVm9EO1E5QjlMdEU7VUFDVSwwQkFkc0csRUFjdkU7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO004QndJRDtROUJuSkEsMEJIL0ppQjtRR2dLakIsc0JBUndIO1FBYXhILGVSekprQixFc0NvVmdEO1E5Qi9MbEU7VUFDVSwwQkFkc0csRUFjdkU7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO004QndJRDtROUJuSkEsMEJIN0ptQjtRRzhKbkIsc0JBUndIO1FBYXhILGVSekprQixFc0NxVm9EO1E5QmhNdEU7VUFDVSwwQkFkc0csRUFjdkU7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO004QndJRDtROUJuSkEsMEJINUpnQjtRRzZKaEIsc0JBUndIO1FBYXhILGVSekprQixFc0NzVjhDO1E5QmpNaEU7VUFDVSwwQkFkc0csRUFjdkU7UUFEekM7VUFRRSxlUjdKZ0IsRVE4SmpCO0k4QndJRDtNQW9ETSxzQnBDM1FtRDtNb0M0UW5ELHlCQS9UZ0M7TUFnVWhDLDBCQWhVZ0M7TTlCdUh0QywwQlI5SmM7TVErSmQsc0JBMUhnRjtNQStIaEYsZVJ6SmtCLEVzQ29XYjtNOUIvTUw7UUFDVSwwQkE1SHNFLEVBNEh2QztNQUR6QztRQVFFLGVSN0pnQixF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Ozs7VUErSlksNENBQWdELEVBS2pEO1VBcEtYOzs7O1lBa0tjLG1CQUFtQyxFQUNwQztRQW5LYjs7Ozs7Ozs7Ozs7OztVQTZLVSxlQUFjLEVBQ2YsRUFBQTs7QUFLSDtFQW5MTjs7OztJQVhJLDBCQUF5QixFQXVOMUI7SUE1TUg7Ozs7TUFUTSxzQkFBcUI7TUFDckIsbUI5RTFCdUQsRThFOEJ4RDtNQUhDOzs7O1FBQ0UsY0FBYSxFQUNkLEVBQUE7RUE0TDRCO0lBQzdCO01BeExOOzs7O1FBWEksMEJBQXlCLEVBdU4xQjtRQTVNSDs7OztVQVRNLHNCQUFxQjtVQUNyQixtQjlFMUJ1RCxFOEU4QnhEO1VBSEM7Ozs7WUFDRSxjQUFhLEVBQ2QsRUFBQSxFQUFBO0VBa01IO0lBN0xKOzs7O01BOExNLDBCQUF5QixFQWM1QjtNQTVNSDs7OztRQWlNUSxtQjlFbk9xRCxFOEU0T3REO1FBMU1QOzs7O1VBb01VLGNBQWEsRUFDZDtRQWxTSDs7OztVQXFTSSxjQUFhLEVBQ2QsRUFBQSIsImZpbGUiOiJzY3JlZW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bytTbGFiOjQwMCw3MDAsMzAwLDEwMHxSb2JvdG86NDAwLDEwMCwxMDBpdGFsaWMsMzAwLDMwMGl0YWxpYyw0MDBpdGFsaWMsNTAwLDUwMGl0YWxpYyw3MDAsNzAwaXRhbGljLDkwMCw5MDBpdGFsaWMpO1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVBpbnlvbitTY3JpcHR8VGlub3M6NDAwLDQwMGl0YWxpYyw3MDAsNzAwaXRhbGljKTtcbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PeHlnZW4rTW9ubyk7XG4uZWxlbWVudC1pbnZpc2libGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uby1zZWxlY3Qge1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdveGJvdyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvZm9udGVsbG8tb3hib3cvZm9udC9veGJvdy5lb3Q/XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvLW94Ym93L2ZvbnQvb3hib3cuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvZm9udGVsbG8tb3hib3cvZm9udC9veGJvdy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvLW94Ym93L2ZvbnQvb3hib3cudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9mb250ZWxsby1veGJvdy9mb250L294Ym93LnN2ZyNveGJvd1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxubWV0YS5mb3VuZGF0aW9uLXZlcnNpb24ge1xuICBmb250LWZhbWlseTogXCIve3tWRVJTSU9OfX0vXCI7IH1cblxubWV0YS5mb3VuZGF0aW9uLW1xLXNtYWxsIHtcbiAgZm9udC1mYW1pbHk6IFwiL29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjMzLjgxMjVlbSkvXCI7XG4gIHdpZHRoOiAzMy44MTI1ZW07IH1cblxubWV0YS5mb3VuZGF0aW9uLW1xLXNtYWxsLW9ubHkge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwZW0pL1wiO1xuICB3aWR0aDogMzMuODEyNWVtOyB9XG5cbm1ldGEuZm91bmRhdGlvbi1tcS1tZWRpdW0ge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NTAuMDYyNWVtKS9cIjtcbiAgd2lkdGg6IDUwLjA2MjVlbTsgfVxuXG5tZXRhLmZvdW5kYXRpb24tbXEtbWVkaXVtLW9ubHkge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NTAuMDYyNWVtKSBhbmQgKG1heC13aWR0aDo2NGVtKS9cIjtcbiAgd2lkdGg6IDUwLjA2MjVlbTsgfVxuXG5tZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Uge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjQuMDYyNWVtKS9cIjtcbiAgd2lkdGg6IDY0LjA2MjVlbTsgfVxuXG5tZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Utb25seSB7XG4gIGZvbnQtZmFtaWx5OiBcIi9vbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NC4wNjI1ZW0pIGFuZCAobWF4LXdpZHRoOjkwZW0pL1wiO1xuICB3aWR0aDogNjQuMDYyNWVtOyB9XG5cbm1ldGEuZm91bmRhdGlvbi1tcS14bGFyZ2Uge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTAuMDYyNWVtKS9cIjtcbiAgd2lkdGg6IDkwLjA2MjVlbTsgfVxuXG5tZXRhLmZvdW5kYXRpb24tbXEteGxhcmdlLW9ubHkge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTAuMDYyNWVtKSBhbmQgKG1heC13aWR0aDoxMjBlbSkvXCI7XG4gIHdpZHRoOiA5MC4wNjI1ZW07IH1cblxubWV0YS5mb3VuZGF0aW9uLW1xLXh4bGFyZ2Uge1xuICBmb250LWZhbWlseTogXCIvb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwLjA2MjVlbSkvXCI7XG4gIHdpZHRoOiAxMjAuMDYyNWVtOyB9XG5cbm1ldGEuZm91bmRhdGlvbi1kYXRhLWF0dHJpYnV0ZS1uYW1lc3BhY2Uge1xuICBmb250LWZhbWlseTogZmFsc2U7IH1cblxuaHRtbCwgYm9keSB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCwgYm9keSB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGN1cnNvcjogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5hOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmltZyB7XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxuI21hcF9jYW52YXMgaW1nLFxuI21hcF9jYW52YXMgZW1iZWQsXG4jbWFwX2NhbnZhcyBvYmplY3QsXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5jbGVhcmZpeDpiZWZvcmUsICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bDpiZWZvcmUsIGJvZHkucGFnZS1ub2RlLXR5cGUtcGFnZSBocjpiZWZvcmUsIC5wYXJhZ3JhcGggLnZpZXctZnJvbnQtcGFnZSAudmlldy1jb250ZW50OmJlZm9yZSwgLnZpZXctZnJvbnQtcGFnZTpiZWZvcmUsIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX3RpdGxlOmJlZm9yZSwgLnZpZXctYWJvdXQgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6YmVmb3JlLCAudmlldy10b3BpY3M6YmVmb3JlLCAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50OmJlZm9yZSwgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0czpiZWZvcmUsIC5ncm91cDpiZWZvcmUsIC5jbGVhcmZpeDphZnRlciwgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsOmFmdGVyLCBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgaHI6YWZ0ZXIsIC5wYXJhZ3JhcGggLnZpZXctZnJvbnQtcGFnZSAudmlldy1jb250ZW50OmFmdGVyLCAudmlldy1mcm9udC1wYWdlOmFmdGVyLCAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX190aXRsZTphZnRlciwgLnZpZXctYWJvdXQgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6YWZ0ZXIsIC52aWV3LXRvcGljczphZnRlciwgLnZpZXctcmVjZW50LWJsb2dzID4gLnZpZXctY29udGVudDphZnRlciwgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0czphZnRlciwgLmdyb3VwOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5jbGVhcmZpeDphZnRlciwgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsOmFmdGVyLCBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgaHI6YWZ0ZXIsIC5wYXJhZ3JhcGggLnZpZXctZnJvbnQtcGFnZSAudmlldy1jb250ZW50OmFmdGVyLCAudmlldy1mcm9udC1wYWdlOmFmdGVyLCAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX190aXRsZTphZnRlciwgLnZpZXctYWJvdXQgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6YWZ0ZXIsIC52aWV3LXRvcGljczphZnRlciwgLnZpZXctcmVjZW50LWJsb2dzID4gLnZpZXctY29udGVudDphZnRlciwgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0czphZnRlciwgLmdyb3VwOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmFudGlhbGlhc2VkIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4OyB9XG5cbnNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYWNjb3JkaW9uOmJlZm9yZSwgLmFjY29yZGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmFjY29yZGlvbjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLW5hdmlnYXRpb24sIC5hY2NvcmRpb24gZGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5hY2NvcmRpb24gLmFjY29yZGlvbi1uYXZpZ2F0aW9uLmFjdGl2ZSA+IGEsIC5hY2NvcmRpb24gZGQuYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZThlOGU4O1xuICAgICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgICAuYWNjb3JkaW9uIC5hY2NvcmRpb24tbmF2aWdhdGlvbiA+IGEsIC5hY2NvcmRpb24gZGQgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICNFRkVGRUY7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAwLjg4ODg5cmVtO1xuICAgICAgcGFkZGluZzogMC44ODg4OXJlbTsgfVxuICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLW5hdmlnYXRpb24gPiBhOmhvdmVyLCAuYWNjb3JkaW9uIGRkID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlM2UzZTM7IH1cbiAgICAuYWNjb3JkaW9uIC5hY2NvcmRpb24tbmF2aWdhdGlvbiA+IC5jb250ZW50LCAuYWNjb3JkaW9uIGRkID4gLmNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW07IH1cbiAgICAgIC5hY2NvcmRpb24gLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gLmNvbnRlbnQuYWN0aXZlLCAuYWNjb3JkaW9uIGRkID4gLmNvbnRlbnQuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFsZXJ0LWJveCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjcyMjIycmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiAxLjExMTExcmVtO1xuICBwYWRkaW5nOiAxLjVyZW0gMi4wNTU1NnJlbSAxLjVyZW0gMS41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDk4REI7XG4gIGJvcmRlci1jb2xvcjogIzIzODVjNjtcbiAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLmFsZXJ0LWJveCAuY2xvc2Uge1xuICAgIHJpZ2h0OiAwLjIyMjIycmVtO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgZm9udC1zaXplOiAxLjIyMjIycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICBtYXJnaW4tdG9wOiAtMC42MTExMXJlbTtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgcGFkZGluZzogMCA2cHggNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTsgfVxuICAgIC5hbGVydC1ib3ggLmNsb3NlOmhvdmVyLCAuYWxlcnQtYm94IC5jbG9zZTpmb2N1cyB7XG4gICAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLmFsZXJ0LWJveC5yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAuYWxlcnQtYm94LnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cbiAgLmFsZXJ0LWJveC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDNBQzZBO1xuICAgIGJvcmRlci1jb2xvcjogIzNhOTQ1YjtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAuYWxlcnQtYm94LmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA0MTI0O1xuICAgIGJvcmRlci1jb2xvcjogI2RlMmQwZjtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAuYWxlcnQtYm94LnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaG90cGluaztcbiAgICBib3JkZXItY29sb3I6ICNmZjM3OWI7XG4gICAgY29sb3I6ICM3YTAwM2Q7IH1cbiAgLmFsZXJ0LWJveC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA4YTI0O1xuICAgIGJvcmRlci1jb2xvcjogI2RlNzcwZjtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAuYWxlcnQtYm94LmluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1QkIxRDM7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2FhMWNhO1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5hbGVydC1ib3guYWxlcnQtY2xvc2Uge1xuICAgIG9wYWNpdHk6IDA7IH1cblxuW2NsYXNzKj1cImJsb2NrLWdyaWQtXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAtMC41NTU1NnJlbTsgfVxuICBbY2xhc3MqPVwiYmxvY2stZ3JpZC1cIl06YmVmb3JlLCBbY2xhc3MqPVwiYmxvY2stZ3JpZC1cIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIFtjbGFzcyo9XCJibG9jay1ncmlkLVwiXTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgW2NsYXNzKj1cImJsb2NrLWdyaWQtXCJdID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDAuNTU1NTZyZW0gMS4xMTExMXJlbTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjgxMjVlbSkge1xuICAuc21hbGwtYmxvY2stZ3JpZC0xID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC0xID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtMSA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC1ibG9jay1ncmlkLTIgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtMiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTIgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtYmxvY2stZ3JpZC0zID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTMgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC0zID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLWJsb2NrLWdyaWQtNCA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC00ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtNCA+IGxpOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC1ibG9jay1ncmlkLTUgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtNSA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTUgPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtYmxvY2stZ3JpZC02ID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTYgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC02ID4gbGk6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLWJsb2NrLWdyaWQtNyA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC03ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtNyA+IGxpOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC1ibG9jay1ncmlkLTggPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC04ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtOCA+IGxpOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC1ibG9jay1ncmlkLTkgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTEuMTExMTElOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtOSA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTkgPiBsaTpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtYmxvY2stZ3JpZC0xMCA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxMCU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC0xMCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTEwID4gbGk6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC1ibG9jay1ncmlkLTExID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDkuMDkwOTElOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtMTEgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuc21hbGwtYmxvY2stZ3JpZC0xMSA+IGxpOm50aC1vZi10eXBlKDExbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtYmxvY2stZ3JpZC0xMiA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1ibG9jay1ncmlkLTEyID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnNtYWxsLWJsb2NrLWdyaWQtMTIgPiBsaTpudGgtb2YtdHlwZSgxMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAubWVkaXVtLWJsb2NrLWdyaWQtMSA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTEgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtMSA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tYmxvY2stZ3JpZC0yID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC0yID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTIgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLWJsb2NrLWdyaWQtMyA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtMyA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC0zID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS1ibG9jay1ncmlkLTQgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTQgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtNCA+IGxpOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tYmxvY2stZ3JpZC01ID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC01ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTUgPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLWJsb2NrLWdyaWQtNiA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtNiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC02ID4gbGk6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS1ibG9jay1ncmlkLTcgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTcgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtNyA+IGxpOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tYmxvY2stZ3JpZC04ID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTggPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtOCA+IGxpOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tYmxvY2stZ3JpZC05ID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDExLjExMTExJTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC05ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTkgPiBsaTpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLWJsb2NrLWdyaWQtMTAgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTAlOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTEwID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS1ibG9jay1ncmlkLTEwID4gbGk6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tYmxvY2stZ3JpZC0xMSA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiA5LjA5MDkxJTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC0xMSA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tYmxvY2stZ3JpZC0xMSA+IGxpOm50aC1vZi10eXBlKDExbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLWJsb2NrLWdyaWQtMTIgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtMTIgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLWJsb2NrLWdyaWQtMTIgPiBsaTpudGgtb2YtdHlwZSgxMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAubGFyZ2UtYmxvY2stZ3JpZC0xID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC0xID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtMSA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS1ibG9jay1ncmlkLTIgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtMiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTIgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtYmxvY2stZ3JpZC0zID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTMgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC0zID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxhcmdlLWJsb2NrLWdyaWQtNCA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC00ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtNCA+IGxpOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS1ibG9jay1ncmlkLTUgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtNSA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTUgPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtYmxvY2stZ3JpZC02ID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTYgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC02ID4gbGk6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxhcmdlLWJsb2NrLWdyaWQtNyA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC03ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtNyA+IGxpOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS1ibG9jay1ncmlkLTggPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC04ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtOCA+IGxpOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS1ibG9jay1ncmlkLTkgPiBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTEuMTExMTElOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtOSA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTkgPiBsaTpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtYmxvY2stZ3JpZC0xMCA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxMCU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC0xMCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTEwID4gbGk6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS1ibG9jay1ncmlkLTExID4gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgd2lkdGg6IDkuMDkwOTElOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtMTEgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtYmxvY2stZ3JpZC0xMSA+IGxpOm50aC1vZi10eXBlKDExbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtYmxvY2stZ3JpZC0xMiA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5sYXJnZS1ibG9jay1ncmlkLTEyID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLWJsb2NrLWdyaWQtMTIgPiBsaTpudGgtb2YtdHlwZSgxMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4uYnJlYWRjcnVtYnMge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43Nzc3OHJlbSAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmJjZGQ7XG4gIGJvcmRlci1jb2xvcjogI2ZmOGZjNztcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gIC5icmVhZGNydW1icyA+ICoge1xuICAgIGNvbG9yOiAjMzQ5OERCO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC42MTExMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMC42MTExMXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1icyA+ICo6aG92ZXIgYSwgLmJyZWFkY3J1bWJzID4gKjpmb2N1cyBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmJyZWFkY3J1bWJzID4gKiBhIHtcbiAgICAgIGNvbG9yOiAjMzQ5OERCOyB9XG4gICAgLmJyZWFkY3J1bWJzID4gKi5jdXJyZW50IHtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gICAgICAuYnJlYWRjcnVtYnMgPiAqLmN1cnJlbnQgYSB7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICAgIC5icmVhZGNydW1icyA+ICouY3VycmVudDpob3ZlciwgLmJyZWFkY3J1bWJzID4gKi5jdXJyZW50OmhvdmVyIGEsIC5icmVhZGNydW1icyA+ICouY3VycmVudDpmb2N1cywgLmJyZWFkY3J1bWJzID4gKi5jdXJyZW50OmZvY3VzIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYnJlYWRjcnVtYnMgPiAqLnVuYXZhaWxhYmxlIHtcbiAgICAgIGNvbG9yOiAjOTk5OTk5OyB9XG4gICAgICAuYnJlYWRjcnVtYnMgPiAqLnVuYXZhaWxhYmxlIGEge1xuICAgICAgICBjb2xvcjogIzk5OTk5OTsgfVxuICAgICAgLmJyZWFkY3J1bWJzID4gKi51bmF2YWlsYWJsZTpob3ZlcixcbiAgICAgIC5icmVhZGNydW1icyA+ICoudW5hdmFpbGFibGU6aG92ZXIgYSwgLmJyZWFkY3J1bWJzID4gKi51bmF2YWlsYWJsZTpmb2N1cyxcbiAgICAgIC5icmVhZGNydW1icyA+ICoudW5hdmFpbGFibGUgYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYnJlYWRjcnVtYnMgPiAqOmJlZm9yZSB7XG4gICAgICBjb2xvcjogI0FBQUFBQTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgbWFyZ2luOiAwIDAuNjY2NjdyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDsgfVxuICAgIC5icmVhZGNydW1icyA+ICo6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbi8qIEFjY2Vzc2liaWxpdHkgLSBoaWRlcyB0aGUgZm9yd2FyZCBzbGFzaCAqL1xuW2FyaWEtbGFiZWw9XCJicmVhZGNydW1ic1wiXSBbYXJpYS1oaWRkZW49XCJ0cnVlXCJdOmFmdGVyIHtcbiAgY29udGVudDogXCIvXCI7IH1cblxuYnV0dG9uLCAuYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC44ODg4OXJlbSAxLjc3Nzc4cmVtIDAuOTQ0NDRyZW0gMS43Nzc3OHJlbTtcbiAgZm9udC1zaXplOiAwLjg4ODg5cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5OERCO1xuICBib3JkZXItY29sb3I6ICMyMTdiYjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2Utb3V0OyB9XG4gIGJ1dHRvbjpob3ZlciwgYnV0dG9uOmZvY3VzLCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE3YmI4OyB9XG4gIGJ1dHRvbjpob3ZlciwgYnV0dG9uOmZvY3VzLCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICBidXR0b24uc2Vjb25kYXJ5LCAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaG90cGluaztcbiAgICBib3JkZXItY29sb3I6ICNmZjIxOTA7XG4gICAgY29sb3I6ICMzMzMzMzM7IH1cbiAgICBidXR0b24uc2Vjb25kYXJ5OmhvdmVyLCBidXR0b24uc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMjE5MDsgfVxuICAgIGJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIGJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICBidXR0b24uc3VjY2VzcywgLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDNBQzZBO1xuICAgIGJvcmRlci1jb2xvcjogIzM2OGE1NTtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIGJ1dHRvbi5zdWNjZXNzOmhvdmVyLCBidXR0b24uc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM2OGE1NTsgfVxuICAgIGJ1dHRvbi5zdWNjZXNzOmhvdmVyLCBidXR0b24uc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA0MTI0O1xuICAgIGJvcmRlci1jb2xvcjogI2NmMmEwZTtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIGJ1dHRvbi5hbGVydDpob3ZlciwgYnV0dG9uLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZjJhMGU7IH1cbiAgICBidXR0b24uYWxlcnQ6aG92ZXIsIGJ1dHRvbi5hbGVydDpmb2N1cywgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICBidXR0b24ud2FybmluZywgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA4YTI0O1xuICAgIGJvcmRlci1jb2xvcjogI2NmNmUwZTtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIGJ1dHRvbi53YXJuaW5nOmhvdmVyLCBidXR0b24ud2FybmluZzpmb2N1cywgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmNmUwZTsgfVxuICAgIGJ1dHRvbi53YXJuaW5nOmhvdmVyLCBidXR0b24ud2FybmluZzpmb2N1cywgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgYnV0dG9uLmluZm8sIC5idXR0b24uaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVCQjFEMztcbiAgICBib3JkZXItY29sb3I6ICMzMzk3YmU7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICBidXR0b24uaW5mbzpob3ZlciwgYnV0dG9uLmluZm86Zm9jdXMsIC5idXR0b24uaW5mbzpob3ZlciwgLmJ1dHRvbi5pbmZvOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzk3YmU7IH1cbiAgICBidXR0b24uaW5mbzpob3ZlciwgYnV0dG9uLmluZm86Zm9jdXMsIC5idXR0b24uaW5mbzpob3ZlciwgLmJ1dHRvbi5pbmZvOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIGJ1dHRvbi5sYXJnZSwgLmJ1dHRvbi5sYXJnZSB7XG4gICAgcGFkZGluZzogMXJlbSAycmVtIDEuMDU1NTZyZW0gMnJlbTtcbiAgICBmb250LXNpemU6IDEuMTExMTFyZW07IH1cbiAgYnV0dG9uLnNtYWxsLCAuYnV0dG9uLnNtYWxsIHtcbiAgICBwYWRkaW5nOiAwLjc3Nzc4cmVtIDEuNTU1NTZyZW0gMC44MzMzM3JlbSAxLjU1NTU2cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43MjIyMnJlbTsgfVxuICBidXR0b24udGlueSwgLmJ1dHRvbi50aW55IHtcbiAgICBwYWRkaW5nOiAwLjU1NTU2cmVtIDEuMTExMTFyZW0gMC42MTExMXJlbSAxLjExMTExcmVtO1xuICAgIGZvbnQtc2l6ZTogMC42MTExMXJlbTsgfVxuICBidXR0b24uZXhwYW5kLCAuYnV0dG9uLmV4cGFuZCB7XG4gICAgcGFkZGluZzogMC44ODg4OXJlbSAxLjc3Nzc4cmVtIDAuOTQ0NDRyZW0gMS43Nzc3OHJlbTtcbiAgICBmb250LXNpemU6IDAuODg4ODlyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuOTQ0NDRyZW07XG4gICAgcGFkZGluZy10b3A6IDAuODg4ODlyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjg4ODg5cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuODg4ODlyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgYnV0dG9uLmxlZnQtYWxpZ24sIC5idXR0b24ubGVmdC1hbGlnbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LWluZGVudDogMC42NjY2N3JlbTsgfVxuICBidXR0b24ucmlnaHQtYWxpZ24sIC5idXR0b24ucmlnaHQtYWxpZ24ge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjY2NjdyZW07IH1cbiAgYnV0dG9uLnJhZGl1cywgLmJ1dHRvbi5yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07IH1cbiAgYnV0dG9uLnJvdW5kLCAuYnV0dG9uLnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cbiAgYnV0dG9uLmRpc2FibGVkLCBidXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM0OThEQjtcbiAgICBib3JkZXItY29sb3I6ICMyMTdiYjg7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgb3BhY2l0eTogMC43OyB9XG4gICAgYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBidXR0b24uZGlzYWJsZWQ6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIGJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE3YmI4OyB9XG4gICAgYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBidXR0b24uZGlzYWJsZWQ6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIGJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIGJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgYnV0dG9uLmRpc2FibGVkOmZvY3VzLCBidXR0b25bZGlzYWJsZWRdOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM0OThEQjsgfVxuICAgIGJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIGJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhvdHBpbms7XG4gICAgICBib3JkZXItY29sb3I6ICNmZjIxOTA7XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAwLjc7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjIxOTA7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICBidXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCBidXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCBidXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBob3RwaW5rOyB9XG4gICAgYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIGJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0M0FDNkE7XG4gICAgICBib3JkZXItY29sb3I6ICMzNjhhNTU7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAwLjc7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCBidXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM2OGE1NTsgfVxuICAgICAgYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCBidXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIGJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCBidXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIGJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDNBQzZBOyB9XG4gICAgYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCBidXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA0MTI0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjY2YyYTBlO1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogMC43OyB9XG4gICAgICBidXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmMmEwZTsgfVxuICAgICAgYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCBidXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIGJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICBidXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIGJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cywgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwNDEyNDsgfVxuICAgIGJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCBidXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA4YTI0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjY2Y2ZTBlO1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogMC43OyB9XG4gICAgICBidXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZjZlMGU7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCBidXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCBidXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwOGEyNDsgfVxuICAgIGJ1dHRvbi5kaXNhYmxlZC5pbmZvLCBidXR0b25bZGlzYWJsZWRdLmluZm8sIC5idXR0b24uZGlzYWJsZWQuaW5mbywgLmJ1dHRvbltkaXNhYmxlZF0uaW5mbyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUJCMUQzO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMzM5N2JlO1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogMC43OyB9XG4gICAgICBidXR0b24uZGlzYWJsZWQuaW5mbzpob3ZlciwgYnV0dG9uLmRpc2FibGVkLmluZm86Zm9jdXMsIGJ1dHRvbltkaXNhYmxlZF0uaW5mbzpob3ZlciwgYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmZvY3VzLCAuYnV0dG9uLmRpc2FibGVkLmluZm86aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuaW5mbzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uaW5mbzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uaW5mbzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzk3YmU7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC5pbmZvOmhvdmVyLCBidXR0b24uZGlzYWJsZWQuaW5mbzpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLmluZm86Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQuaW5mbzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5pbmZvOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIGJ1dHRvbi5kaXNhYmxlZC5pbmZvOmhvdmVyLCBidXR0b24uZGlzYWJsZWQuaW5mbzpmb2N1cywgYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmhvdmVyLCBidXR0b25bZGlzYWJsZWRdLmluZm86Zm9jdXMsIC5idXR0b24uZGlzYWJsZWQuaW5mbzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5pbmZvOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5pbmZvOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVCQjFEMzsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBsZWZ0OiAwOyB9XG4gIC5idXR0b24tZ3JvdXA6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuYnV0dG9uLWdyb3VwOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwLmV2ZW4tMiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAtMnB4O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tMiBsaSA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTIgbGkgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tMiBsaTpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi0yIGxpOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tMiBsaSBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi0yIGxpIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmJ1dHRvbi1ncm91cC5ldmVuLTMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLTJweDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTMgbGkgPiBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi0zIGxpIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTMgbGk6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tMyBsaTpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTMgbGkgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tMyBsaSAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5idXR0b24tZ3JvdXAuZXZlbi00IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIC0ycHg7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi00IGxpID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tNCBsaSAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi00IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTQgbGk6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi00IGxpIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTQgbGkgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuYnV0dG9uLWdyb3VwLmV2ZW4tNSBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAtMnB4O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tNSBsaSA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTUgbGkgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tNSBsaTpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi01IGxpOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV2ZW4tNSBsaSBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi01IGxpIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmJ1dHRvbi1ncm91cC5ldmVuLTYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLTJweDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTYgbGkgPiBidXR0b24sIC5idXR0b24tZ3JvdXAuZXZlbi02IGxpIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTYgbGk6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tNiBsaTpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5ldmVuLTYgbGkgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tNiBsaSAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5idXR0b24tZ3JvdXAuZXZlbi03IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIC0ycHg7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi03IGxpID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tNyBsaSAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi03IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTcgbGk6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi03IGxpIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTcgbGkgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuYnV0dG9uLWdyb3VwLmV2ZW4tOCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAtMnB4O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi04IGxpID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV2ZW4tOCBsaSAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi04IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTggbGk6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXZlbi04IGxpIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ldmVuLTggbGkgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuYnV0dG9uLWdyb3VwID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLTJweDsgfVxuICAgIC5idXR0b24tZ3JvdXAgPiBsaSA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cCA+IGxpIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgLmJ1dHRvbi1ncm91cCA+IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cCA+IGxpOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFjayA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrID4gbGkgPiBidXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2sgPiBsaSAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2sgPiBsaTpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2sgPiBsaTpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFjayA+IGxpID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrID4gbGkgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrID4gbGkgPiBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrID4gbGk6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrID4gbGk6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgLTJweDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGkgPiBidXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGkgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrLWZvci1zbWFsbCA+IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFjay1mb3Itc21hbGwgPiBsaTpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrLWZvci1zbWFsbCA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmJ1dHRvbi1ncm91cC5zdGFjay1mb3Itc21hbGwgPiBsaSA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFjay1mb3Itc21hbGwgPiBsaSAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGk6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrLWZvci1zbWFsbCA+IGxpOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGkgPiBidXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2stZm9yLXNtYWxsID4gbGkgLmJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrLWZvci1zbWFsbCA+IGxpID4gYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrLWZvci1zbWFsbCA+IGxpOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFjay1mb3Itc21hbGwgPiBsaTpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAwOyB9IH1cbiAgLmJ1dHRvbi1ncm91cC5yYWRpdXMgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIC0ycHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cyA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMgPiAqLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKiA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMgPiAqID4gYnV0dG9uLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKiA+IC5idXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpmaXJzdC1jaGlsZCxcbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cyA+ICo6Zmlyc3QtY2hpbGQgPiBhLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpmaXJzdC1jaGlsZCA+IGJ1dHRvbixcbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cyA+ICo6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMgPiAqOmxhc3QtY2hpbGQsXG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMgPiAqOmxhc3QtY2hpbGQgPiBhLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzID4gKjpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICogLmJ1dHRvbiB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICogPiBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKiA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqID4gYnV0dG9uLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKiA+IC5idXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpmaXJzdC1jaGlsZCxcbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgPiBhLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpmaXJzdC1jaGlsZCA+IGJ1dHRvbixcbiAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtdG9wLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgLXdlYmtpdC10b3AtcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqOmxhc3QtY2hpbGQsXG4gICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2sgPiAqOmxhc3QtY2hpbGQgPiBhLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrID4gKjpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWJvdHRvbS1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIC13ZWJraXQtYm90dG9tLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIC0ycHg7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICosXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqID4gYSxcbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqID4gLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICo6Zmlyc3QtY2hpbGQsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkID4gYSxcbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICo6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmxhc3QtY2hpbGQsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmxhc3QtY2hpbGQgPiBhLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICoge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICogLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqID4gYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICo6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKiA+IGEsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqID4gYnV0dG9uLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKiA+IC5idXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCA+IGEsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJhZGl1cy5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkID4gYnV0dG9uLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgICAtd2Via2l0LXRvcC1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgICAgLXdlYmtpdC10b3AtcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yYWRpdXMuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkID4gYSxcbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICo6bGFzdC1jaGlsZCA+IGJ1dHRvbixcbiAgICAgIC5idXR0b24tZ3JvdXAucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICo6bGFzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgICAtd2Via2l0LWJvdHRvbS1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgICAgICAgLXdlYmtpdC1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfSB9XG4gIC5idXR0b24tZ3JvdXAucm91bmQgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIC0ycHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKiA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICogLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKjpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAucm91bmQgPiAqOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKixcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKiA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICogPiBidXR0b24sXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICogPiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKjpmaXJzdC1jaGlsZCxcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKjpmaXJzdC1jaGlsZCA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICo6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICo6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMDAwcHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMDAwcHg7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMDAwcHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kID4gKjpsYXN0LWNoaWxkLFxuICAgIC5idXR0b24tZ3JvdXAucm91bmQgPiAqOmxhc3QtY2hpbGQgPiBhLFxuICAgIC5idXR0b24tZ3JvdXAucm91bmQgPiAqOmxhc3QtY2hpbGQgPiBidXR0b24sXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZCA+ICo6bGFzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwMDBweDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7IH1cbiAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2sgPiAqID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2sgPiAqOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2sgPiAqID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2sgPiAqID4gYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci10b3A6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKixcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKiA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICogPiBidXR0b24sXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICogPiAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKjpmaXJzdC1jaGlsZCxcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKjpmaXJzdC1jaGlsZCA+IGEsXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICo6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtdG9wLWxlZnQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgLXdlYmtpdC10b3AtcmlnaHQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC44ODg4OXJlbTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjg4ODg5cmVtOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjayA+ICo6bGFzdC1jaGlsZCxcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKjpsYXN0LWNoaWxkID4gYSxcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrID4gKjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2sgPiAqOmxhc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYm90dG9tLWxlZnQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgLXdlYmtpdC1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC44ODg4OXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjg4ODg5cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAtMnB4OyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKiAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCBidXR0b24sIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKixcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKiA+IGEsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24sXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogPiAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkID4gYSxcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCA+IGJ1dHRvbixcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwMDBweDtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMDAwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwMDBweDtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTAwMHB4OyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICo6bGFzdC1jaGlsZCxcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkID4gYSxcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmxhc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICoge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKiA+IGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqIC5idXR0b24ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqID4gYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogPiBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmZpcnN0LWNoaWxkIC5idXR0b24ge1xuICAgICAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICosXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICogPiBhLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqID4gYnV0dG9uLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqID4gLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCxcbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpmaXJzdC1jaGlsZCA+IGEsXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICo6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICo6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC10b3AtbGVmdC1yYWRpdXM6IDAuODg4ODlyZW07XG4gICAgICAgIC13ZWJraXQtdG9wLXJpZ2h0LXJhZGl1czogMC44ODg4OXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC44ODg4OXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuODg4ODlyZW07IH1cbiAgICAgIC5idXR0b24tZ3JvdXAucm91bmQuc3RhY2stZm9yLXNtYWxsID4gKjpsYXN0LWNoaWxkLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmxhc3QtY2hpbGQgPiBhLFxuICAgICAgLmJ1dHRvbi1ncm91cC5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqOmxhc3QtY2hpbGQgPiBidXR0b24sXG4gICAgICAuYnV0dG9uLWdyb3VwLnJvdW5kLnN0YWNrLWZvci1zbWFsbCA+ICo6bGFzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgICAtd2Via2l0LWJvdHRvbS1sZWZ0LXJhZGl1czogMC44ODg4OXJlbTtcbiAgICAgICAgLXdlYmtpdC1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjg4ODg5cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC44ODg4OXJlbTsgfSB9XG5cbi5idXR0b24tYmFyOmJlZm9yZSwgLmJ1dHRvbi1iYXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLmJ1dHRvbi1iYXI6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYnV0dG9uLWJhciAuYnV0dG9uLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMC41NTU1NnJlbTsgfVxuICAuYnV0dG9uLWJhciAuYnV0dG9uLWdyb3VwIGRpdiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBDbGVhcmluZyBTdHlsZXMgKi9cbi5jbGVhcmluZy10aHVtYnMsIFtkYXRhLWNsZWFyaW5nXSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jbGVhcmluZy10aHVtYnM6YmVmb3JlLCAuY2xlYXJpbmctdGh1bWJzOmFmdGVyLCBbZGF0YS1jbGVhcmluZ106YmVmb3JlLCBbZGF0YS1jbGVhcmluZ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5jbGVhcmluZy10aHVtYnM6YWZ0ZXIsIFtkYXRhLWNsZWFyaW5nXTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNsZWFyaW5nLXRodW1icyBsaSwgW2RhdGEtY2xlYXJpbmddIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLmNsZWFyaW5nLXRodW1ic1tjbGFzcyo9XCJibG9jay1ncmlkLVwiXSBsaSwgW2RhdGEtY2xlYXJpbmddW2NsYXNzKj1cImJsb2NrLWdyaWQtXCJdIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmNsZWFyaW5nLWJsYWNrb3V0IHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5ODtcbiAgbGVmdDogMDsgfVxuICAuY2xlYXJpbmctYmxhY2tvdXQgLmNsZWFyaW5nLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2xlYXJpbmctY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk4OyB9XG5cbi5jbGVhcmluZy10b3VjaC1sYWJlbCB7XG4gIGNvbG9yOiAjQUFBQUFBO1xuICBmb250LXNpemU6IC42ZW07XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTsgfVxuXG4udmlzaWJsZS1pbWcge1xuICBoZWlnaHQ6IDk1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC52aXNpYmxlLWltZyBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY2xlYXJpbmctY2FwdGlvbiB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIGJvdHRvbTogMDtcbiAgY29sb3I6ICNDQ0NDQ0M7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMTBweCAzMHB4IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDsgfVxuXG4uY2xlYXJpbmctY2xvc2Uge1xuICBjb2xvcjogI0NDQ0NDQztcbiAgZGlzcGxheTogbm9uZTtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgei1pbmRleDogOTk5OyB9XG4gIC5jbGVhcmluZy1jbG9zZTpob3ZlciwgLmNsZWFyaW5nLWNsb3NlOmZvY3VzIHtcbiAgICBjb2xvcjogI0NDQ0NDQzsgfVxuXG4uY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIge1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmNsZWFyaW5nLWFzc2VtYmxlZCAuY2xlYXJpbmctY29udGFpbmVyIC5jYXJvdXNlbCA+IHVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5jbGVhcmluZy1mZWF0dXJlIGxpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuY2xlYXJpbmctZmVhdHVyZSBsaS5jbGVhcmluZy1mZWF0dXJlZC1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gIC5jbGVhcmluZy1tYWluLXByZXYsXG4gIC5jbGVhcmluZy1tYWluLW5leHQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0MHB4OyB9XG4gICAgLmNsZWFyaW5nLW1haW4tcHJldiA+IHNwYW4sXG4gICAgLmNsZWFyaW5nLW1haW4tbmV4dCA+IHNwYW4ge1xuICAgICAgYm9yZGVyOiBzb2xpZCAxMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAwOyB9XG4gICAgICAuY2xlYXJpbmctbWFpbi1wcmV2ID4gc3Bhbjpob3ZlcixcbiAgICAgIC5jbGVhcmluZy1tYWluLW5leHQgPiBzcGFuOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjg7IH1cbiAgLmNsZWFyaW5nLW1haW4tcHJldiB7XG4gICAgbGVmdDogMDsgfVxuICAgIC5jbGVhcmluZy1tYWluLXByZXYgPiBzcGFuIHtcbiAgICAgIGxlZnQ6IDVweDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNDQ0NDQ0M7IH1cbiAgLmNsZWFyaW5nLW1haW4tbmV4dCB7XG4gICAgcmlnaHQ6IDA7IH1cbiAgICAuY2xlYXJpbmctbWFpbi1uZXh0ID4gc3BhbiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNDQ0NDQ0M7IH1cbiAgLmNsZWFyaW5nLW1haW4tcHJldi5kaXNhYmxlZCxcbiAgLmNsZWFyaW5nLW1haW4tbmV4dC5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjM7IH1cbiAgLmNsZWFyaW5nLWFzc2VtYmxlZCAuY2xlYXJpbmctY29udGFpbmVyIC5jYXJvdXNlbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MSwgNTEsIDUxLCAwLjgpO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIgLmNhcm91c2VsID4gdWwge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgei1pbmRleDogOTk5O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciAuY2Fyb3VzZWwgPiB1bCBsaSB7XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTIwcHg7IH1cbiAgICAgICAgLmNsZWFyaW5nLWFzc2VtYmxlZCAuY2xlYXJpbmctY29udGFpbmVyIC5jYXJvdXNlbCA+IHVsIGxpLmZpeC1oZWlnaHQgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciAuY2Fyb3VzZWwgPiB1bCBsaSBhLnRoIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIgLmNhcm91c2VsID4gdWwgbGkgaW1nIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciAuY2Fyb3VzZWwgPiB1bCBsaS52aXNpYmxlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciAuY2Fyb3VzZWwgPiB1bCBsaTpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjg7IH1cbiAgLmNsZWFyaW5nLWFzc2VtYmxlZCAuY2xlYXJpbmctY29udGFpbmVyIC52aXNpYmxlLWltZyB7XG4gICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICBoZWlnaHQ6IDg1JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5jbGVhcmluZy1jbG9zZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDIwcHg7IH0gfVxuXG4vKiBGb3VuZGF0aW9uIERyb3Bkb3ducyAqL1xuLmYtZHJvcGRvd24ge1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiAtOTk5OXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IHNvbGlkIDFweCAjY2NjY2NjO1xuICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDg5O1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIG1heC13aWR0aDogMjAwcHg7IH1cbiAgLmYtZHJvcGRvd24ub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmYtZHJvcGRvd24gPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mLWRyb3Bkb3duID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5mLWRyb3Bkb3duOmJlZm9yZSB7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjRkZGRkZGIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMnB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgei1pbmRleDogODk7IH1cbiAgLmYtZHJvcGRvd246YWZ0ZXIge1xuICAgIGJvcmRlcjogaW5zZXQgN3B4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2NjY2NjYyB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTRweDtcbiAgICBsZWZ0OiA5cHg7XG4gICAgei1pbmRleDogODg7IH1cbiAgLmYtZHJvcGRvd24ucmlnaHQ6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMHB4OyB9XG4gIC5mLWRyb3Bkb3duLnJpZ2h0OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiA5cHg7IH1cbiAgLmYtZHJvcGRvd24uZHJvcC1yaWdodCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjY2NjYztcbiAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogODk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgIG1heC13aWR0aDogMjAwcHg7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLXJpZ2h0Lm9wZW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLXJpZ2h0ID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC1yaWdodCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC1yaWdodDpiZWZvcmUge1xuICAgICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDg5OyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC1yaWdodDphZnRlciB7XG4gICAgICBib3JkZXI6IGluc2V0IDdweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjY2NjY2NjIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogOXB4O1xuICAgICAgbGVmdDogLTE0cHg7XG4gICAgICB6LWluZGV4OiA4ODsgfVxuICAuZi1kcm9wZG93bi5kcm9wLWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGVmdDogLTk5OTlweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2NjY2M7XG4gICAgZm9udC1zaXplOiAwLjc3Nzc4cmVtO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDg5O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgbWF4LXdpZHRoOiAyMDBweDsgfVxuICAgIC5mLWRyb3Bkb3duLmRyb3AtbGVmdC5vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC1sZWZ0ID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC1sZWZ0ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLWxlZnQ6YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNGRkZGRkY7XG4gICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogLTEycHg7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgei1pbmRleDogODk7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLWxlZnQ6YWZ0ZXIge1xuICAgICAgYm9yZGVyOiBpbnNldCA3cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2NjY2NjYztcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogOXB4O1xuICAgICAgcmlnaHQ6IC0xNHB4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHotaW5kZXg6IDg4OyB9XG4gIC5mLWRyb3Bkb3duLmRyb3AtdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjY2NjO1xuICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiA4OTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIG1heC13aWR0aDogMjAwcHg7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLXRvcC5vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC10b3AgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuZi1kcm9wZG93bi5kcm9wLXRvcCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmYtZHJvcGRvd24uZHJvcC10b3A6YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvdHRvbTogLTEycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiA4OTsgfVxuICAgIC5mLWRyb3Bkb3duLmRyb3AtdG9wOmFmdGVyIHtcbiAgICAgIGJvcmRlcjogaW5zZXQgN3B4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3JkZXItY29sb3I6ICNjY2NjY2MgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvdHRvbTogLTE0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBsZWZ0OiA5cHg7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IDg4OyB9XG4gIC5mLWRyb3Bkb3duIGxpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjc3Nzc4cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5mLWRyb3Bkb3duIGxpOmhvdmVyLCAuZi1kcm9wZG93biBsaTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRUVFRUVFOyB9XG4gICAgLmYtZHJvcGRvd24gbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGNvbG9yOiAjNTU1NTU1OyB9XG4gIC5mLWRyb3Bkb3duLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGVmdDogLTk5OTlweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2NjY2M7XG4gICAgZm9udC1zaXplOiAwLjc3Nzc4cmVtO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIHBhZGRpbmc6IDEuMTExMTFyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogODk7XG4gICAgbWF4LXdpZHRoOiAyMDBweDsgfVxuICAgIC5mLWRyb3Bkb3duLmNvbnRlbnQub3BlbiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mLWRyb3Bkb3duLmNvbnRlbnQgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuZi1kcm9wZG93bi5jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmYtZHJvcGRvd24ucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgLmYtZHJvcGRvd24udGlueSB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDsgfVxuICAuZi1kcm9wZG93bi5zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAuZi1kcm9wZG93bi5tZWRpdW0ge1xuICAgIG1heC13aWR0aDogNTAwcHg7IH1cbiAgLmYtZHJvcGRvd24ubGFyZ2Uge1xuICAgIG1heC13aWR0aDogODAwcHg7IH1cbiAgLmYtZHJvcGRvd24ubWVnYSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIC5mLWRyb3Bkb3duLm1lZ2Eub3BlbiB7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLmRyb3Bkb3duLmJ1dHRvbiwgYnV0dG9uLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAzLjE2NjY3cmVtOyB9XG4gIC5kcm9wZG93bi5idXR0b246OmFmdGVyLCBidXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDA7IH1cbiAgLmRyb3Bkb3duLmJ1dHRvbjo6YWZ0ZXIsIGJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogMC4zMzMzM3JlbTtcbiAgICByaWdodDogMS4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC4xMzg4OXJlbTsgfVxuICAuZHJvcGRvd24uYnV0dG9uOjphZnRlciwgYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5idXR0b24udGlueSwgYnV0dG9uLmRyb3Bkb3duLnRpbnkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMzMzMzNyZW07IH1cbiAgICAuZHJvcGRvd24uYnV0dG9uLnRpbnk6YWZ0ZXIsIGJ1dHRvbi5kcm9wZG93bi50aW55OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMC4zMzMzM3JlbTtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuMTExMTFyZW07IH1cbiAgICAuZHJvcGRvd24uYnV0dG9uLnRpbnk6OmFmdGVyLCBidXR0b24uZHJvcGRvd24udGlueTo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5idXR0b24uc21hbGwsIGJ1dHRvbi5kcm9wZG93bi5zbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMi43MjIyMnJlbTsgfVxuICAgIC5kcm9wZG93bi5idXR0b24uc21hbGw6OmFmdGVyLCBidXR0b24uZHJvcGRvd24uc21hbGw6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMC4zODg4OXJlbTtcbiAgICAgIHJpZ2h0OiAxLjE2NjY3cmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuMTM4ODlyZW07IH1cbiAgICAuZHJvcGRvd24uYnV0dG9uLnNtYWxsOjphZnRlciwgYnV0dG9uLmRyb3Bkb3duLnNtYWxsOjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmRyb3Bkb3duLmJ1dHRvbi5sYXJnZSwgYnV0dG9uLmRyb3Bkb3duLmxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjIyMjIycmVtOyB9XG4gICAgLmRyb3Bkb3duLmJ1dHRvbi5sYXJnZTo6YWZ0ZXIsIGJ1dHRvbi5kcm9wZG93bi5sYXJnZTo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwLjI3Nzc4cmVtO1xuICAgICAgcmlnaHQ6IDEuNTI3NzhyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC4xMzg4OXJlbTsgfVxuICAgIC5kcm9wZG93bi5idXR0b24ubGFyZ2U6OmFmdGVyLCBidXR0b24uZHJvcGRvd24ubGFyZ2U6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuZHJvcGRvd24uYnV0dG9uLnNlY29uZGFyeTphZnRlciwgYnV0dG9uLmRyb3Bkb3duLnNlY29uZGFyeTphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzMzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5mbGV4LXZpZGVvIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjg4ODg5cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogNjcuNSU7XG4gIHBhZGRpbmctdG9wOiAxLjM4ODg5cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjM0JTsgfVxuICAuZmxleC12aWRlby52aW1lbyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDsgfVxuXG4vKiBTdGFuZGFyZCBGb3JtcyAqL1xuZm9ybSB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTsgfVxuXG4vKiBVc2luZyBmb3JtcyB3aXRoaW4gcm93cywgd2UgbmVlZCB0byBzZXQgc29tZSBkZWZhdWx0cyAqL1xuZm9ybSAucm93IC5yb3cge1xuICBtYXJnaW46IDAgLTAuNzVyZW07IH1cbiAgZm9ybSAucm93IC5yb3cgLmNvbHVtbixcbiAgZm9ybSAucm93IC5yb3cgLmNvbHVtbnMge1xuICAgIHBhZGRpbmc6IDAgMC43NXJlbTsgfVxuICBmb3JtIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgZm9ybSAucm93IC5yb3cuY29sbGFwc2UgLmNvbHVtbixcbiAgICBmb3JtIC5yb3cgLnJvdy5jb2xsYXBzZSAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgZm9ybSAucm93IC5yb3cuY29sbGFwc2UgaW5wdXQge1xuICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbmZvcm0gLnJvdyBpbnB1dC5jb2x1bW4sXG5mb3JtIC5yb3cgaW5wdXQuY29sdW1ucyxcbmZvcm0gLnJvdyB0ZXh0YXJlYS5jb2x1bW4sXG5mb3JtIC5yb3cgdGV4dGFyZWEuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTsgfVxuXG4vKiBMYWJlbCBTdHlsZXMgKi9cbmxhYmVsIHtcbiAgY29sb3I6ICM0ZDRkNGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLyogU3R5bGVzIGZvciByZXF1aXJlZCBpbnB1dHMgKi8gfVxuICBsYWJlbC5yaWdodCB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICBsYWJlbC5pbmxpbmUge1xuICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAuODA1NTZyZW0gMDsgfVxuICBsYWJlbCBzbWFsbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgY29sb3I6ICM2NzY3Njc7IH1cblxuLyogQXR0YWNoIGVsZW1lbnRzIHRvIHRoZSBiZWdpbm5pbmcgb3IgZW5kIG9mIGFuIGlucHV0ICovXG4ucHJlZml4LFxuLnBvc3RmaXgge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgaGVpZ2h0OiAyLjk3MjIycmVtO1xuICBsaW5lLWhlaWdodDogMi45NzIyMnJlbTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyOyB9XG5cbi8qIEFkanVzdCBwYWRkaW5nLCBhbGlnbm1lbnQgYW5kIHJhZGl1cyBpZiBwcmUvcG9zdCBlbGVtZW50IGlzIGEgYnV0dG9uICovXG4ucG9zdGZpeC5idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnByZWZpeC5idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnByZWZpeC5idXR0b24ucmFkaXVzIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07IH1cblxuLnBvc3RmaXguYnV0dG9uLnJhZGl1cyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfVxuXG4ucHJlZml4LmJ1dHRvbi5yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwMDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMDAwcHg7IH1cblxuLnBvc3RmaXguYnV0dG9uLnJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7IH1cblxuLyogU2VwYXJhdGUgcHJlZml4IGFuZCBwb3N0Zml4IHN0eWxlcyB3aGVuIG9uIHNwYW4gb3IgbGFiZWwgc28gYnV0dG9ucyBrZWVwIHRoZWlyIG93biAqL1xuc3Bhbi5wcmVmaXgsIGxhYmVsLnByZWZpeCB7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYzsgfVxuXG5zcGFuLnBvc3RmaXgsIGxhYmVsLnBvc3RmaXgge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYzsgfVxuXG4vKiBXZSB1c2UgdGhpcyB0byBnZXQgYmFzaWMgc3R5bGluZyBvbiBhbGwgYmFzaWMgZm9ybSBlbGVtZW50cyAqL1xuaW5wdXQ6bm90KFt0eXBlXSksIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBpbnB1dFt0eXBlPVwid2Vla1wiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwidGltZVwiXSwgaW5wdXRbdHlwZT1cInVybFwiXSwgaW5wdXRbdHlwZT1cImNvbG9yXCJdLCB0ZXh0YXJlYSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gIGhlaWdodDogMi45NzIyMnJlbTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgbGluZWFyLCBiYWNrZ3JvdW5kIDAuMTVzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgbGluZWFyLCBiYWNrZ3JvdW5kIDAuMTVzIGxpbmVhcjtcbiAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgbGluZWFyLCBiYWNrZ3JvdW5kIDAuMTVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGxpbmVhciwgYmFja2dyb3VuZCAwLjE1cyBsaW5lYXI7IH1cbiAgaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cywgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgICBib3JkZXItY29sb3I6ICM5OTk5OTk7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cInRleHRcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cImRhdGVcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwibW9udGhcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwiZW1haWxcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJudW1iZXJcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJ0ZWxcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwidXJsXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwiY29sb3JcIl06ZGlzYWJsZWQsIHRleHRhcmVhOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREREREO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICBpbnB1dDpub3QoW3R5cGVdKVtkaXNhYmxlZF0sIGlucHV0Om5vdChbdHlwZV0pW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0Om5vdChbdHlwZV0pLCBpbnB1dFt0eXBlPVwidGV4dFwiXVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJkYXRlXCJdW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLCBpbnB1dFt0eXBlPVwibW9udGhcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwibW9udGhcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBpbnB1dFt0eXBlPVwid2Vla1wiXVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJ3ZWVrXCJdW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXVtyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXVtyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT1cInRlbFwiXVtyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwidGltZVwiXVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJ0aW1lXCJdW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIGlucHV0W3R5cGU9XCJ0aW1lXCJdLCBpbnB1dFt0eXBlPVwidXJsXCJdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT1cInVybFwiXVtyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidXJsXCJdLCBpbnB1dFt0eXBlPVwiY29sb3JcIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwiY29sb3JcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cImNvbG9yXCJdLCB0ZXh0YXJlYVtkaXNhYmxlZF0sIHRleHRhcmVhW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIHRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREREREO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICBpbnB1dDpub3QoW3R5cGVdKS5yYWRpdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLnJhZGl1cywgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLnJhZGl1cywgaW5wdXRbdHlwZT1cImRhdGVcIl0ucmFkaXVzLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0ucmFkaXVzLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0ucmFkaXVzLCBpbnB1dFt0eXBlPVwibW9udGhcIl0ucmFkaXVzLCBpbnB1dFt0eXBlPVwid2Vla1wiXS5yYWRpdXMsIGlucHV0W3R5cGU9XCJlbWFpbFwiXS5yYWRpdXMsIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ucmFkaXVzLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLnJhZGl1cywgaW5wdXRbdHlwZT1cInRlbFwiXS5yYWRpdXMsIGlucHV0W3R5cGU9XCJ0aW1lXCJdLnJhZGl1cywgaW5wdXRbdHlwZT1cInVybFwiXS5yYWRpdXMsIGlucHV0W3R5cGU9XCJjb2xvclwiXS5yYWRpdXMsIHRleHRhcmVhLnJhZGl1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbmZvcm0gLnJvdyAucHJlZml4LXJhZGl1cy5yb3cuY29sbGFwc2UgaW5wdXQsXG5mb3JtIC5yb3cgLnByZWZpeC1yYWRpdXMucm93LmNvbGxhcHNlIHRleHRhcmVhLFxuZm9ybSAucm93IC5wcmVmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSBzZWxlY3QsXG5mb3JtIC5yb3cgLnByZWZpeC1yYWRpdXMucm93LmNvbGxhcHNlIGJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTsgfVxuXG5mb3JtIC5yb3cgLnByZWZpeC1yYWRpdXMucm93LmNvbGxhcHNlIC5wcmVmaXgge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4xNjY2N3JlbTsgfVxuXG5mb3JtIC5yb3cgLnBvc3RmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSBpbnB1dCxcbmZvcm0gLnJvdyAucG9zdGZpeC1yYWRpdXMucm93LmNvbGxhcHNlIHRleHRhcmVhLFxuZm9ybSAucm93IC5wb3N0Zml4LXJhZGl1cy5yb3cuY29sbGFwc2Ugc2VsZWN0LFxuZm9ybSAucm93IC5wb3N0Zml4LXJhZGl1cy5yb3cuY29sbGFwc2UgYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMTY2NjdyZW07IH1cblxuZm9ybSAucm93IC5wb3N0Zml4LXJhZGl1cy5yb3cuY29sbGFwc2UgLnBvc3RmaXgge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjE2NjY3cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4xNjY2N3JlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTY2NjdyZW07IH1cblxuZm9ybSAucm93IC5wcmVmaXgtcm91bmQucm93LmNvbGxhcHNlIGlucHV0LFxuZm9ybSAucm93IC5wcmVmaXgtcm91bmQucm93LmNvbGxhcHNlIHRleHRhcmVhLFxuZm9ybSAucm93IC5wcmVmaXgtcm91bmQucm93LmNvbGxhcHNlIHNlbGVjdCxcbmZvcm0gLnJvdyAucHJlZml4LXJvdW5kLnJvdy5jb2xsYXBzZSBidXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwMDBweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwMDBweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwMDBweDsgfVxuXG5mb3JtIC5yb3cgLnByZWZpeC1yb3VuZC5yb3cuY29sbGFwc2UgLnByZWZpeCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwMDBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMDAwcHg7IH1cblxuZm9ybSAucm93IC5wb3N0Zml4LXJvdW5kLnJvdy5jb2xsYXBzZSBpbnB1dCxcbmZvcm0gLnJvdyAucG9zdGZpeC1yb3VuZC5yb3cuY29sbGFwc2UgdGV4dGFyZWEsXG5mb3JtIC5yb3cgLnBvc3RmaXgtcm91bmQucm93LmNvbGxhcHNlIHNlbGVjdCxcbmZvcm0gLnJvdyAucG9zdGZpeC1yb3VuZC5yb3cuY29sbGFwc2UgYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMDAwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTAwMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwMDBweDsgfVxuXG5mb3JtIC5yb3cgLnBvc3RmaXgtcm91bmQucm93LmNvbGxhcHNlIC5wb3N0Zml4IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMDAwcHg7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIFJlc3BlY3QgZW5mb3JjZWQgYW1vdW50IG9mIHJvd3MgZm9yIHRleHRhcmVhICovXG50ZXh0YXJlYVtyb3dzXSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKiBOb3QgYWxsb3cgcmVzaXplIG91dCBvZiBwYXJlbnQgKi9cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2NjY2NjOyB9XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOC0gKi9cbiAgY29sb3I6ICNjY2NjY2M7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOSsgKi9cbiAgY29sb3I6ICNjY2NjY2M7IH1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2NjY2NjOyB9XG5cbi8qIEFkZCBoZWlnaHQgdmFsdWUgZm9yIHNlbGVjdCBlbGVtZW50cyB0byBtYXRjaCB0ZXh0IGlucHV0IGhlaWdodCAqL1xuc2VsZWN0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpsY25OcGIyNDlJakV1TVNJZ2VEMGlNVEp3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTWpSd2VDSWdhR1ZwWjJoMFBTSXpjSGdpSUhacFpYZENiM2c5SWpBZ01DQTJJRE1pSUdWdVlXSnNaUzFpWVdOclozSnZkVzVrUFNKdVpYY2dNQ0F3SURZZ015SWdlRzFzT25Od1lXTmxQU0p3Y21WelpYSjJaU0krUEhCdmJIbG5iMjRnY0c5cGJuUnpQU0kxTGprNU1pd3dJREl1T1RreUxETWdMVEF1TURBNExEQWdJaTgrUEM5emRtYytcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjk3MjIycmVtOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3QucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xuICAgIGJvcmRlci1jb2xvcjogIzk5OTk5OTsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEREREREQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG4vKiBBZGp1c3QgbWFyZ2luIGZvciBmb3JtIGVsZW1lbnRzIGJlbG93ICovXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbnNlbGVjdCB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbi8qIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoICovXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIEhUTUw1IE51bWJlciBzcGlubmVycyBzZXR0aW5ncyAqL1xuLyogV2UgYWRkIGJhc2ljIGZpZWxkc2V0IHN0eWxpbmcgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERERERDtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHBhZGRpbmc6IDEuMTExMTFyZW07IH1cbiAgZmllbGRzZXQgbGVnZW5kIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjE2NjY3cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xNjY2N3JlbTsgfVxuXG4vKiBFcnJvciBIYW5kbGluZyAqL1xuW2RhdGEtYWJpZGVdIC5lcnJvciBzbWFsbC5lcnJvciwgW2RhdGEtYWJpZGVdIC5lcnJvciBzcGFuLmVycm9yLCBbZGF0YS1hYmlkZV0gc3Bhbi5lcnJvciwgW2RhdGEtYWJpZGVdIHNtYWxsLmVycm9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC42NjY2N3JlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtIDAuNXJlbTtcbiAgYmFja2dyb3VuZDogI2YwNDEyNDtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuW2RhdGEtYWJpZGVdIHNwYW4uZXJyb3IsIFtkYXRhLWFiaWRlXSBzbWFsbC5lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuc3Bhbi5lcnJvciwgc21hbGwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY2NjY3cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gMC41cmVtO1xuICBiYWNrZ3JvdW5kOiAjZjA0MTI0O1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uZXJyb3IgaW5wdXQsXG4uZXJyb3IgdGV4dGFyZWEsXG4uZXJyb3Igc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZXJyb3IgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmVycm9yIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4uZXJyb3IgbGFiZWwsXG4uZXJyb3IgbGFiZWwuZXJyb3Ige1xuICBjb2xvcjogI2YwNDEyNDsgfVxuXG4uZXJyb3Igc21hbGwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY2NjY3cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gMC41cmVtO1xuICBiYWNrZ3JvdW5kOiAjZjA0MTI0O1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uZXJyb3IgPiBsYWJlbCA+IHNtYWxsIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNjc2NzY3O1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogNjAlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLmVycm9yIHNwYW4uZXJyb3ItbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmlucHV0LmVycm9yLFxudGV4dGFyZWEuZXJyb3IsXG5zZWxlY3QuZXJyb3Ige1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICNmMDQxMjQ7IH1cblxuLnJvdyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDYyLjVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5yb3c6YmVmb3JlLCAucm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucm93OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbixcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAucm93LmNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucm93IC5yb3cge1xuICAgIG1hcmdpbjogMCAtMC43NXJlbTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAucm93IC5yb3c6YmVmb3JlLCAucm93IC5yb3c6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIC5yb3cgLnJvdzphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLnJvdyAucm93LmNvbGxhcHNlOmJlZm9yZSwgLnJvdyAucm93LmNvbGxhcHNlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAucm93IC5yb3cuY29sbGFwc2U6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuXG4uY29sdW1uLFxuLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uICsgLmNvbHVtbjpsYXN0LWNoaWxkLFxuLmNvbHVtbnMgKyAuY29sdW1uOmxhc3QtY2hpbGQsIC5jb2x1bW4gK1xuLmNvbHVtbnM6bGFzdC1jaGlsZCxcbi5jb2x1bW5zICtcbi5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmNvbHVtbiArIC5jb2x1bW4uZW5kLFxuLmNvbHVtbnMgKyAuY29sdW1uLmVuZCwgLmNvbHVtbiArXG4uY29sdW1ucy5lbmQsXG4uY29sdW1ucyArXG4uY29sdW1ucy5lbmQge1xuICBmbG9hdDogbGVmdDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMzLjgxMjVlbSkge1xuICAuc21hbGwtcHVzaC0wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bzsgfVxuICAuc21hbGwtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuc21hbGwtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA4LjMzMzMzJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuc21hbGwtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMjUlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAuc21hbGwtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuc21hbGwtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNTAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAuc21hbGwtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDU4LjMzMzMzJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuc21hbGwtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbWFsbC1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNzUlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogODMuMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNtYWxsLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogOTEuNjY2NjclO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLTEyLCBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZSAud2ViZm9ybS1jb250YWluZXItaW5saW5lID4gKiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNtYWxsLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbWFsbC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlICFpbXBvcnRhbnQ7IH1cbiAgLnNtYWxsLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5zbWFsbC1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyUgIWltcG9ydGFudDsgfVxuICAuc21hbGwtcmVzZXQtb3JkZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5jb2x1bW4uc21hbGwtY2VudGVyZWQsXG4gIC5jb2x1bW5zLnNtYWxsLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmNvbHVtbi5zbWFsbC11bmNlbnRlcmVkLFxuICAuY29sdW1ucy5zbWFsbC11bmNlbnRlcmVkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNvbHVtbi5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkLFxuICAuY29sdW1ucy5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAuY29sdW1uLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZCxcbiAgLmNvbHVtbnMuc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuY29sdW1uLnNtYWxsLXVuY2VudGVyZWQub3Bwb3NpdGUsXG4gIC5jb2x1bW5zLnNtYWxsLXVuY2VudGVyZWQub3Bwb3NpdGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucm93LnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbixcbiAgLnJvdy5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAucm93LnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucm93LnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLFxuICAucm93LnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAubWVkaXVtLXB1c2gtMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLm1lZGl1bS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogOC4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogOTEuNjY2NjclO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tNCwgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLndlYmZvcm0tY29udGFpbmVyLWlubGluZSA+ICoge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JSAhaW1wb3J0YW50OyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JSAhaW1wb3J0YW50OyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyUgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLXJlc2V0LW9yZGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICByaWdodDogYXV0bzsgfVxuICAuY29sdW1uLm1lZGl1bS1jZW50ZXJlZCxcbiAgLmNvbHVtbnMubWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmNvbHVtbi5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLmNvbHVtbnMubWVkaXVtLXVuY2VudGVyZWQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuY29sdW1uLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkLFxuICAuY29sdW1ucy5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmNvbHVtbi5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkLFxuICAuY29sdW1ucy5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuY29sdW1uLm1lZGl1bS11bmNlbnRlcmVkLm9wcG9zaXRlLFxuICAuY29sdW1ucy5tZWRpdW0tdW5jZW50ZXJlZC5vcHBvc2l0ZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5yb3cubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbixcbiAgLnJvdy5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnJvdy5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5yb3cubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLFxuICAucm93Lm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5wdXNoLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMzMuMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNTguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gIC5sYXJnZS1wdXNoLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMzMuMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNTguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuY29sdW1uLFxuICAuY29sdW1ucyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JSAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLmxhcmdlLXJlc2V0LW9yZGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICByaWdodDogYXV0bzsgfVxuICAuY29sdW1uLmxhcmdlLWNlbnRlcmVkLFxuICAuY29sdW1ucy5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC5jb2x1bW4ubGFyZ2UtdW5jZW50ZXJlZCxcbiAgLmNvbHVtbnMubGFyZ2UtdW5jZW50ZXJlZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5jb2x1bW4ubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZCxcbiAgLmNvbHVtbnMubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmNvbHVtbi5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQsXG4gIC5jb2x1bW5zLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbHVtbi5sYXJnZS11bmNlbnRlcmVkLm9wcG9zaXRlLFxuICAuY29sdW1ucy5sYXJnZS11bmNlbnRlcmVkLm9wcG9zaXRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnJvdy5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sXG4gIC5yb3cubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnJvdy5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnJvdy5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbixcbiAgLnJvdy5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5wdXNoLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMzMuMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNTguMzMzMzMlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAucHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAucHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7XG4gICAgbGVmdDogYXV0bzsgfSB9XG5cbi5pbmxpbmUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuOTQ0NDRyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMS4yMjIyMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5pbmxpbmUtbGlzdCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjIyMjIycmVtOyB9XG4gICAgLmlubGluZS1saXN0ID4gbGkgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIEZvdW5kYXRpb24gSm95cmlkZSAqL1xuLmpveXJpZGUtbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogRGVmYXVsdCBzdHlsZXMgZm9yIHRoZSBjb250YWluZXIgKi9cbi5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA5NSU7XG4gIHotaW5kZXg6IDEwMztcbiAgbGVmdDogMi41JTsgfVxuXG4ubHQtaWU5IC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gIG1hcmdpbi1sZWZ0OiAtNDAwcHg7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIGxlZnQ6IDUwJTsgfVxuXG4uam95cmlkZS1jb250ZW50LXdyYXBwZXIge1xuICBwYWRkaW5nOiAxcmVtIDEuMTExMTFyZW0gMS4zMzMzM3JlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmpveXJpZGUtY29udGVudC13cmFwcGVyIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuam95cmlkZS1jb250ZW50LXdyYXBwZXIgLmpveXJpZGUtcHJldi10aXAge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4vKiBBZGQgYSBsaXR0bGUgY3NzIHRyaWFuZ2xlIHBpcCwgb2xkZXIgYnJvd3NlciBqdXN0IG1pc3Mgb3V0IG9uIHRoZSBmYW5jaW5lc3Mgb2YgaXQgKi9cbi5qb3lyaWRlLXRpcC1ndWlkZSAuam95cmlkZS1udWIge1xuICBib3JkZXI6IDEwcHggc29saWQgIzMzMzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgbGVmdDogMjJweDsgfVxuICAuam95cmlkZS10aXAtZ3VpZGUgLmpveXJpZGUtbnViLnRvcCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzMzMzMzO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHRvcDogLTIwcHg7IH1cbiAgLmpveXJpZGUtdGlwLWd1aWRlIC5qb3lyaWRlLW51Yi5ib3R0b20ge1xuICAgIGJvcmRlci1jb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogLTIwcHg7IH1cbiAgLmpveXJpZGUtdGlwLWd1aWRlIC5qb3lyaWRlLW51Yi5yaWdodCB7XG4gICAgcmlnaHQ6IC0yMHB4OyB9XG4gIC5qb3lyaWRlLXRpcC1ndWlkZSAuam95cmlkZS1udWIubGVmdCB7XG4gICAgbGVmdDogLTIwcHg7IH1cblxuLyogVHlwb2dyYXBoeSAqL1xuLmpveXJpZGUtdGlwLWd1aWRlIGgxLFxuLmpveXJpZGUtdGlwLWd1aWRlIGgyLFxuLmpveXJpZGUtdGlwLWd1aWRlIGgzLFxuLmpveXJpZGUtdGlwLWd1aWRlIGg0LFxuLmpveXJpZGUtdGlwLWd1aWRlIGg1LFxuLmpveXJpZGUtdGlwLWd1aWRlIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSxcbi5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgLmpveXJpZGUtdGlwLWd1aWRlIGEsXG4uam95cmlkZS10aXAtZ3VpZGUgaDYge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDA7IH1cblxuLmpveXJpZGUtdGlwLWd1aWRlIHAge1xuICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDsgfVxuXG4uam95cmlkZS10aW1lci1pbmRpY2F0b3Itd3JhcCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICM1NTU1NTU7XG4gIGJvdHRvbTogMC44ODg4OXJlbTtcbiAgaGVpZ2h0OiAzcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDUwcHg7XG4gIHJpZ2h0OiAwLjk0NDQ0cmVtOyB9XG5cbi5qb3lyaWRlLXRpbWVyLWluZGljYXRvciB7XG4gIGJhY2tncm91bmQ6ICM2NjY2NjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIHdpZHRoOiAwOyB9XG5cbi5qb3lyaWRlLWNsb3NlLXRpcCB7XG4gIGNvbG9yOiAjNzc3Nzc3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IC41ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAxMnB4OyB9XG4gIC5qb3lyaWRlLWNsb3NlLXRpcDpob3ZlciwgLmpveXJpZGUtY2xvc2UtdGlwOmZvY3VzIHtcbiAgICBjb2xvcjogI0VFRUVFRSAhaW1wb3J0YW50OyB9XG5cbi5qb3lyaWRlLW1vZGFsLWJnIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIGxlZnQ6IDA7IH1cblxuLmpveXJpZGUtZXhwb3NlLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAxNXB4ICNGRkZGRkY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAyOyB9XG5cbi5qb3lyaWRlLWV4cG9zZS1jb3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5OyB9XG5cbi8qIFN0eWxlcyBmb3Igc2NyZWVucyB0aGF0IGFyZSBhdCBsZWFzdCA3NjhweDsgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuODEyNWVtKSB7XG4gIC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGxlZnQ6IGluaGVyaXQ7IH1cbiAgICAuam95cmlkZS10aXAtZ3VpZGUgLmpveXJpZGUtbnViLmJvdHRvbSB7XG4gICAgICBib3JkZXItY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvdHRvbTogLTIwcHg7IH1cbiAgICAuam95cmlkZS10aXAtZ3VpZGUgLmpveXJpZGUtbnViLnJpZ2h0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgdG9wOiAyMnB4OyB9XG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIC5qb3lyaWRlLW51Yi5sZWZ0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0b3A6IDIycHg7IH0gfVxuXG4ua2V5c3Ryb2tlLFxua2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkZGRkO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGZvbnQtZmFtaWx5OiBcIkNvbnNvbGFzXCIsIFwiTWVubG9cIiwgXCJDb3VyaWVyXCIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTExMTFyZW0gMC4yMjIyMnJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAzcHg7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiAwLjIyMjIycmVtIDAuNDQ0NDRyZW0gMC4yMjIyMnJlbTtcbiAgZm9udC1zaXplOiAwLjYxMTExcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5OERCO1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuICAubGFiZWwucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgLmxhYmVsLnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA0MTI0O1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5sYWJlbC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA4YTI0O1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDNBQzZBO1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGhvdHBpbms7XG4gICAgY29sb3I6ICMzMzMzMzM7IH1cbiAgLmxhYmVsLmluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1QkIxRDM7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cblxuW2RhdGEtbWFnZWxsYW4tZXhwZWRpdGlvbl0sIFtkYXRhLW1hZ2VsbGFuLWV4cGVkaXRpb24tY2xvbmVdIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiA1MDsgfVxuICBbZGF0YS1tYWdlbGxhbi1leHBlZGl0aW9uXSAuc3ViLW5hdiwgW2RhdGEtbWFnZWxsYW4tZXhwZWRpdGlvbi1jbG9uZV0gLnN1Yi1uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBbZGF0YS1tYWdlbGxhbi1leHBlZGl0aW9uXSAuc3ViLW5hdiBkZCwgW2RhdGEtbWFnZWxsYW4tZXhwZWRpdGlvbi1jbG9uZV0gLnN1Yi1uYXYgZGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIFtkYXRhLW1hZ2VsbGFuLWV4cGVkaXRpb25dIC5zdWItbmF2IGEsIFtkYXRhLW1hZ2VsbGFuLWV4cGVkaXRpb24tY2xvbmVdIC5zdWItbmF2IGEge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLyogT3JiaXQgR3JhY2VmdWwgTG9hZGluZyAqL1xuLnNsaWRlc2hvdy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zbGlkZXNob3ctd3JhcHBlciB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5zbGlkZXNob3ctd3JhcHBlciB1bCBsaSxcbiAgICAuc2xpZGVzaG93LXdyYXBwZXIgdWwgbGkgLm9yYml0LWNhcHRpb24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zbGlkZXNob3ctd3JhcHBlciB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpZGVzaG93LXdyYXBwZXIgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpZGVzaG93LXdyYXBwZXIgLm9yYml0LWNvbnRhaW5lciBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnNsaWRlc2hvdy13cmFwcGVyIC5vcmJpdC1jb250YWluZXIgbGkgLm9yYml0LWNhcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5zbGlkZXNob3ctd3JhcHBlciAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1idWxsZXRzIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuc2xpZGVzaG93LXdyYXBwZXIgLnByZWxvYWRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBib3JkZXItY29sb3I6ICM1NTU1NTUgI0ZGRkZGRjtcbiAgICBib3JkZXI6IHNvbGlkIDNweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDQwcHg7IH1cblxuLm9yYml0LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gICAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9XG4gICAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKiAub3JiaXQtY2FwdGlvbiB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuOCk7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNTU1NTZyZW0gMC43Nzc3OHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgei1pbmRleDogMTA7IH1cbiAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1zbGlkZS1udW1iZXIgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcGFkZGluZzogMC4yNzc3OHJlbTsgfVxuICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC10aW1lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICByaWdodDogMTBweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgei1pbmRleDogMTA7IH1cbiAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC10aW1lciAub3JiaXQtcHJvZ3Jlc3Mge1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICB0b3A6IDVweDsgfVxuICAgIC5vcmJpdC1jb250YWluZXIgLm9yYml0LXRpbWVyID4gc3BhbiB7XG4gICAgICBib3JkZXI6IHNvbGlkIDRweCAjRkZGRkZGO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDExcHg7XG4gICAgICByaWdodDogMDsgfVxuICAgIC5vcmJpdC1jb250YWluZXIgLm9yYml0LXRpbWVyLnBhdXNlZCA+IHNwYW4ge1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDExcHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICBib3JkZXI6IGluc2V0IDhweDtcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgIHJpZ2h0OiAtNHB4OyB9XG4gICAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC10aW1lci5wYXVzZWQgPiBzcGFuLmRhcmsge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogIzMzMzMzMzsgfVxuICAub3JiaXQtY29udGFpbmVyOmhvdmVyIC5vcmJpdC10aW1lciA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5vcmJpdC1jb250YWluZXIgLm9yYml0LXByZXYsXG4gIC5vcmJpdC1jb250YWluZXIgLm9yYml0LW5leHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgdG9wOiA0NSU7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgei1pbmRleDogMTA7IH1cbiAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1wcmV2OmhvdmVyLFxuICAgIC5vcmJpdC1jb250YWluZXIgLm9yYml0LW5leHQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG4gICAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtcHJldiA+IHNwYW4sXG4gICAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtbmV4dCA+IHNwYW4ge1xuICAgICAgYm9yZGVyOiBpbnNldCAxMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDA7IH1cbiAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtcHJldiB7XG4gICAgbGVmdDogMDsgfVxuICAgIC5vcmJpdC1jb250YWluZXIgLm9yYml0LXByZXYgPiBzcGFuIHtcbiAgICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjRkZGRkZGOyB9XG4gICAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtcHJldjpob3ZlciA+IHNwYW4ge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjRkZGRkZGOyB9XG4gIC5vcmJpdC1jb250YWluZXIgLm9yYml0LW5leHQge1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgLm9yYml0LWNvbnRhaW5lciAub3JiaXQtbmV4dCA+IHNwYW4ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjRkZGRkZGO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7IH1cbiAgICAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1uZXh0OmhvdmVyID4gc3BhbiB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogI0ZGRkZGRjsgfVxuXG4ub3JiaXQtYnVsbGV0cy1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm9yYml0LWJ1bGxldHMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMTBweDsgfVxuICAub3JiaXQtYnVsbGV0cyBsaSB7XG4gICAgYmFja2dyb3VuZDogI0NDQ0NDQztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGhlaWdodDogMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTAwMHB4OyB9XG4gICAgLm9yYml0LWJ1bGxldHMgbGkuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM5OTk5OTk7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4udG91Y2ggLm9yYml0LWNvbnRhaW5lciAub3JiaXQtcHJldixcbi50b3VjaCAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1uZXh0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udG91Y2ggLm9yYml0LWJ1bGxldHMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gIC50b3VjaCAub3JiaXQtY29udGFpbmVyIC5vcmJpdC1wcmV2LFxuICAudG91Y2ggLm9yYml0LWNvbnRhaW5lciAub3JiaXQtbmV4dCB7XG4gICAgZGlzcGxheTogaW5oZXJpdDsgfVxuICAudG91Y2ggLm9yYml0LWJ1bGxldHMge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gIC5vcmJpdC1zdGFjay1vbi1zbWFsbCAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm9yYml0LXN0YWNrLW9uLXNtYWxsIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKiB7XG4gICAgbWFyZ2luOiAwICAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm9yYml0LXN0YWNrLW9uLXNtYWxsIC5vcmJpdC1zbGlkZS1udW1iZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm9yYml0LXRpbWVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5vcmJpdC1uZXh0LCAub3JiaXQtcHJldiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbnVsLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IC0wLjI3Nzc4cmVtO1xuICBtaW4taGVpZ2h0OiAxLjMzMzMzcmVtOyB9XG4gIHVsLnBhZ2luYXRpb24gbGkge1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICBoZWlnaHQ6IDEuMzMzMzNyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjc3NzhyZW07IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpIGEsIHVsLnBhZ2luYXRpb24gbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY29sb3I6ICM5OTk5OTk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMC4wNTU1NnJlbSAwLjU1NTU2cmVtIDAuMDU1NTZyZW07IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpOmhvdmVyIGEsXG4gICAgdWwucGFnaW5hdGlvbiBsaSBhOmZvY3VzLFxuICAgIHVsLnBhZ2luYXRpb24gbGk6aG92ZXIgYnV0dG9uLFxuICAgIHVsLnBhZ2luYXRpb24gbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpLnVuYXZhaWxhYmxlIGEsIHVsLnBhZ2luYXRpb24gbGkudW5hdmFpbGFibGUgYnV0dG9uIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpLnVuYXZhaWxhYmxlOmhvdmVyIGEsXG4gICAgdWwucGFnaW5hdGlvbiBsaS51bmF2YWlsYWJsZSBhOmZvY3VzLFxuICAgIHVsLnBhZ2luYXRpb24gbGkudW5hdmFpbGFibGU6aG92ZXIgYnV0dG9uLFxuICAgIHVsLnBhZ2luYXRpb24gbGkudW5hdmFpbGFibGUgYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgdWwucGFnaW5hdGlvbiBsaS5jdXJyZW50IGEsIHVsLnBhZ2luYXRpb24gbGkuY3VycmVudCBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogIzM0OThEQjtcbiAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIHVsLnBhZ2luYXRpb24gbGkuY3VycmVudCBhOmhvdmVyLCB1bC5wYWdpbmF0aW9uIGxpLmN1cnJlbnQgYTpmb2N1cywgdWwucGFnaW5hdGlvbiBsaS5jdXJyZW50IGJ1dHRvbjpob3ZlciwgdWwucGFnaW5hdGlvbiBsaS5jdXJyZW50IGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzNDk4REI7IH1cbiAgdWwucGFnaW5hdGlvbiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogUGFnaW5hdGlvbiBjZW50cmVkIHdyYXBwZXIgKi9cbi5wYWdpbmF0aW9uLWNlbnRlcmVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdpbmF0aW9uLWNlbnRlcmVkIHVsLnBhZ2luYXRpb24gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbm9uZTsgfVxuXG4vKiBQYW5lbHMgKi9cbi5wYW5lbCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItY29sb3I6ICNkOGQ4ZDg7XG4gIG1hcmdpbi1ib3R0b206IDEuMTExMTFyZW07XG4gIHBhZGRpbmc6IDEuMTExMTFyZW07XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGNvbG9yOiAjMzMzMzMzOyB9XG4gIC5wYW5lbCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAucGFuZWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFuZWwgaDEsIC5wYW5lbCBoMiwgLnBhbmVsIGgzLCAucGFuZWwgaDQsIC5wYW5lbCBoNSwgLnBhbmVsIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSAucGFuZWwgYSwgLnBhbmVsIGg2LCAucGFuZWwgcCwgLnBhbmVsIGxpLCAucGFuZWwgZGwge1xuICAgIGNvbG9yOiAjMzMzMzMzOyB9XG4gIC5wYW5lbCBoMSwgLnBhbmVsIGgyLCAucGFuZWwgaDMsIC5wYW5lbCBoNCwgLnBhbmVsIGg1LCAucGFuZWwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhLCAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpIC5wYW5lbCBhLCAucGFuZWwgaDYge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNTU1NTZyZW07IH1cbiAgICAucGFuZWwgaDEuc3ViaGVhZGVyLCAucGFuZWwgaDIuc3ViaGVhZGVyLCAucGFuZWwgaDMuc3ViaGVhZGVyLCAucGFuZWwgaDQuc3ViaGVhZGVyLCAucGFuZWwgaDUuc3ViaGVhZGVyLCAucGFuZWwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhLnN1YmhlYWRlciwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSAucGFuZWwgYS5zdWJoZWFkZXIsIC5wYW5lbCBoNi5zdWJoZWFkZXIge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAucGFuZWwuY2FsbG91dCB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBib3JkZXItY29sb3I6ICNkOGQ4ZDg7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xMTExMXJlbTtcbiAgICBwYWRkaW5nOiAxLjExMTExcmVtO1xuICAgIGJhY2tncm91bmQ6ICNmM2Y5ZmQ7XG4gICAgY29sb3I6ICMzMzMzMzM7IH1cbiAgICAucGFuZWwuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLnBhbmVsLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnBhbmVsLmNhbGxvdXQgaDEsIC5wYW5lbC5jYWxsb3V0IGgyLCAucGFuZWwuY2FsbG91dCBoMywgLnBhbmVsLmNhbGxvdXQgaDQsIC5wYW5lbC5jYWxsb3V0IGg1LCAucGFuZWwuY2FsbG91dCAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpIGEsIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgLnBhbmVsLmNhbGxvdXQgYSwgLnBhbmVsLmNhbGxvdXQgaDYsIC5wYW5lbC5jYWxsb3V0IHAsIC5wYW5lbC5jYWxsb3V0IGxpLCAucGFuZWwuY2FsbG91dCBkbCB7XG4gICAgICBjb2xvcjogIzMzMzMzMzsgfVxuICAgIC5wYW5lbC5jYWxsb3V0IGgxLCAucGFuZWwuY2FsbG91dCBoMiwgLnBhbmVsLmNhbGxvdXQgaDMsIC5wYW5lbC5jYWxsb3V0IGg0LCAucGFuZWwuY2FsbG91dCBoNSwgLnBhbmVsLmNhbGxvdXQgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhLCAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpIC5wYW5lbC5jYWxsb3V0IGEsIC5wYW5lbC5jYWxsb3V0IGg2IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41NTU1NnJlbTsgfVxuICAgICAgLnBhbmVsLmNhbGxvdXQgaDEuc3ViaGVhZGVyLCAucGFuZWwuY2FsbG91dCBoMi5zdWJoZWFkZXIsIC5wYW5lbC5jYWxsb3V0IGgzLnN1YmhlYWRlciwgLnBhbmVsLmNhbGxvdXQgaDQuc3ViaGVhZGVyLCAucGFuZWwuY2FsbG91dCBoNS5zdWJoZWFkZXIsIC5wYW5lbC5jYWxsb3V0IC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYS5zdWJoZWFkZXIsIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgLnBhbmVsLmNhbGxvdXQgYS5zdWJoZWFkZXIsIC5wYW5lbC5jYWxsb3V0IGg2LnN1YmhlYWRlciB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAucGFuZWwuY2FsbG91dCBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogIzM0OThEQjsgfVxuICAgICAgLnBhbmVsLmNhbGxvdXQgYTpub3QoLmJ1dHRvbik6aG92ZXIsIC5wYW5lbC5jYWxsb3V0IGE6bm90KC5idXR0b24pOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMyMzg1YzY7IH1cbiAgLnBhbmVsLnJhZGl1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi8qIFByaWNpbmcgVGFibGVzICovXG4ucHJpY2luZy10YWJsZSB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNEREREREQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjExMTExcmVtOyB9XG4gIC5wcmljaW5nLXRhYmxlICoge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnByaWNpbmctdGFibGUgLnRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICAgIGNvbG9yOiAjRUVFRUVFO1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDAuODg4ODlyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwLjgzMzMzcmVtIDEuMTExMTFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcmljaW5nLXRhYmxlIC5wcmljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjc3Nzc4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMC44MzMzM3JlbSAxLjExMTExcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucHJpY2luZy10YWJsZSAuZGVzY3JpcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjREREREREO1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGZvbnQtc2l6ZTogMC42NjY2N3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgcGFkZGluZzogMC44MzMzM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByaWNpbmctdGFibGUgLmJ1bGxldC1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggI0RERERERDtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwLjgzMzMzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucHJpY2luZy10YWJsZSAuY3RhLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBwYWRkaW5nOiAxLjExMTExcmVtIDEuMTExMTFyZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogUHJvZ3Jlc3MgQmFyICovXG4ucHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgaGVpZ2h0OiAxLjM4ODg5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjU1NTU2cmVtO1xuICBwYWRkaW5nOiAwLjExMTExcmVtOyB9XG4gIC5wcm9ncmVzcyAubWV0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAwJTsgfVxuICAgIC5wcm9ncmVzcyAubWV0ZXIuc2Vjb25kYXJ5IHtcbiAgICAgIGJhY2tncm91bmQ6IGhvdHBpbms7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDAlOyB9XG4gICAgLnByb2dyZXNzIC5tZXRlci5zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQ6ICM0M0FDNkE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDAlOyB9XG4gICAgLnByb2dyZXNzIC5tZXRlci5hbGVydCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjA0MTI0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAwJTsgfVxuICAucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5tZXRlciB7XG4gICAgYmFja2dyb3VuZDogaG90cGluaztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDAlOyB9XG4gIC5wcm9ncmVzcy5zdWNjZXNzIC5tZXRlciB7XG4gICAgYmFja2dyb3VuZDogIzQzQUM2QTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDAlOyB9XG4gIC5wcm9ncmVzcy5hbGVydCAubWV0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmMDQxMjQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAwJTsgfVxuICAucHJvZ3Jlc3MucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAucHJvZ3Jlc3MucmFkaXVzIC5tZXRlciB7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLnByb2dyZXNzLnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cbiAgICAucHJvZ3Jlc3Mucm91bmQgLm1ldGVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4OyB9XG5cbi5yZXZlYWwtbW9kYWwtYmcge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwNDtcbiAgbGVmdDogMDsgfVxuXG4ucmV2ZWFsLW1vZGFsIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwNTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMS42NjY2N3JlbTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzY2NjY2NjtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5yZXZlYWwtbW9kYWwge1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7IH0gfVxuICAucmV2ZWFsLW1vZGFsIC5jb2x1bW4sIC5yZXZlYWwtbW9kYWwgLmNvbHVtbnMge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsLW1vZGFsID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5yZXZlYWwtbW9kYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5yZXZlYWwtbW9kYWwge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2Mi41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogODAlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAucmV2ZWFsLW1vZGFsIHtcbiAgICAgIHRvcDogNS41NTU1NnJlbTsgfSB9XG4gIC5yZXZlYWwtbW9kYWwucmFkaXVzIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAucmV2ZWFsLW1vZGFsLnJvdW5kIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMDBweDsgfVxuICAucmV2ZWFsLW1vZGFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAucmV2ZWFsLW1vZGFsLnRpbnkge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2Mi41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMzAlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAucmV2ZWFsLW1vZGFsLnNtYWxsIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogNjIuNXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDQwJTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLnJldmVhbC1tb2RhbC5tZWRpdW0ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2Mi41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAucmV2ZWFsLW1vZGFsLmxhcmdlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogNjIuNXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDcwJTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLnJldmVhbC1tb2RhbC54bGFyZ2Uge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2Mi41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogOTUlOyB9IH1cbiAgLnJldmVhbC1tb2RhbC5mdWxsIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgdG9wOiAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAgIC5yZXZlYWwtbW9kYWwuZnVsbCB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDYyLjVyZW07XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5yZXZlYWwtbW9kYWwudG9iYWNrIHtcbiAgICB6LWluZGV4OiAxMDAzOyB9XG4gIC5yZXZlYWwtbW9kYWwgLmNsb3NlLXJldmVhbC1tb2RhbCB7XG4gICAgY29sb3I6ICNBQUFBQUE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMi4yMjIyMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjU1NTU2cmVtO1xuICAgIHJpZ2h0OiAxLjIyMjIycmVtOyB9XG5cbi5zaWRlLW5hdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjc3Nzc4cmVtIDA7IH1cbiAgLnNpZGUtbmF2IGxpIHtcbiAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDAgMCAwLjM4ODg5cmVtIDA7IH1cbiAgICAuc2lkZS1uYXYgbGkgYTpub3QoLmJ1dHRvbikge1xuICAgICAgY29sb3I6ICMzNDk4REI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAuMzg4ODlyZW0gMC43Nzc3OHJlbTsgfVxuICAgICAgLnNpZGUtbmF2IGxpIGE6bm90KC5idXR0b24pOmhvdmVyLCAuc2lkZS1uYXYgbGkgYTpub3QoLmJ1dHRvbik6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDI1KTtcbiAgICAgICAgY29sb3I6ICM3MWI3ZTY7IH1cbiAgICAgIC5zaWRlLW5hdiBsaSBhOm5vdCguYnV0dG9uKTphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzcxYjdlNjsgfVxuICAgIC5zaWRlLW5hdiBsaS5hY3RpdmUgPiBhOmZpcnN0LWNoaWxkOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogIzcxYjdlNjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAuc2lkZS1uYXYgbGkuZGl2aWRlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNlNmU2ZTY7IH1cbiAgICAuc2lkZS1uYXYgbGkuaGVhZGluZyB7XG4gICAgICBjb2xvcjogIzM0OThEQjtcbiAgICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uc3BsaXQuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiA0LjVyZW07IH1cbiAgLnNwbGl0LmJ1dHRvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItbGVmdDogc29saWQgMXB4OyB9XG4gICAgLnNwbGl0LmJ1dHRvbiBzcGFuOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyLXN0eWxlOiBpbnNldDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlOyB9XG4gICAgLnNwbGl0LmJ1dHRvbiBzcGFuOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLnNwbGl0LmJ1dHRvbiBzcGFuIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIC5zcGxpdC5idXR0b24gc3BhbiB7XG4gICAgd2lkdGg6IDIuNzVyZW07IH1cbiAgICAuc3BsaXQuYnV0dG9uIHNwYW46YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDAuMzMzMzNyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuMzMzMzNyZW07XG4gICAgICB0b3A6IDQ4JTsgfVxuICAuc3BsaXQuYnV0dG9uIHNwYW46YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuc3BsaXQuYnV0dG9uLnNlY29uZGFyeSBzcGFuIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIC5zcGxpdC5idXR0b24uc2Vjb25kYXJ5IHNwYW46YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuc3BsaXQuYnV0dG9uLmFsZXJ0IHNwYW4ge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLnNwbGl0LmJ1dHRvbi5zdWNjZXNzIHNwYW4ge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLnNwbGl0LmJ1dHRvbi50aW55IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjMzMzMzcmVtOyB9XG4gICAgLnNwbGl0LmJ1dHRvbi50aW55IHNwYW4ge1xuICAgICAgd2lkdGg6IDJyZW07IH1cbiAgICAgIC5zcGxpdC5idXR0b24udGlueSBzcGFuOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogMC4zMzMzM3JlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjMzMzMzcmVtO1xuICAgICAgICB0b3A6IDQ4JTsgfVxuICAuc3BsaXQuYnV0dG9uLnNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjg4ODg5cmVtOyB9XG4gICAgLnNwbGl0LmJ1dHRvbi5zbWFsbCBzcGFuIHtcbiAgICAgIHdpZHRoOiAyLjMzMzMzcmVtOyB9XG4gICAgICAuc3BsaXQuYnV0dG9uLnNtYWxsIHNwYW46YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwLjM4ODg5cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuMzMzMzNyZW07XG4gICAgICAgIHRvcDogNDglOyB9XG4gIC5zcGxpdC5idXR0b24ubGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQuODg4ODlyZW07IH1cbiAgICAuc3BsaXQuYnV0dG9uLmxhcmdlIHNwYW4ge1xuICAgICAgd2lkdGg6IDMuMDU1NTZyZW07IH1cbiAgICAgIC5zcGxpdC5idXR0b24ubGFyZ2Ugc3BhbjphZnRlciB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAuMjc3NzhyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC4zMzMzM3JlbTtcbiAgICAgICAgdG9wOiA0OCU7IH1cbiAgLnNwbGl0LmJ1dHRvbi5leHBhbmQge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICAuc3BsaXQuYnV0dG9uLnNlY29uZGFyeSBzcGFuOmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6ICMzMzMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLnNwbGl0LmJ1dHRvbi5yYWRpdXMgc3BhbiB7XG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7IH1cbiAgLnNwbGl0LmJ1dHRvbi5yb3VuZCBzcGFuIHtcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTAwMHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAwcHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwMDBweDsgfVxuICAuc3BsaXQuYnV0dG9uLm5vLXBpcCBzcGFuOmJlZm9yZSB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG4gIC5zcGxpdC5idXR0b24ubm8tcGlwIHNwYW46YWZ0ZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuICAuc3BsaXQuYnV0dG9uLm5vLXBpcCBzcGFuID4gaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yODg4OWVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjQ4ODg5ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlOyB9XG5cbi5zdWItbmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogLTAuMjIyMjJyZW0gMCAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogMC4yMjIyMnJlbTtcbiAgd2lkdGg6IGF1dG87IH1cbiAgLnN1Yi1uYXYgZHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnN1Yi1uYXYgZHQsXG4gIC5zdWItbmF2IGRkLFxuICAuc3ViLW5hdiBsaSB7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjg4ODg5cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuc3ViLW5hdiBkdCBhLFxuICAgIC5zdWItbmF2IGRkIGEsXG4gICAgLnN1Yi1uYXYgbGkgYSB7XG4gICAgICBjb2xvcjogIzk5OTk5OTtcbiAgICAgIHBhZGRpbmc6IDAuMTY2NjdyZW0gMC44ODg4OXJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnN1Yi1uYXYgZHQgYTpob3ZlcixcbiAgICAgIC5zdWItbmF2IGRkIGE6aG92ZXIsXG4gICAgICAuc3ViLW5hdiBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICM3MzczNzM7IH1cbiAgICAuc3ViLW5hdiBkdC5hY3RpdmUgYSxcbiAgICAuc3ViLW5hdiBkZC5hY3RpdmUgYSxcbiAgICAuc3ViLW5hdiBsaS5hY3RpdmUgYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzQ5OERCO1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgcGFkZGluZzogMC4xNjY2N3JlbSAwLjg4ODg5cmVtOyB9XG4gICAgICAuc3ViLW5hdiBkdC5hY3RpdmUgYTpob3ZlcixcbiAgICAgIC5zdWItbmF2IGRkLmFjdGl2ZSBhOmhvdmVyLFxuICAgICAgLnN1Yi1uYXYgbGkuYWN0aXZlIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjM4NWM2OyB9XG5cbi5zd2l0Y2gge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5zd2l0Y2ggbGFiZWwge1xuICAgIGJhY2tncm91bmQ6ICNEREREREQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWluZGVudDogMTAwJTtcbiAgICB3aWR0aDogNHJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgdHJhbnNpdGlvbjogbGVmdCAwLjE1cyBlYXNlLW91dDsgfVxuICAuc3dpdGNoIGlucHV0IHtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA5cHg7IH1cbiAgICAuc3dpdGNoIGlucHV0ICsgbGFiZWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnN3aXRjaCBsYWJlbDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGxlZnQ6IC4yNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAuMjVyZW07XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4xNXMgZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IDAuMTVzIGVhc2Utb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb246IGxlZnQgMC4xNXMgZWFzZS1vdXQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLnN3aXRjaCBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7IH1cbiAgLnN3aXRjaCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGxlZnQ6IDIuMjVyZW07IH1cbiAgLnN3aXRjaCBsYWJlbCB7XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiA0cmVtOyB9XG4gIC5zd2l0Y2ggbGFiZWw6YWZ0ZXIge1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIHdpZHRoOiAxLjVyZW07IH1cbiAgLnN3aXRjaCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGxlZnQ6IDIuMjVyZW07IH1cbiAgLnN3aXRjaCBsYWJlbCB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6ICNEREREREQ7IH1cbiAgLnN3aXRjaCBsYWJlbDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjsgfVxuICAuc3dpdGNoIGlucHV0OmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYmFja2dyb3VuZDogIzM0OThEQjsgfVxuICAuc3dpdGNoLmxhcmdlIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICB3aWR0aDogNXJlbTsgfVxuICAuc3dpdGNoLmxhcmdlIGxhYmVsOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgd2lkdGg6IDJyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGxlZnQ6IDIuNzVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCBsYWJlbCB7XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIHdpZHRoOiAzLjVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCBsYWJlbDphZnRlciB7XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHdpZHRoOiAxLjI1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBsZWZ0OiAycmVtOyB9XG4gIC5zd2l0Y2gudGlueSBsYWJlbCB7XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgd2lkdGg6IDNyZW07IH1cbiAgLnN3aXRjaC50aW55IGxhYmVsOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgd2lkdGg6IDFyZW07IH1cbiAgLnN3aXRjaC50aW55IGlucHV0OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgbGVmdDogMS43NXJlbTsgfVxuICAuc3dpdGNoLnJhZGl1cyBsYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5zd2l0Y2gucmFkaXVzIGxhYmVsOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgLnN3aXRjaC5yb3VuZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwMHB4OyB9XG4gICAgLnN3aXRjaC5yb3VuZCBsYWJlbCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAycmVtOyB9XG4gICAgLnN3aXRjaC5yb3VuZCBsYWJlbDphZnRlciB7XG4gICAgICBib3JkZXItcmFkaXVzOiAycmVtOyB9XG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0FBQUFBQTtcbiAgbWFyZ2luLWJvdHRvbTogMS4xMTExMXJlbTtcbiAgdGFibGUtbGF5b3V0OiBhdXRvOyB9XG4gIHRhYmxlIGNhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIGZvbnQtc2l6ZTogMC42NjY2N3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gIHRhYmxlIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjREREREREOyB9XG4gICAgdGFibGUgdGhlYWQgdHIgdGgsXG4gICAgdGFibGUgdGhlYWQgdHIgdGQge1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmc6IDAuNDQ0NDRyZW0gMC41NTU1NnJlbSAwLjU1NTU2cmVtOyB9XG4gIHRhYmxlIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjREREREREOyB9XG4gICAgdGFibGUgdGZvb3QgdHIgdGgsXG4gICAgdGFibGUgdGZvb3QgdHIgdGQge1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmc6IDAuNDQ0NDRyZW0gMC41NTU1NnJlbSAwLjU1NTU2cmVtOyB9XG4gIHRhYmxlIHRyIHRoLFxuICB0YWJsZSB0ciB0ZCB7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgZm9udC1zaXplOiAwLjc3Nzc4cmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjU1NTU2cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGFibGUgdHIuZXZlbiwgdGFibGUgdHIuYWx0LCB0YWJsZSB0cjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgYmFja2dyb3VuZDogI0RERERERDsgfVxuICB0YWJsZSB0aGVhZCB0ciB0aCxcbiAgdGFibGUgdGZvb3QgdHIgdGgsXG4gIHRhYmxlIHRmb290IHRyIHRkLFxuICB0YWJsZSB0Ym9keSB0ciB0aCxcbiAgdGFibGUgdGJvZHkgdHIgdGQsXG4gIHRhYmxlIHRyIHRkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtOyB9XG5cbi50YWJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAudGFiczpiZWZvcmUsIC50YWJzOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudGFiczphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRhYnMgZGQsXG4gIC50YWJzIC50YWItdGl0bGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC50YWJzIGRkID4gYSxcbiAgICAudGFicyAudGFiLXRpdGxlID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRkVGRUY7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44ODg4OXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuODg4ODlyZW0gMS43Nzc3OHJlbTsgfVxuICAgICAgLnRhYnMgZGQgPiBhOmhvdmVyLFxuICAgICAgLnRhYnMgLnRhYi10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFlMWUxOyB9XG4gICAgLnRhYnMgZGQuYWN0aXZlID4gYSxcbiAgICAudGFicyAudGFiLXRpdGxlLmFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC50YWJzLnJhZGl1cyBkZDpmaXJzdC1jaGlsZCBhLFxuICAudGFicy5yYWRpdXMgLnRhYjpmaXJzdC1jaGlsZCBhIHtcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4OyB9XG4gIC50YWJzLnJhZGl1cyBkZDpsYXN0LWNoaWxkIGEsXG4gIC50YWJzLnJhZGl1cyAudGFiOmxhc3QtY2hpbGQgYSB7XG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7IH1cbiAgLnRhYnMudmVydGljYWwgZGQsXG4gIC50YWJzLnZlcnRpY2FsIC50YWItdGl0bGUge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogYXV0bzsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnRhYnMtY29udGVudDpiZWZvcmUsIC50YWJzLWNvbnRlbnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC50YWJzLWNvbnRlbnQ6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC50YWJzLWNvbnRlbnQgPiAuY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudGFicy1jb250ZW50ID4gLmNvbnRlbnQuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAudGFicy1jb250ZW50ID4gLmNvbnRlbnQuY29udGFpbmVkIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW07IH1cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAudGFicy1jb250ZW50LnZlcnRpY2FsID4gLmNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCAwLjc1cmVtOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMjAlO1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHdpZHRoOiA4MCU7IH0gfVxuXG4ubm8tanMgLnRhYnMtY29udGVudCA+IC5jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lOyB9XG5cbi8qIEltYWdlIFRodW1ibmFpbHMgKi9cbi50aCB7XG4gIGJvcmRlcjogc29saWQgNHB4ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2Utb3V0OyB9XG4gIC50aDpob3ZlciwgLnRoOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDUyLCAxNTIsIDIxOSwgMC41KTsgfVxuICAudGgucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cblxuLyogVG9vbHRpcHMgKi9cbi5oYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjQ0NDQ0NDO1xuICBjb2xvcjogIzMzMzMzMztcbiAgY3Vyc29yOiBoZWxwO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuaGFzLXRpcDpob3ZlciwgLmhhcy10aXA6Zm9jdXMge1xuICAgIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzEyNDU2ODtcbiAgICBjb2xvcjogIzM0OThEQjsgfVxuICAuaGFzLXRpcC50aXAtbGVmdCwgLmhhcy10aXAudGlwLXJpZ2h0IHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50b29sdGlwIHtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMC42NjY2N3JlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwNjtcbiAgbGVmdDogNTAlOyB9XG4gIC50b29sdGlwID4gLm51YiB7XG4gICAgYm9yZGVyOiBzb2xpZCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzMzMzIHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTBweDtcbiAgICB3aWR0aDogMDtcbiAgICBsZWZ0OiA1cHg7IH1cbiAgICAudG9vbHRpcCA+IC5udWIucnRsIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogNXB4OyB9XG4gIC50b29sdGlwLnJhZGl1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gIC50b29sdGlwLnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cbiAgICAudG9vbHRpcC5yb3VuZCA+IC5udWIge1xuICAgICAgbGVmdDogMnJlbTsgfVxuICAudG9vbHRpcC5vcGVuZWQge1xuICAgIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzEyNDU2OCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMzQ5OERCICFpbXBvcnRhbnQ7IH1cblxuLnRhcC10by1jbG9zZSB7XG4gIGNvbG9yOiAjNzc3Nzc3O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjU1NTU2cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuODEyNWVtKSB7XG4gIC50b29sdGlwID4gLm51YiB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzMzMzIHRyYW5zcGFyZW50O1xuICAgIHRvcDogLTEwcHg7IH1cbiAgLnRvb2x0aXAudGlwLXRvcCA+IC5udWIge1xuICAgIGJvcmRlci1jb2xvcjogIzMzMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3R0b206IC0xMHB4O1xuICAgIHRvcDogYXV0bzsgfVxuICAudG9vbHRpcC50aXAtbGVmdCwgLnRvb2x0aXAudGlwLXJpZ2h0IHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC50b29sdGlwLnRpcC1sZWZ0ID4gLm51YiB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzMzMzO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICByaWdodDogLTEwcHg7XG4gICAgdG9wOiA1MCU7IH1cbiAgLnRvb2x0aXAudGlwLXJpZ2h0ID4gLm51YiB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMzMzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiA1MCU7IH0gfVxuXG5tZXRhLmZvdW5kYXRpb24tbXEtdG9wYmFyIHtcbiAgZm9udC1mYW1pbHk6IFwiL29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjUwLjA2MjVlbSkvXCI7XG4gIHdpZHRoOiA1MC4wNjI1ZW07IH1cblxuLyogV3JhcHBlZCBhcm91bmQgLnRvcC1iYXIgdG8gY29udGFpbiB0byBncmlkIHdpZHRoICovXG4uY29udGFpbi10by1ncmlkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7IH1cbiAgLmNvbnRhaW4tdG8tZ3JpZCAudG9wLWJhciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5O1xuICBsZWZ0OiAwOyB9XG4gIC5maXhlZC5leHBhbmRlZDpub3QoLnRvcC1iYXIpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmZpeGVkLmV4cGFuZGVkOm5vdCgudG9wLWJhcikgLnRpdGxlLWFyZWEge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiA5OTsgfVxuICAgIC5maXhlZC5leHBhbmRlZDpub3QoLnRvcC1iYXIpIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgICAgei1pbmRleDogOTg7IH1cblxuLnRvcC1iYXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC50b3AtYmFyIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRvcC1iYXIgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC50b3AtYmFyIGZvcm0sXG4gIC50b3AtYmFyIGlucHV0LFxuICAudG9wLWJhciBzZWxlY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRvcC1iYXIgaW5wdXQsXG4gIC50b3AtYmFyIHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGhlaWdodDogMS41NTU1NnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjM1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAuMzVyZW07IH1cbiAgLnRvcC1iYXIgLmJ1dHRvbiwgLnRvcC1iYXIgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC40MDU1NnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMC40MDU1NnJlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLnRvcC1iYXIgLmJ1dHRvbiwgLnRvcC1iYXIgYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0xcHg7IH0gfVxuICAudG9wLWJhciAudGl0bGUtYXJlYSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudG9wLWJhciAubmFtZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC50b3AtYmFyIC5uYW1lIGgxLCAudG9wLWJhciAubmFtZSBoMiwgLnRvcC1iYXIgLm5hbWUgaDMsIC50b3AtYmFyIC5uYW1lIGg0LCAudG9wLWJhciAubmFtZSBwLCAudG9wLWJhciAubmFtZSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45NDQ0NHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC50b3AtYmFyIC5uYW1lIGgxIGEsIC50b3AtYmFyIC5uYW1lIGgyIGEsIC50b3AtYmFyIC5uYW1lIGgzIGEsIC50b3AtYmFyIC5uYW1lIGg0IGEsIC50b3AtYmFyIC5uYW1lIHAgYSwgLnRvcC1iYXIgLm5hbWUgc3BhbiBhIHtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAwIDAuODMzMzNyZW07XG4gICAgICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRvcC1iYXIgLnRvZ2dsZS10b3BiYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7IH1cbiAgICAudG9wLWJhciAudG9nZ2xlLXRvcGJhciBhIHtcbiAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuNzIyMjJyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAgMC44MzMzM3JlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAudG9wLWJhciAudG9nZ2xlLXRvcGJhci5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgICB0b3A6IDUwJTsgfVxuICAgICAgLnRvcC1iYXIgLnRvZ2dsZS10b3BiYXIubWVudS1pY29uIGEge1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgcGFkZGluZzogMCAyLjIyMjIycmVtIDAgMC44MzMzM3JlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC50b3AtYmFyIC50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbiBhIHNwYW46OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICByaWdodDogMC44MzMzM3JlbTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0ZGRkZGRiwgMCA3cHggMCAxcHggI0ZGRkZGRiwgMCAxNHB4IDAgMXB4ICNGRkZGRkY7XG4gICAgICAgICAgd2lkdGg6IDE2cHg7IH1cbiAgICAgICAgLnRvcC1iYXIgLnRvZ2dsZS10b3BiYXIubWVudS1pY29uIGEgc3Bhbjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IFwiXCIsIDAgN3B4IDAgMXB4IFwiXCIsIDAgMTRweCAwIDFweCBcIlwiOyB9XG4gIC50b3AtYmFyLmV4cGFuZGVkIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAudG9wLWJhci5leHBhbmRlZCAudGl0bGUtYXJlYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzMzMzMzOyB9XG4gICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvZ2dsZS10b3BiYXIgYSB7XG4gICAgICBjb2xvcjogIzg4ODg4ODsgfVxuICAgICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvZ2dsZS10b3BiYXIgYSBzcGFuOjphZnRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjODg4ODg4LCAwIDdweCAwIDFweCAjODg4ODg4LCAwIDE0cHggMCAxcHggIzg4ODg4ODsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgICAgIC50b3AtYmFyLmV4cGFuZGVkIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5tb3ZlZCA+IC5kcm9wZG93bixcbiAgICAgIC50b3AtYmFyLmV4cGFuZGVkIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIHtcbiAgICAgICAgY2xpcDogaW5pdGlhbDsgfVxuICAgICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWRyb3Bkb3duOm5vdCgubW92ZWQpID4gdWwge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnRvcC1iYXItc2VjdGlvbiB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRyYW5zaXRpb246IGxlZnQgMzAwbXMgZWFzZS1vdXQ7IH1cbiAgLnRvcC1iYXItc2VjdGlvbiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudG9wLWJhci1zZWN0aW9uIC5kaXZpZGVyLFxuICAudG9wLWJhci1zZWN0aW9uIFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzFhMWExYTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudG9wLWJhci1zZWN0aW9uIHVsIGxpIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzMzMzMzOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEge1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC43MjIyMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuODMzMzNyZW07XG4gICAgICBwYWRkaW5nOiAxMnB4IDAgMTJweCAwLjgzMzMzcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjcyMjIycmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuODMzMzNyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuODMzMzNyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDk4REI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzIxN2JiODtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b246Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTdiYjg7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b246Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaG90cGluaztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmYyMTkwO1xuICAgICAgICBjb2xvcjogIzMzMzMzMzsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYyMTkwOyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uc3VjY2VzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0M0FDNkE7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzM2OGE1NTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzY4YTU1OyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5hbGVydCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDQxMjQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NmMmEwZTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLmFsZXJ0OmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZjJhMGU7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLmFsZXJ0OmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24ud2FybmluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDhhMjQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NmNmUwZTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2Y2ZTBlOyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVCQjFEMztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMzM5N2JlO1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYS5idXR0b24uaW5mbzpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLmluZm86Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzk3YmU7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEuYnV0dG9uLmluZm86aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBhLmJ1dHRvbi5pbmZvOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24ge1xuICAgICAgZm9udC1zaXplOiAwLjcyMjIycmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjgzMzMzcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC44MzMzM3JlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDk4REI7XG4gICAgICBib3JkZXItY29sb3I6ICMyMTdiYjg7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbjpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTdiYjg7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b246aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b246Zm9jdXMge1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBob3RwaW5rO1xuICAgICAgICBib3JkZXItY29sb3I6ICNmZjIxOTA7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzOyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMjE5MDsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLnN1Y2Nlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDNBQzZBO1xuICAgICAgICBib3JkZXItY29sb3I6ICMzNjhhNTU7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24uc3VjY2Vzczpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzY4YTU1OyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24uc3VjY2Vzczpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5hbGVydCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDQxMjQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NmMmEwZTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5hbGVydDpob3ZlciwgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmMmEwZTsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLmFsZXJ0OmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi53YXJuaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwOGEyNDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2Y2ZTBlO1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLndhcm5pbmc6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmNmUwZTsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLndhcm5pbmc6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkgPiBidXR0b24uaW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1QkIxRDM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzMzOTdiZTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5pbmZvOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLmluZm86Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzk3YmU7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGJ1dHRvbi5pbmZvOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYnV0dG9uLmluZm86Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaTpob3Zlcjpub3QoLmhhcy1mb3JtKSA+IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbiAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgYmFja2dyb3VuZDogIzIyMjIyMjsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkuYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzQ5OERCO1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkuYWN0aXZlID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMzg1YzY7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1mb3JtIHtcbiAgICBwYWRkaW5nOiAwLjgzMzMzcmVtOyB9XG4gIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWRyb3Bkb3duID4gYTphZnRlciB7XG4gICAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuODMzMzNyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtNC41cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWRyb3Bkb3duLm1vdmVkIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5tb3ZlZCA+IC5kcm9wZG93biB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIGNsaXA6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5tb3ZlZCA+IGE6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpIGEge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiA4cHggMC44MzMzM3JlbTsgfVxuICAgICAgICAudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaSBhLnBhcmVudC1saW5rIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaS50aXRsZSBoNSwgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaS50aXRsZSBhLCAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpLnRpdGxlIGEsIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpLnBhcmVudC1saW5rIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpLnRpdGxlIGg1IGEsIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkudGl0bGUgYSBhLCAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpLnRpdGxlIGEgYSwgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkucGFyZW50LWxpbmsgYSB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgICAudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaS50aXRsZSBoNSBhOmhvdmVyLCAudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpLnRpdGxlIGEgYTpob3ZlciwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCAudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaS50aXRsZSBhIGE6aG92ZXIsIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpLnBhcmVudC1saW5rIGE6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkuaGFzLWZvcm0ge1xuICAgICAgICBwYWRkaW5nOiA4cHggMC44MzMzM3JlbTsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkgLmJ1dHRvbixcbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpIGJ1dHRvbiB7XG4gICAgICAgIHRvcDogYXV0bzsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgICAgZm9udC1zaXplOiAwLjU1NTU2cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogOHB4IDAuODMzMzNyZW0gMnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uanMtZ2VuZXJhdGVkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgLnRvcC1iYXIge1xuICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAudG9wLWJhcjpiZWZvcmUsIC50b3AtYmFyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAudG9wLWJhcjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC50b3AtYmFyIC50b2dnbGUtdG9wYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudG9wLWJhciAudGl0bGUtYXJlYSB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgIC50b3AtYmFyIC5uYW1lIGgxIGEsXG4gICAgLnRvcC1iYXIgLm5hbWUgaDIgYSxcbiAgICAudG9wLWJhciAubmFtZSBoMyBhLFxuICAgIC50b3AtYmFyIC5uYW1lIGg0IGEsXG4gICAgLnRvcC1iYXIgLm5hbWUgaDUgYSxcbiAgICAudG9wLWJhciAubmFtZSAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpIGEgYSxcbiAgICAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsIGxpIC50b3AtYmFyIC5uYW1lIGEgYSxcbiAgICAudG9wLWJhciAubmFtZSBoNiBhIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLnRvcC1iYXIgaW5wdXQsXG4gICAgLnRvcC1iYXIgc2VsZWN0LFxuICAgIC50b3AtYmFyIC5idXR0b24sXG4gICAgLnRvcC1iYXIgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICAgIGhlaWdodDogMS41NTU1NnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMC40NzIyMnJlbTsgfVxuICAgIC50b3AtYmFyIC5oYXMtZm9ybSA+IC5idXR0b24sXG4gICAgLnRvcC1iYXIgLmhhcy1mb3JtID4gYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICAgIGhlaWdodDogMS41NTU1NnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMC40NzIyMnJlbTsgfVxuICAgIC50b3AtYmFyLmV4cGFuZGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7IH1cbiAgLmNvbnRhaW4tdG8tZ3JpZCAudG9wLWJhciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtd2lkdGg6IDYyLjVyZW07IH1cbiAgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZSAwIDA7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiB1bCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIHVsIGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSAuanMtZ2VuZXJhdGVkIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiBsaS5ob3ZlciA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTU1NTU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjIyMjIyO1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAudG9wLWJhci1zZWN0aW9uIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgcGFkZGluZzogMCAwLjgzMzMzcmVtOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbiAgICAgICAgYmFja2dyb3VuZDogIzIyMjIyMjsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gbGkuYWN0aXZlOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAuODMzMzNyZW07IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gbGkuYWN0aXZlOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIzODVjNjtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAudG9wLWJhci1zZWN0aW9uIC5oYXMtZHJvcGRvd24gPiBhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOTQ0NDRyZW0gIWltcG9ydGFudDsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWRyb3Bkb3duID4gYTphZnRlciB7XG4gICAgICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMi41cHg7XG4gICAgICAgIHRvcDogMS4yNXJlbTsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5tb3ZlZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5tb3ZlZCA+IC5kcm9wZG93biB7XG4gICAgICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bi5ob3ZlciA+IC5kcm9wZG93biwgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWRyb3Bkb3duLm5vdC1jbGljazpob3ZlciA+IC5kcm9wZG93biB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH1cbiAgICAudG9wLWJhci1zZWN0aW9uIC5oYXMtZHJvcGRvd24gPiBhOmZvY3VzICsgLmRyb3Bkb3duIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBjbGlwOiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93biAuZHJvcGRvd24gbGkuaGFzLWRyb3Bkb3duID4gYTphZnRlciB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjb250ZW50OiBcIlxcMDBiYlwiO1xuICAgICAgdG9wOiAwLjE2NjY3cmVtO1xuICAgICAgcmlnaHQ6IDVweDsgfVxuICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIHRvcDogYXV0bzsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDAuODMzMzNyZW07XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pOm5vdCguYWN0aXZlKSA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pOm5vdCguYWN0aXZlKTpob3ZlciA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMjIyMjI7IH1cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpIGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkgLmRyb3Bkb3duIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiA+IHVsID4gLmRpdmlkZXIsXG4gICAgLnRvcC1iYXItc2VjdGlvbiA+IHVsID4gW3JvbGU9XCJzZXBhcmF0b3JcIl0ge1xuICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggIzRlNGU0ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIHdpZHRoOiAwOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAuaGFzLWZvcm0ge1xuICAgICAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgcGFkZGluZzogMCAwLjgzMzMzcmVtOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAucmlnaHQgbGkgLmRyb3Bkb3duIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLnRvcC1iYXItc2VjdGlvbiAucmlnaHQgbGkgLmRyb3Bkb3duIGxpIC5kcm9wZG93biB7XG4gICAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLnRvcC1iYXItc2VjdGlvbiAubGVmdCBsaSAuZHJvcGRvd24ge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgICAudG9wLWJhci1zZWN0aW9uIC5sZWZ0IGxpIC5kcm9wZG93biBsaSAuZHJvcGRvd24ge1xuICAgICAgICBsZWZ0OiAxMDAlOyB9XG4gIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHVsIGxpOmhvdmVyID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbiAgICBiYWNrZ3JvdW5kOiAjMjIyMjIyO1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHVsIGxpOmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLm5vLWpzIC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93bjpob3ZlciA+IC5kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB9XG4gIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIC5oYXMtZHJvcGRvd24gPiBhOmZvY3VzICsgLmRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH0gfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAuc21hbGwtb25seS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAuc21hbGwtb25seS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC5zbWFsbC1vbmx5LXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuc21hbGwtb25seS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzMuODEyNWVtKSB7XG4gIC5zbWFsbC10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAuc21hbGwtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAuc21hbGwtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5zbWFsbC10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW9ubHktdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vbmx5LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLm1lZGl1bS1vbmx5LXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLW9ubHktdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIGFuZCAobWF4LXdpZHRoOiA5MGVtKSB7XG4gIC5sYXJnZS1vbmx5LXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vbmx5LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLmxhcmdlLW9ubHktdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS1vbmx5LXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MC4wNjI1ZW0pIGFuZCAobWF4LXdpZHRoOiAxMjBlbSkge1xuICAueGxhcmdlLW9ubHktdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLnhsYXJnZS1vbmx5LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnhsYXJnZS1vbmx5LXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAueGxhcmdlLW9ubHktdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjA2MjVlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAuMDYyNWVtKSBhbmQgKG1heC13aWR0aDogNjI0OTk5OS45Mzc1ZW0pIHtcbiAgLnh4bGFyZ2Utb25seS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAueHhsYXJnZS1vbmx5LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnh4bGFyZ2Utb25seS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnh4bGFyZ2Utb25seS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwLjA2MjVlbSkge1xuICAueHhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAueHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAueHhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfSB9XG5cbi8qIFR5cG9ncmFwaHkgcmVzZXRzICovXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhLFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cbmEge1xuICBjb2xvcjogIzM0OThEQjtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzIzODVjNjsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiBub25lOyB9XG5cbi8qIERlZmF1bHQgcGFyYWdyYXBoIHN0eWxlcyAqL1xucCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1hcmdpbi1ib3R0b206IDEuMTExMTFyZW07XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cbiAgcC5sZWFkIHtcbiAgICBmb250LXNpemU6IDEuMTk0NDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuICBwIGFzaWRlIHtcbiAgICBmb250LXNpemU6IDAuNzc3NzhyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM1OyB9XG5cbi8qIERlZmF1bHQgaGVhZGVyIHN0eWxlcyAqL1xuaDEsIGgyLCBoMywgaDQsXG5oNSxcbi5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSwgaDYge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCBoMiBzbWFsbCwgaDMgc21hbGwsIGg0IHNtYWxsLCBoNSBzbWFsbCwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhIHNtYWxsLCBoNiBzbWFsbCB7XG4gICAgY29sb3I6ICM3YTdhN2E7XG4gICAgZm9udC1zaXplOiA2MCU7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDEuODg4ODlyZW07IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuMjIyMjJyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuMTY2NjdyZW07IH1cblxuaDQge1xuICBmb250LXNpemU6IDAuOTQ0NDRyZW07IH1cblxuXG5oNSxcbi5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSB7XG4gIGZvbnQtc2l6ZTogMS4wNTU1NnJlbTsgfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM3YTdhN2E7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmhyIHtcbiAgYm9yZGVyOiBzb2xpZCAjREREREREO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDA7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4xMTExMXJlbSAwIDEuMDU1NTZyZW07IH1cblxuLyogSGVscGZ1bCBUeXBvZ3JhcGh5IERlZmF1bHRzICovXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDYwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmQyZTk7XG4gIGJvcmRlci1jb2xvcjogI2ZmYTRkMTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LWZhbWlseTogXCJPeHlnZW4gTW9ub1wiLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwLjExMTExcmVtIDAuMjc3NzhyZW0gMC4wNTU1NnJlbTsgfVxuXG4vKiBMaXN0cyAqL1xudWwsXG5vbCxcbmRsIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbWFyZ2luLWJvdHRvbTogMS4xMTExMXJlbTsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjFyZW07IH1cblxuLyogVW5vcmRlcmVkIExpc3RzICovXG51bCBsaSB1bCxcbnVsIGxpIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMTExMTFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxudWwuc3F1YXJlIGxpIHVsLCB1bC5jaXJjbGUgbGkgdWwsIHVsLmRpc2MgbGkgdWwge1xuICBsaXN0LXN0eWxlOiBpbmhlcml0OyB9XG5cbnVsLnNxdWFyZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1xuICBtYXJnaW4tbGVmdDogMS4xcmVtOyB9XG5cbnVsLmNpcmNsZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuICBtYXJnaW4tbGVmdDogMS4xcmVtOyB9XG5cbnVsLmRpc2Mge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gIG1hcmdpbi1sZWZ0OiAxLjFyZW07IH1cblxuLyogT3JkZXJlZCBMaXN0cyAqL1xub2wge1xuICBtYXJnaW4tbGVmdDogMS40cmVtOyB9XG4gIG9sIGxpIHVsLFxuICBvbCBsaSBvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMTExMTFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubm8tYnVsbGV0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAubm8tYnVsbGV0IGxpIHVsLFxuICAubm8tYnVsbGV0IGxpIG9sIHtcbiAgICBtYXJnaW4tbGVmdDogMS4xMTExMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLyogRGVmaW5pdGlvbiBMaXN0cyAqL1xuZGwgZHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmRsIGRkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42NjY2N3JlbTsgfVxuXG4vKiBBYmJyZXZpYXRpb25zICovXG5hYmJyLFxuYWNyb255bSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzMzMzMzMztcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbmFiYnIge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjREREREREOyB9XG5cbi8qIEJsb2NrcXVvdGVzICovXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMS4xMTExMXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDEuMTExMTFyZW0gMCAxLjA1NTU2cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEREREREQ7IH1cbiAgYmxvY2txdW90ZSBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuNzIyMjJyZW07XG4gICAgY29sb3I6ICM2MjYyNjI7IH1cbiAgICBibG9ja3F1b3RlIGNpdGU6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiOyB9XG4gICAgYmxvY2txdW90ZSBjaXRlIGEsXG4gICAgYmxvY2txdW90ZSBjaXRlIGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogIzYyNjI2MjsgfVxuXG5ibG9ja3F1b3RlLFxuYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM3YTdhN2E7IH1cblxuLyogTWljcm9mb3JtYXRzICovXG4udmNhcmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAwIDEuMTExMTFyZW0gMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERERERDtcbiAgcGFkZGluZzogMC41NTU1NnJlbSAwLjY2NjY3cmVtOyB9XG4gIC52Y2FyZCBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC52Y2FyZCAuZm4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMC44MzMzM3JlbTsgfVxuXG4udmV2ZW50IC5zdW1tYXJ5IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnZldmVudCBhYmJyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMC4wNTU1NnJlbTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICBoMSwgaDIsIGgzLCBoNCxcbiAgaDUsXG4gIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSwgaDYge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMi40NDQ0NHJlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjc3Nzc4cmVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuNDQ0NDRyZW07IH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4yMjIyMnJlbTsgfVxuICBcbiAgaDUsXG4gIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSB7XG4gICAgZm9udC1zaXplOiAxLjA1NTU2cmVtOyB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG4vKlxuICAgICAgICogUHJpbnQgc3R5bGVzLlxuICAgICAgICpcbiAgICAgICAqIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiB3d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgICAgICogQ3JlZGl0IHRvIFBhdWwgSXJpc2ggYW5kIEhUTUw1IEJvaWxlcnBsYXRlIChodG1sNWJvaWxlcnBsYXRlLmNvbSlcbiAgICAgICovXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgLyogQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vcyAqL1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgLyogaDVicC5jb20vdCAqLyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuMzRpbjsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH0gfVxuXG4ub2ZmLWNhbnZhcy13cmFwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMtd3JhcC5tb3ZlLXJpZ2h0LCAub2ZmLWNhbnZhcy13cmFwLm1vdmUtbGVmdCwgLm9mZi1jYW52YXMtd3JhcC5tb3ZlLWJvdHRvbSwgLm9mZi1jYW52YXMtd3JhcC5tb3ZlLXRvcCB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cblxuLmlubmVyLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IC1tcy10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlOyB9XG4gIC5pbm5lci13cmFwOmJlZm9yZSwgLmlubmVyLXdyYXA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5pbm5lci13cmFwOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFiLWJhciB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGFiLWJhciBoMSwgLnRhYi1iYXIgaDIsIC50YWItYmFyIGgzLCAudGFiLWJhciBoNCwgLnRhYi1iYXIgaDUsIC50YWItYmFyIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYSwgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSAudGFiLWJhciBhLCAudGFiLWJhciBoNiB7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnRhYi1iYXIgaDEsIC50YWItYmFyIGgyLCAudGFiLWJhciBoMywgLnRhYi1iYXIgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4wNTU1NnJlbTsgfVxuXG4ubGVmdC1zbWFsbCB7XG4gIGhlaWdodDogMi41cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggIzFhMWExYTtcbiAgbGVmdDogMDsgfVxuXG4ucmlnaHQtc21hbGwge1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggIzFhMWExYTtcbiAgcmlnaHQ6IDA7IH1cblxuLnRhYi1iYXItc2VjdGlvbiB7XG4gIGhlaWdodDogMi41cmVtO1xuICBwYWRkaW5nOiAwIDAuNTU1NTZyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7IH1cbiAgLnRhYi1iYXItc2VjdGlvbi5sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC50YWItYmFyLXNlY3Rpb24ucmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC50YWItYmFyLXNlY3Rpb24ubGVmdCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMi41cmVtOyB9XG4gIC50YWItYmFyLXNlY3Rpb24ucmlnaHQge1xuICAgIGxlZnQ6IDIuNXJlbTtcbiAgICByaWdodDogMDsgfVxuICAudGFiLWJhci1zZWN0aW9uLm1pZGRsZSB7XG4gICAgbGVmdDogMi41cmVtO1xuICAgIHJpZ2h0OiAyLjVyZW07IH1cblxuLnRhYi1iYXIgLm1lbnUtaWNvbiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1pbmRlbnQ6IDEuOTQ0NDRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHdpZHRoOiAyLjVyZW07IH1cbiAgLnRhYi1iYXIgLm1lbnUtaWNvbiBzcGFuOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0wLjQ0NDQ0cmVtO1xuICAgIGxlZnQ6IDAuODA1NTZyZW07XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNGRkZGRkYsIDAgN3B4IDAgMXB4ICNGRkZGRkYsIDAgMTRweCAwIDFweCAjRkZGRkZGO1xuICAgIHdpZHRoOiAwLjg4ODg5cmVtOyB9XG4gIC50YWItYmFyIC5tZW51LWljb24gc3Bhbjpob3ZlcjphZnRlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNiM2IzYjMsIDAgN3B4IDAgMXB4ICNiM2IzYjMsIDAgMTRweCAwIDFweCAjYjNiM2IzOyB9XG5cbi5sZWZ0LW9mZi1jYW52YXMtbWVudSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UgMHM7XG4gIHdpZHRoOiAxMy44ODg4OXJlbTtcbiAgei1pbmRleDogMTAwMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cbiAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51ICoge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5yaWdodC1vZmYtY2FudmFzLW1lbnUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgYm90dG9tOiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlIDBzO1xuICB3aWR0aDogMTMuODg4ODlyZW07XG4gIHotaW5kZXg6IDEwMDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cbiAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSAqIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4udG9wLW9mZi1jYW52YXMtbWVudSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UgMHM7XG4gIHdpZHRoOiAxMy44ODg4OXJlbTtcbiAgei1pbmRleDogMTAwMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE2LjY2NjY3cmVtOyB9XG4gIC50b3Atb2ZmLWNhbnZhcy1tZW51ICoge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5ib3R0b20tb2ZmLWNhbnZhcy1tZW51IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIGJvdHRvbTogMDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSAwcztcbiAgd2lkdGg6IDEzLjg4ODg5cmVtO1xuICB6LWluZGV4OiAxMDAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE2LjY2NjY3cmVtOyB9XG4gIC5ib3R0b20tb2ZmLWNhbnZhcy1tZW51ICoge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbnVsLm9mZi1jYW52YXMtbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIHVsLm9mZi1jYW52YXMtbGlzdCBsaSBsYWJlbCB7XG4gICAgYmFja2dyb3VuZDogIzQ0NDQ0NDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMC42NjY2N3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC4zcmVtIDAuODMzMzNyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICB1bC5vZmYtY2FudmFzLWxpc3QgbGkgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNjI2MjY7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjY2NjY3cmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTsgfVxuICAgIHVsLm9mZi1jYW52YXMtbGlzdCBsaSBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyNDI0MjQ7IH1cbiAgICB1bC5vZmYtY2FudmFzLWxpc3QgbGkgYTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzI0MjQyNDsgfVxuXG4ubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEzLjg4ODg5cmVtLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEzLjg4ODg5cmVtLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEzLjg4ODg5cmVtLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMy44ODg4OXJlbSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTMuODg4ODlyZW0sIDAsIDApOyB9XG5cbi5tb3ZlLXJpZ2h0IC5leGl0LW9mZi1jYW52YXMge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSksIDRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLm1vdmUtcmlnaHQgLmV4aXQtb2ZmLWNhbnZhczpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpOyB9IH1cblxuLm1vdmUtbGVmdCA+IC5pbm5lci13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMy44ODg4OXJlbSwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTMuODg4ODlyZW0sIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEzLjg4ODg5cmVtLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTMuODg4ODlyZW0sIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMy44ODg4OXJlbSwgMCwgMCk7IH1cblxuLm1vdmUtbGVmdCAuZXhpdC1vZmYtY2FudmFzIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IC00cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpLCA0cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5tb3ZlLWxlZnQgLmV4aXQtb2ZmLWNhbnZhczpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpOyB9IH1cblxuLm1vdmUtdG9wID4gLmlubmVyLXdyYXAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE2LjY2NjY3cmVtLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNi42NjY2N3JlbSwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTYuNjY2NjdyZW0pO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNi42NjY2N3JlbSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE2LjY2NjY3cmVtLCAwKTsgfVxuXG4ubW92ZS10b3AgLmV4aXQtb2ZmLWNhbnZhcyB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoMCwgMCwgMCwgMC41KSwgNHB4IDAgNHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDI7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgICAubW92ZS10b3AgLmV4aXQtb2ZmLWNhbnZhczpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpOyB9IH1cblxuLm1vdmUtYm90dG9tID4gLmlubmVyLXdyYXAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTYuNjY2NjdyZW0sIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTYuNjY2NjdyZW0sIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTYuNjY2NjdyZW0pO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE2LjY2NjY3cmVtLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxNi42NjY2N3JlbSwgMCk7IH1cblxuLm1vdmUtYm90dG9tIC5leGl0LW9mZi1jYW52YXMge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSksIDRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLm1vdmUtYm90dG9tIC5leGl0LW9mZi1jYW52YXM6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTsgfSB9XG5cbi5vZmZjYW52YXMtb3ZlcmxhcCAubGVmdC1vZmYtY2FudmFzLW1lbnUsIC5vZmZjYW52YXMtb3ZlcmxhcCAucmlnaHQtb2ZmLWNhbnZhcy1tZW51LFxuLm9mZmNhbnZhcy1vdmVybGFwIC50b3Atb2ZmLWNhbnZhcy1tZW51LCAub2ZmY2FudmFzLW92ZXJsYXAgLmJvdHRvbS1vZmYtY2FudmFzLW1lbnUge1xuICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAxMDAzOyB9XG5cbi5vZmZjYW52YXMtb3ZlcmxhcCAuZXhpdC1vZmYtY2FudmFzIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IC00cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpLCA0cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5vZmZjYW52YXMtb3ZlcmxhcCAuZXhpdC1vZmYtY2FudmFzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH0gfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAtby10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogMTAwMzsgfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCAuZXhpdC1vZmYtY2FudmFzIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IC00cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpLCA0cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1sZWZ0IC5leGl0LW9mZi1jYW52YXM6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTsgfSB9XG5cbi5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCAubGVmdC1vZmYtY2FudmFzLW1lbnUge1xuICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAxMDAzOyB9XG5cbi5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCAuZXhpdC1vZmYtY2FudmFzIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IC00cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpLCA0cHggMCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwLjA2MjVlbSkge1xuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCAuZXhpdC1vZmYtY2FudmFzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH0gfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtdG9wIC5ib3R0b20tb2ZmLWNhbnZhcy1tZW51IHtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAtby10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogMTAwMzsgfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtdG9wIC5leGl0LW9mZi1jYW52YXMge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSksIDRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLXRvcCAuZXhpdC1vZmYtY2FudmFzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH0gfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtYm90dG9tIC50b3Atb2ZmLWNhbnZhcy1tZW51IHtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAtby10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogMTAwMzsgfVxuXG4ub2ZmY2FudmFzLW92ZXJsYXAtYm90dG9tIC5leGl0LW9mZi1jYW52YXMge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSksIDRweCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAuMDYyNWVtKSB7XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLWJvdHRvbSAuZXhpdC1vZmYtY2FudmFzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH0gfVxuXG4ubm8tY3NzdHJhbnNmb3JtcyAubGVmdC1vZmYtY2FudmFzLW1lbnUge1xuICBsZWZ0OiAtMTMuODg4ODlyZW07IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7XG4gIHJpZ2h0OiAtMTMuODg4ODlyZW07IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMgLnRvcC1vZmYtY2FudmFzLW1lbnUge1xuICB0b3A6IC0xNi42NjY2N3JlbTsgfVxuXG4ubm8tY3NzdHJhbnNmb3JtcyAuYm90dG9tLW9mZi1jYW52YXMtbWVudSB7XG4gIGJvdHRvbTogLTE2LjY2NjY3cmVtOyB9XG5cbi5uby1jc3N0cmFuc2Zvcm1zIC5tb3ZlLWxlZnQgPiAuaW5uZXItd3JhcCB7XG4gIHJpZ2h0OiAxMy44ODg4OXJlbTsgfVxuXG4ubm8tY3NzdHJhbnNmb3JtcyAubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHtcbiAgbGVmdDogMTMuODg4ODlyZW07IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMgLm1vdmUtdG9wID4gLmlubmVyLXdyYXAge1xuICByaWdodDogMTYuNjY2NjdyZW07IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMgLm1vdmUtYm90dG9tID4gLmlubmVyLXdyYXAge1xuICBsZWZ0OiAxNi42NjY2N3JlbTsgfVxuXG4ubGVmdC1zdWJtZW51IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgYm90dG9tOiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTMuODg4ODlyZW07XG4gIGhlaWdodDogMTYuNjY2NjdyZW07XG4gIHotaW5kZXg6IDEwMDI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgbGVmdDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTsgfVxuICAubGVmdC1zdWJtZW51ICoge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5sZWZ0LXN1Ym1lbnUgLmJhY2sgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjNDQ0O1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM1ZTVlNWU7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMC4zcmVtIDAuODMzMzNyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAubGVmdC1zdWJtZW51IC5iYWNrID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzAzMDMwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlOyB9XG4gICAgLmxlZnQtc3VibWVudSAuYmFjayA+IGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxBQlwiO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAubGVmdC1zdWJtZW51Lm1vdmUtcmlnaHQsIC5sZWZ0LXN1Ym1lbnUub2ZmY2FudmFzLW92ZXJsYXAtcmlnaHQsIC5sZWZ0LXN1Ym1lbnUub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApOyB9XG5cbi5yaWdodC1zdWJtZW51IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgYm90dG9tOiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTMuODg4ODlyZW07XG4gIGhlaWdodDogMTYuNjY2NjdyZW07XG4gIHotaW5kZXg6IDEwMDI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHJpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IC1tcy10cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlOyB9XG4gIC5yaWdodC1zdWJtZW51ICoge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5yaWdodC1zdWJtZW51IC5iYWNrID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzQ0NDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuM3JlbSAwLjgzMzMzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnJpZ2h0LXN1Ym1lbnUgLmJhY2sgPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMDMwMzA7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM1ZTVlNWU7IH1cbiAgICAucmlnaHQtc3VibWVudSAuYmFjayA+IGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXEJCXCI7XG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLnJpZ2h0LXN1Ym1lbnUubW92ZS1sZWZ0LCAucmlnaHQtc3VibWVudS5vZmZjYW52YXMtb3ZlcmxhcC1sZWZ0LCAucmlnaHQtc3VibWVudS5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCwgMCk7IH1cblxuLnRvcC1zdWJtZW51IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZDogIzMzMzMzMztcbiAgYm90dG9tOiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTMuODg4ODlyZW07XG4gIGhlaWdodDogMTYuNjY2NjdyZW07XG4gIHotaW5kZXg6IDEwMDI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTsgfVxuICAudG9wLXN1Ym1lbnUgKiB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnRvcC1zdWJtZW51IC5iYWNrID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzQ0NDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuM3JlbSAwLjgzMzMzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnRvcC1zdWJtZW51IC5iYWNrID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzAzMDMwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlOyB9XG4gIC50b3Atc3VibWVudS5tb3ZlLWJvdHRvbSwgLnRvcC1zdWJtZW51Lm9mZmNhbnZhcy1vdmVybGFwLWJvdHRvbSwgLnRvcC1zdWJtZW51Lm9mZmNhbnZhcy1vdmVybGFwIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCUsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwJSwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTsgfVxuXG4uYm90dG9tLXN1Ym1lbnUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMy44ODg4OXJlbTtcbiAgaGVpZ2h0OiAxNi42NjY2N3JlbTtcbiAgei1pbmRleDogMTAwMjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTsgfVxuICAuYm90dG9tLXN1Ym1lbnUgKiB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLmJvdHRvbS1zdWJtZW51IC5iYWNrID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzQ0NDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuM3JlbSAwLjgzMzMzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmJvdHRvbS1zdWJtZW51IC5iYWNrID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzAzMDMwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNWU1ZTVlOyB9XG4gIC5ib3R0b20tc3VibWVudS5tb3ZlLXRvcCwgLmJvdHRvbS1zdWJtZW51Lm9mZmNhbnZhcy1vdmVybGFwLXRvcCwgLmJvdHRvbS1zdWJtZW51Lm9mZmNhbnZhcy1vdmVybGFwIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCUsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwJSwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTsgfVxuXG4ubGVmdC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxCQlwiO1xuICBtYXJnaW4tbGVmdDogLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4ucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXEFCXCI7XG4gIG1hcmdpbi1yaWdodDogLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4vKiBzbWFsbCBkaXNwbGF5cyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMy44MTI1ZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHksIC5zaG93LWZvci1zbWFsbC11cCwgLnNob3ctZm9yLXNtYWxsLCAuc2hvdy1mb3Itc21hbGwtZG93biwgLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCAuaGlkZS1mb3ItbWVkaXVtLXVwLCAuaGlkZS1mb3ItbWVkaXVtLCAuc2hvdy1mb3ItbWVkaXVtLWRvd24sIC5oaWRlLWZvci1sYXJnZS1vbmx5LCAuaGlkZS1mb3ItbGFyZ2UtdXAsIC5oaWRlLWZvci1sYXJnZSwgLnNob3ctZm9yLWxhcmdlLWRvd24sIC5oaWRlLWZvci14bGFyZ2Utb25seSwgLmhpZGUtZm9yLXhsYXJnZS11cCwgLmhpZGUtZm9yLXhsYXJnZSwgLnNob3ctZm9yLXhsYXJnZS1kb3duLCAuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCAuaGlkZS1mb3IteHhsYXJnZS11cCwgLmhpZGUtZm9yLXh4bGFyZ2UsIC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3Itc21hbGwtb25seSwgLmhpZGUtZm9yLXNtYWxsLXVwLCAuaGlkZS1mb3Itc21hbGwsIC5oaWRlLWZvci1zbWFsbC1kb3duLCAuc2hvdy1mb3ItbWVkaXVtLW9ubHksIC5zaG93LWZvci1tZWRpdW0tdXAsIC5zaG93LWZvci1tZWRpdW0sIC5oaWRlLWZvci1tZWRpdW0tZG93biwgLnNob3ctZm9yLWxhcmdlLW9ubHksIC5zaG93LWZvci1sYXJnZS11cCwgLnNob3ctZm9yLWxhcmdlLCAuaGlkZS1mb3ItbGFyZ2UtZG93biwgLnNob3ctZm9yLXhsYXJnZS1vbmx5LCAuc2hvdy1mb3IteGxhcmdlLXVwLCAuc2hvdy1mb3IteGxhcmdlLCAuaGlkZS1mb3IteGxhcmdlLWRvd24sIC5zaG93LWZvci14eGxhcmdlLW9ubHksIC5zaG93LWZvci14eGxhcmdlLXVwLCAuc2hvdy1mb3IteHhsYXJnZSwgLmhpZGUtZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC52aXNpYmxlLWZvci1zbWFsbC1vbmx5LCAudmlzaWJsZS1mb3Itc21hbGwtdXAsIC52aXNpYmxlLWZvci1zbWFsbCwgLnZpc2libGUtZm9yLXNtYWxsLWRvd24sIC5oaWRkZW4tZm9yLW1lZGl1bS1vbmx5LCAuaGlkZGVuLWZvci1tZWRpdW0tdXAsIC5oaWRkZW4tZm9yLW1lZGl1bSwgLnZpc2libGUtZm9yLW1lZGl1bS1kb3duLCAuaGlkZGVuLWZvci1sYXJnZS1vbmx5LCAuaGlkZGVuLWZvci1sYXJnZS11cCwgLmhpZGRlbi1mb3ItbGFyZ2UsIC52aXNpYmxlLWZvci1sYXJnZS1kb3duLCAuaGlkZGVuLWZvci14bGFyZ2Utb25seSwgLmhpZGRlbi1mb3IteGxhcmdlLXVwLCAuaGlkZGVuLWZvci14bGFyZ2UsIC52aXNpYmxlLWZvci14bGFyZ2UtZG93biwgLmhpZGRlbi1mb3IteHhsYXJnZS1vbmx5LCAuaGlkZGVuLWZvci14eGxhcmdlLXVwLCAuaGlkZGVuLWZvci14eGxhcmdlLCAudmlzaWJsZS1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87IH1cbiAgLmhpZGRlbi1mb3Itc21hbGwtb25seSwgLmhpZGRlbi1mb3Itc21hbGwtdXAsIC5oaWRkZW4tZm9yLXNtYWxsLCAuaGlkZGVuLWZvci1zbWFsbC1kb3duLCAudmlzaWJsZS1mb3ItbWVkaXVtLW9ubHksIC52aXNpYmxlLWZvci1tZWRpdW0tdXAsIC52aXNpYmxlLWZvci1tZWRpdW0sIC5oaWRkZW4tZm9yLW1lZGl1bS1kb3duLCAudmlzaWJsZS1mb3ItbGFyZ2Utb25seSwgLnZpc2libGUtZm9yLWxhcmdlLXVwLCAudmlzaWJsZS1mb3ItbGFyZ2UsIC5oaWRkZW4tZm9yLWxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14bGFyZ2Utb25seSwgLnZpc2libGUtZm9yLXhsYXJnZS11cCwgLnZpc2libGUtZm9yLXhsYXJnZSwgLmhpZGRlbi1mb3IteGxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14eGxhcmdlLW9ubHksIC52aXNpYmxlLWZvci14eGxhcmdlLXVwLCAudmlzaWJsZS1mb3IteHhsYXJnZSwgLmhpZGRlbi1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4OyB9XG4gIHRhYmxlLnNob3ctZm9yLXNtYWxsLW9ubHksIHRhYmxlLnNob3ctZm9yLXNtYWxsLXVwLCB0YWJsZS5zaG93LWZvci1zbWFsbCwgdGFibGUuc2hvdy1mb3Itc21hbGwtZG93biwgdGFibGUuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRhYmxlLmhpZGUtZm9yLW1lZGl1bS11cCwgdGFibGUuaGlkZS1mb3ItbWVkaXVtLCB0YWJsZS5zaG93LWZvci1tZWRpdW0tZG93biwgdGFibGUuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3ItbGFyZ2UtdXAsIHRhYmxlLmhpZGUtZm9yLWxhcmdlLCB0YWJsZS5zaG93LWZvci1sYXJnZS1kb3duLCB0YWJsZS5oaWRlLWZvci14bGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3IteGxhcmdlLXVwLCB0YWJsZS5oaWRlLWZvci14bGFyZ2UsIHRhYmxlLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0YWJsZS5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2UsIHRhYmxlLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1zbWFsbC1vbmx5LCB0aGVhZC5zaG93LWZvci1zbWFsbC11cCwgdGhlYWQuc2hvdy1mb3Itc21hbGwsIHRoZWFkLnNob3ctZm9yLXNtYWxsLWRvd24sIHRoZWFkLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0aGVhZC5oaWRlLWZvci1tZWRpdW0tdXAsIHRoZWFkLmhpZGUtZm9yLW1lZGl1bSwgdGhlYWQuc2hvdy1mb3ItbWVkaXVtLWRvd24sIHRoZWFkLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLWxhcmdlLXVwLCB0aGVhZC5oaWRlLWZvci1sYXJnZSwgdGhlYWQuc2hvdy1mb3ItbGFyZ2UtZG93biwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLXhsYXJnZS11cCwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLCB0aGVhZC5zaG93LWZvci14bGFyZ2UtZG93biwgdGhlYWQuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLXVwLCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLCB0aGVhZC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXNtYWxsLW9ubHksIHRib2R5LnNob3ctZm9yLXNtYWxsLXVwLCB0Ym9keS5zaG93LWZvci1zbWFsbCwgdGJvZHkuc2hvdy1mb3Itc21hbGwtZG93biwgdGJvZHkuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRib2R5LmhpZGUtZm9yLW1lZGl1bS11cCwgdGJvZHkuaGlkZS1mb3ItbWVkaXVtLCB0Ym9keS5zaG93LWZvci1tZWRpdW0tZG93biwgdGJvZHkuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3ItbGFyZ2UtdXAsIHRib2R5LmhpZGUtZm9yLWxhcmdlLCB0Ym9keS5zaG93LWZvci1sYXJnZS1kb3duLCB0Ym9keS5oaWRlLWZvci14bGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3IteGxhcmdlLXVwLCB0Ym9keS5oaWRlLWZvci14bGFyZ2UsIHRib2R5LnNob3ctZm9yLXhsYXJnZS1kb3duLCB0Ym9keS5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2UsIHRib2R5LnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3Itc21hbGwtb25seSwgdHIuc2hvdy1mb3Itc21hbGwtdXAsIHRyLnNob3ctZm9yLXNtYWxsLCB0ci5zaG93LWZvci1zbWFsbC1kb3duLCB0ci5oaWRlLWZvci1tZWRpdW0tb25seSwgdHIuaGlkZS1mb3ItbWVkaXVtLXVwLCB0ci5oaWRlLWZvci1tZWRpdW0sIHRyLnNob3ctZm9yLW1lZGl1bS1kb3duLCB0ci5oaWRlLWZvci1sYXJnZS1vbmx5LCB0ci5oaWRlLWZvci1sYXJnZS11cCwgdHIuaGlkZS1mb3ItbGFyZ2UsIHRyLnNob3ctZm9yLWxhcmdlLWRvd24sIHRyLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0ci5oaWRlLWZvci14bGFyZ2UtdXAsIHRyLmhpZGUtZm9yLXhsYXJnZSwgdHIuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRyLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdHIuaGlkZS1mb3IteHhsYXJnZS11cCwgdHIuaGlkZS1mb3IteHhsYXJnZSwgdHIuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgdGguc2hvdy1mb3Itc21hbGwtb25seSwgdGQuc2hvdy1mb3Itc21hbGwtb25seSwgdGguc2hvdy1mb3Itc21hbGwtdXAsIHRkLnNob3ctZm9yLXNtYWxsLXVwLCB0aC5zaG93LWZvci1zbWFsbCwgdGQuc2hvdy1mb3Itc21hbGwsIHRoLnNob3ctZm9yLXNtYWxsLWRvd24sIHRkLnNob3ctZm9yLXNtYWxsLWRvd24sIHRoLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0ZC5oaWRlLWZvci1tZWRpdW0tb25seSwgdGguaGlkZS1mb3ItbWVkaXVtLXVwLCB0ZC5oaWRlLWZvci1tZWRpdW0tdXAsIHRoLmhpZGUtZm9yLW1lZGl1bSwgdGQuaGlkZS1mb3ItbWVkaXVtLCB0aC5zaG93LWZvci1tZWRpdW0tZG93biwgdGQuc2hvdy1mb3ItbWVkaXVtLWRvd24sIHRoLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRkLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRoLmhpZGUtZm9yLWxhcmdlLXVwLCB0ZC5oaWRlLWZvci1sYXJnZS11cCwgdGguaGlkZS1mb3ItbGFyZ2UsIHRkLmhpZGUtZm9yLWxhcmdlLCB0aC5zaG93LWZvci1sYXJnZS1kb3duLCB0ZC5zaG93LWZvci1sYXJnZS1kb3duLCB0aC5oaWRlLWZvci14bGFyZ2Utb25seSwgdGQuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRoLmhpZGUtZm9yLXhsYXJnZS11cCwgdGQuaGlkZS1mb3IteGxhcmdlLXVwLCB0aC5oaWRlLWZvci14bGFyZ2UsIHRkLmhpZGUtZm9yLXhsYXJnZSwgdGguc2hvdy1mb3IteGxhcmdlLWRvd24sIHRkLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0aC5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRkLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGguaGlkZS1mb3IteHhsYXJnZS11cCwgdGQuaGlkZS1mb3IteHhsYXJnZS11cCwgdGguaGlkZS1mb3IteHhsYXJnZSwgdGQuaGlkZS1mb3IteHhsYXJnZSwgdGguc2hvdy1mb3IteHhsYXJnZS1kb3duLCB0ZC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbi8qIG1lZGl1bSBkaXNwbGF5cyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MC4wNjI1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHksIC5zaG93LWZvci1zbWFsbC11cCwgLmhpZGUtZm9yLXNtYWxsLCAuaGlkZS1mb3Itc21hbGwtZG93biwgLnNob3ctZm9yLW1lZGl1bS1vbmx5LCAuc2hvdy1mb3ItbWVkaXVtLXVwLCAuc2hvdy1mb3ItbWVkaXVtLCAuc2hvdy1mb3ItbWVkaXVtLWRvd24sIC5oaWRlLWZvci1sYXJnZS1vbmx5LCAuaGlkZS1mb3ItbGFyZ2UtdXAsIC5oaWRlLWZvci1sYXJnZSwgLnNob3ctZm9yLWxhcmdlLWRvd24sIC5oaWRlLWZvci14bGFyZ2Utb25seSwgLmhpZGUtZm9yLXhsYXJnZS11cCwgLmhpZGUtZm9yLXhsYXJnZSwgLnNob3ctZm9yLXhsYXJnZS1kb3duLCAuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCAuaGlkZS1mb3IteHhsYXJnZS11cCwgLmhpZGUtZm9yLXh4bGFyZ2UsIC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3Itc21hbGwtb25seSwgLmhpZGUtZm9yLXNtYWxsLXVwLCAuc2hvdy1mb3Itc21hbGwsIC5zaG93LWZvci1zbWFsbC1kb3duLCAuaGlkZS1mb3ItbWVkaXVtLW9ubHksIC5oaWRlLWZvci1tZWRpdW0tdXAsIC5oaWRlLWZvci1tZWRpdW0sIC5oaWRlLWZvci1tZWRpdW0tZG93biwgLnNob3ctZm9yLWxhcmdlLW9ubHksIC5zaG93LWZvci1sYXJnZS11cCwgLnNob3ctZm9yLWxhcmdlLCAuaGlkZS1mb3ItbGFyZ2UtZG93biwgLnNob3ctZm9yLXhsYXJnZS1vbmx5LCAuc2hvdy1mb3IteGxhcmdlLXVwLCAuc2hvdy1mb3IteGxhcmdlLCAuaGlkZS1mb3IteGxhcmdlLWRvd24sIC5zaG93LWZvci14eGxhcmdlLW9ubHksIC5zaG93LWZvci14eGxhcmdlLXVwLCAuc2hvdy1mb3IteHhsYXJnZSwgLmhpZGUtZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5oaWRkZW4tZm9yLXNtYWxsLW9ubHksIC52aXNpYmxlLWZvci1zbWFsbC11cCwgLmhpZGRlbi1mb3Itc21hbGwsIC5oaWRkZW4tZm9yLXNtYWxsLWRvd24sIC52aXNpYmxlLWZvci1tZWRpdW0tb25seSwgLnZpc2libGUtZm9yLW1lZGl1bS11cCwgLnZpc2libGUtZm9yLW1lZGl1bSwgLnZpc2libGUtZm9yLW1lZGl1bS1kb3duLCAuaGlkZGVuLWZvci1sYXJnZS1vbmx5LCAuaGlkZGVuLWZvci1sYXJnZS11cCwgLmhpZGRlbi1mb3ItbGFyZ2UsIC52aXNpYmxlLWZvci1sYXJnZS1kb3duLCAuaGlkZGVuLWZvci14bGFyZ2Utb25seSwgLmhpZGRlbi1mb3IteGxhcmdlLXVwLCAuaGlkZGVuLWZvci14bGFyZ2UsIC52aXNpYmxlLWZvci14bGFyZ2UtZG93biwgLmhpZGRlbi1mb3IteHhsYXJnZS1vbmx5LCAuaGlkZGVuLWZvci14eGxhcmdlLXVwLCAuaGlkZGVuLWZvci14eGxhcmdlLCAudmlzaWJsZS1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87IH1cbiAgLnZpc2libGUtZm9yLXNtYWxsLW9ubHksIC5oaWRkZW4tZm9yLXNtYWxsLXVwLCAudmlzaWJsZS1mb3Itc21hbGwsIC52aXNpYmxlLWZvci1zbWFsbC1kb3duLCAuaGlkZGVuLWZvci1tZWRpdW0tb25seSwgLmhpZGRlbi1mb3ItbWVkaXVtLXVwLCAuaGlkZGVuLWZvci1tZWRpdW0sIC5oaWRkZW4tZm9yLW1lZGl1bS1kb3duLCAudmlzaWJsZS1mb3ItbGFyZ2Utb25seSwgLnZpc2libGUtZm9yLWxhcmdlLXVwLCAudmlzaWJsZS1mb3ItbGFyZ2UsIC5oaWRkZW4tZm9yLWxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14bGFyZ2Utb25seSwgLnZpc2libGUtZm9yLXhsYXJnZS11cCwgLnZpc2libGUtZm9yLXhsYXJnZSwgLmhpZGRlbi1mb3IteGxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14eGxhcmdlLW9ubHksIC52aXNpYmxlLWZvci14eGxhcmdlLXVwLCAudmlzaWJsZS1mb3IteHhsYXJnZSwgLmhpZGRlbi1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4OyB9XG4gIHRhYmxlLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRhYmxlLnNob3ctZm9yLXNtYWxsLXVwLCB0YWJsZS5oaWRlLWZvci1zbWFsbCwgdGFibGUuaGlkZS1mb3Itc21hbGwtZG93biwgdGFibGUuc2hvdy1mb3ItbWVkaXVtLW9ubHksIHRhYmxlLnNob3ctZm9yLW1lZGl1bS11cCwgdGFibGUuc2hvdy1mb3ItbWVkaXVtLCB0YWJsZS5zaG93LWZvci1tZWRpdW0tZG93biwgdGFibGUuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3ItbGFyZ2UtdXAsIHRhYmxlLmhpZGUtZm9yLWxhcmdlLCB0YWJsZS5zaG93LWZvci1sYXJnZS1kb3duLCB0YWJsZS5oaWRlLWZvci14bGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3IteGxhcmdlLXVwLCB0YWJsZS5oaWRlLWZvci14bGFyZ2UsIHRhYmxlLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0YWJsZS5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2UsIHRhYmxlLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5oaWRlLWZvci1zbWFsbC1vbmx5LCB0aGVhZC5zaG93LWZvci1zbWFsbC11cCwgdGhlYWQuaGlkZS1mb3Itc21hbGwsIHRoZWFkLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRoZWFkLnNob3ctZm9yLW1lZGl1bS1vbmx5LCB0aGVhZC5zaG93LWZvci1tZWRpdW0tdXAsIHRoZWFkLnNob3ctZm9yLW1lZGl1bSwgdGhlYWQuc2hvdy1mb3ItbWVkaXVtLWRvd24sIHRoZWFkLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLWxhcmdlLXVwLCB0aGVhZC5oaWRlLWZvci1sYXJnZSwgdGhlYWQuc2hvdy1mb3ItbGFyZ2UtZG93biwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLXhsYXJnZS11cCwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLCB0aGVhZC5zaG93LWZvci14bGFyZ2UtZG93biwgdGhlYWQuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLXVwLCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLCB0aGVhZC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LmhpZGUtZm9yLXNtYWxsLW9ubHksIHRib2R5LnNob3ctZm9yLXNtYWxsLXVwLCB0Ym9keS5oaWRlLWZvci1zbWFsbCwgdGJvZHkuaGlkZS1mb3Itc21hbGwtZG93biwgdGJvZHkuc2hvdy1mb3ItbWVkaXVtLW9ubHksIHRib2R5LnNob3ctZm9yLW1lZGl1bS11cCwgdGJvZHkuc2hvdy1mb3ItbWVkaXVtLCB0Ym9keS5zaG93LWZvci1tZWRpdW0tZG93biwgdGJvZHkuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3ItbGFyZ2UtdXAsIHRib2R5LmhpZGUtZm9yLWxhcmdlLCB0Ym9keS5zaG93LWZvci1sYXJnZS1kb3duLCB0Ym9keS5oaWRlLWZvci14bGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3IteGxhcmdlLXVwLCB0Ym9keS5oaWRlLWZvci14bGFyZ2UsIHRib2R5LnNob3ctZm9yLXhsYXJnZS1kb3duLCB0Ym9keS5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2UsIHRib2R5LnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuaGlkZS1mb3Itc21hbGwtb25seSwgdHIuc2hvdy1mb3Itc21hbGwtdXAsIHRyLmhpZGUtZm9yLXNtYWxsLCB0ci5oaWRlLWZvci1zbWFsbC1kb3duLCB0ci5zaG93LWZvci1tZWRpdW0tb25seSwgdHIuc2hvdy1mb3ItbWVkaXVtLXVwLCB0ci5zaG93LWZvci1tZWRpdW0sIHRyLnNob3ctZm9yLW1lZGl1bS1kb3duLCB0ci5oaWRlLWZvci1sYXJnZS1vbmx5LCB0ci5oaWRlLWZvci1sYXJnZS11cCwgdHIuaGlkZS1mb3ItbGFyZ2UsIHRyLnNob3ctZm9yLWxhcmdlLWRvd24sIHRyLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0ci5oaWRlLWZvci14bGFyZ2UtdXAsIHRyLmhpZGUtZm9yLXhsYXJnZSwgdHIuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRyLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdHIuaGlkZS1mb3IteHhsYXJnZS11cCwgdHIuaGlkZS1mb3IteHhsYXJnZSwgdHIuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgdGguaGlkZS1mb3Itc21hbGwtb25seSwgdGQuaGlkZS1mb3Itc21hbGwtb25seSwgdGguc2hvdy1mb3Itc21hbGwtdXAsIHRkLnNob3ctZm9yLXNtYWxsLXVwLCB0aC5oaWRlLWZvci1zbWFsbCwgdGQuaGlkZS1mb3Itc21hbGwsIHRoLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRkLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRoLnNob3ctZm9yLW1lZGl1bS1vbmx5LCB0ZC5zaG93LWZvci1tZWRpdW0tb25seSwgdGguc2hvdy1mb3ItbWVkaXVtLXVwLCB0ZC5zaG93LWZvci1tZWRpdW0tdXAsIHRoLnNob3ctZm9yLW1lZGl1bSwgdGQuc2hvdy1mb3ItbWVkaXVtLCB0aC5zaG93LWZvci1tZWRpdW0tZG93biwgdGQuc2hvdy1mb3ItbWVkaXVtLWRvd24sIHRoLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRkLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRoLmhpZGUtZm9yLWxhcmdlLXVwLCB0ZC5oaWRlLWZvci1sYXJnZS11cCwgdGguaGlkZS1mb3ItbGFyZ2UsIHRkLmhpZGUtZm9yLWxhcmdlLCB0aC5zaG93LWZvci1sYXJnZS1kb3duLCB0ZC5zaG93LWZvci1sYXJnZS1kb3duLCB0aC5oaWRlLWZvci14bGFyZ2Utb25seSwgdGQuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRoLmhpZGUtZm9yLXhsYXJnZS11cCwgdGQuaGlkZS1mb3IteGxhcmdlLXVwLCB0aC5oaWRlLWZvci14bGFyZ2UsIHRkLmhpZGUtZm9yLXhsYXJnZSwgdGguc2hvdy1mb3IteGxhcmdlLWRvd24sIHRkLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0aC5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRkLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGguaGlkZS1mb3IteHhsYXJnZS11cCwgdGQuaGlkZS1mb3IteHhsYXJnZS11cCwgdGguaGlkZS1mb3IteHhsYXJnZSwgdGQuaGlkZS1mb3IteHhsYXJnZSwgdGguc2hvdy1mb3IteHhsYXJnZS1kb3duLCB0ZC5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbi8qIGxhcmdlIGRpc3BsYXlzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSwgLnNob3ctZm9yLXNtYWxsLXVwLCAuaGlkZS1mb3Itc21hbGwsIC5oaWRlLWZvci1zbWFsbC1kb3duLCAuaGlkZS1mb3ItbWVkaXVtLW9ubHksIC5zaG93LWZvci1tZWRpdW0tdXAsIC5oaWRlLWZvci1tZWRpdW0sIC5oaWRlLWZvci1tZWRpdW0tZG93biwgLnNob3ctZm9yLWxhcmdlLW9ubHksIC5zaG93LWZvci1sYXJnZS11cCwgLnNob3ctZm9yLWxhcmdlLCAuc2hvdy1mb3ItbGFyZ2UtZG93biwgLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCAuaGlkZS1mb3IteGxhcmdlLXVwLCAuaGlkZS1mb3IteGxhcmdlLCAuc2hvdy1mb3IteGxhcmdlLWRvd24sIC5oaWRlLWZvci14eGxhcmdlLW9ubHksIC5oaWRlLWZvci14eGxhcmdlLXVwLCAuaGlkZS1mb3IteHhsYXJnZSwgLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5LCAuaGlkZS1mb3Itc21hbGwtdXAsIC5zaG93LWZvci1zbWFsbCwgLnNob3ctZm9yLXNtYWxsLWRvd24sIC5zaG93LWZvci1tZWRpdW0tb25seSwgLmhpZGUtZm9yLW1lZGl1bS11cCwgLnNob3ctZm9yLW1lZGl1bSwgLnNob3ctZm9yLW1lZGl1bS1kb3duLCAuaGlkZS1mb3ItbGFyZ2Utb25seSwgLmhpZGUtZm9yLWxhcmdlLXVwLCAuaGlkZS1mb3ItbGFyZ2UsIC5oaWRlLWZvci1sYXJnZS1kb3duLCAuc2hvdy1mb3IteGxhcmdlLW9ubHksIC5zaG93LWZvci14bGFyZ2UtdXAsIC5zaG93LWZvci14bGFyZ2UsIC5oaWRlLWZvci14bGFyZ2UtZG93biwgLnNob3ctZm9yLXh4bGFyZ2Utb25seSwgLnNob3ctZm9yLXh4bGFyZ2UtdXAsIC5zaG93LWZvci14eGxhcmdlLCAuaGlkZS1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGRlbi1mb3Itc21hbGwtb25seSwgLnZpc2libGUtZm9yLXNtYWxsLXVwLCAuaGlkZGVuLWZvci1zbWFsbCwgLmhpZGRlbi1mb3Itc21hbGwtZG93biwgLmhpZGRlbi1mb3ItbWVkaXVtLW9ubHksIC52aXNpYmxlLWZvci1tZWRpdW0tdXAsIC5oaWRkZW4tZm9yLW1lZGl1bSwgLmhpZGRlbi1mb3ItbWVkaXVtLWRvd24sIC52aXNpYmxlLWZvci1sYXJnZS1vbmx5LCAudmlzaWJsZS1mb3ItbGFyZ2UtdXAsIC52aXNpYmxlLWZvci1sYXJnZSwgLnZpc2libGUtZm9yLWxhcmdlLWRvd24sIC5oaWRkZW4tZm9yLXhsYXJnZS1vbmx5LCAuaGlkZGVuLWZvci14bGFyZ2UtdXAsIC5oaWRkZW4tZm9yLXhsYXJnZSwgLnZpc2libGUtZm9yLXhsYXJnZS1kb3duLCAuaGlkZGVuLWZvci14eGxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLXh4bGFyZ2UtdXAsIC5oaWRkZW4tZm9yLXh4bGFyZ2UsIC52aXNpYmxlLWZvci14eGxhcmdlLWRvd24ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bzsgfVxuICAudmlzaWJsZS1mb3Itc21hbGwtb25seSwgLmhpZGRlbi1mb3Itc21hbGwtdXAsIC52aXNpYmxlLWZvci1zbWFsbCwgLnZpc2libGUtZm9yLXNtYWxsLWRvd24sIC52aXNpYmxlLWZvci1tZWRpdW0tb25seSwgLmhpZGRlbi1mb3ItbWVkaXVtLXVwLCAudmlzaWJsZS1mb3ItbWVkaXVtLCAudmlzaWJsZS1mb3ItbWVkaXVtLWRvd24sIC5oaWRkZW4tZm9yLWxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLWxhcmdlLXVwLCAuaGlkZGVuLWZvci1sYXJnZSwgLmhpZGRlbi1mb3ItbGFyZ2UtZG93biwgLnZpc2libGUtZm9yLXhsYXJnZS1vbmx5LCAudmlzaWJsZS1mb3IteGxhcmdlLXVwLCAudmlzaWJsZS1mb3IteGxhcmdlLCAuaGlkZGVuLWZvci14bGFyZ2UtZG93biwgLnZpc2libGUtZm9yLXh4bGFyZ2Utb25seSwgLnZpc2libGUtZm9yLXh4bGFyZ2UtdXAsIC52aXNpYmxlLWZvci14eGxhcmdlLCAuaGlkZGVuLWZvci14eGxhcmdlLWRvd24ge1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHg7IH1cbiAgdGFibGUuaGlkZS1mb3Itc21hbGwtb25seSwgdGFibGUuc2hvdy1mb3Itc21hbGwtdXAsIHRhYmxlLmhpZGUtZm9yLXNtYWxsLCB0YWJsZS5oaWRlLWZvci1zbWFsbC1kb3duLCB0YWJsZS5oaWRlLWZvci1tZWRpdW0tb25seSwgdGFibGUuc2hvdy1mb3ItbWVkaXVtLXVwLCB0YWJsZS5oaWRlLWZvci1tZWRpdW0sIHRhYmxlLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0YWJsZS5zaG93LWZvci1sYXJnZS1vbmx5LCB0YWJsZS5zaG93LWZvci1sYXJnZS11cCwgdGFibGUuc2hvdy1mb3ItbGFyZ2UsIHRhYmxlLnNob3ctZm9yLWxhcmdlLWRvd24sIHRhYmxlLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0YWJsZS5oaWRlLWZvci14bGFyZ2UtdXAsIHRhYmxlLmhpZGUtZm9yLXhsYXJnZSwgdGFibGUuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3IteHhsYXJnZS11cCwgdGFibGUuaGlkZS1mb3IteHhsYXJnZSwgdGFibGUuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRoZWFkLnNob3ctZm9yLXNtYWxsLXVwLCB0aGVhZC5oaWRlLWZvci1zbWFsbCwgdGhlYWQuaGlkZS1mb3Itc21hbGwtZG93biwgdGhlYWQuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRoZWFkLnNob3ctZm9yLW1lZGl1bS11cCwgdGhlYWQuaGlkZS1mb3ItbWVkaXVtLCB0aGVhZC5oaWRlLWZvci1tZWRpdW0tZG93biwgdGhlYWQuc2hvdy1mb3ItbGFyZ2Utb25seSwgdGhlYWQuc2hvdy1mb3ItbGFyZ2UtdXAsIHRoZWFkLnNob3ctZm9yLWxhcmdlLCB0aGVhZC5zaG93LWZvci1sYXJnZS1kb3duLCB0aGVhZC5oaWRlLWZvci14bGFyZ2Utb25seSwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLXVwLCB0aGVhZC5oaWRlLWZvci14bGFyZ2UsIHRoZWFkLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRoZWFkLmhpZGUtZm9yLXh4bGFyZ2UsIHRoZWFkLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuaGlkZS1mb3Itc21hbGwtb25seSwgdGJvZHkuc2hvdy1mb3Itc21hbGwtdXAsIHRib2R5LmhpZGUtZm9yLXNtYWxsLCB0Ym9keS5oaWRlLWZvci1zbWFsbC1kb3duLCB0Ym9keS5oaWRlLWZvci1tZWRpdW0tb25seSwgdGJvZHkuc2hvdy1mb3ItbWVkaXVtLXVwLCB0Ym9keS5oaWRlLWZvci1tZWRpdW0sIHRib2R5LmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0Ym9keS5zaG93LWZvci1sYXJnZS1vbmx5LCB0Ym9keS5zaG93LWZvci1sYXJnZS11cCwgdGJvZHkuc2hvdy1mb3ItbGFyZ2UsIHRib2R5LnNob3ctZm9yLWxhcmdlLWRvd24sIHRib2R5LmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0Ym9keS5oaWRlLWZvci14bGFyZ2UtdXAsIHRib2R5LmhpZGUtZm9yLXhsYXJnZSwgdGJvZHkuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3IteHhsYXJnZS11cCwgdGJvZHkuaGlkZS1mb3IteHhsYXJnZSwgdGJvZHkuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5oaWRlLWZvci1zbWFsbC1vbmx5LCB0ci5zaG93LWZvci1zbWFsbC11cCwgdHIuaGlkZS1mb3Itc21hbGwsIHRyLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRyLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0ci5zaG93LWZvci1tZWRpdW0tdXAsIHRyLmhpZGUtZm9yLW1lZGl1bSwgdHIuaGlkZS1mb3ItbWVkaXVtLWRvd24sIHRyLnNob3ctZm9yLWxhcmdlLW9ubHksIHRyLnNob3ctZm9yLWxhcmdlLXVwLCB0ci5zaG93LWZvci1sYXJnZSwgdHIuc2hvdy1mb3ItbGFyZ2UtZG93biwgdHIuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRyLmhpZGUtZm9yLXhsYXJnZS11cCwgdHIuaGlkZS1mb3IteGxhcmdlLCB0ci5zaG93LWZvci14bGFyZ2UtZG93biwgdHIuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0ci5oaWRlLWZvci14eGxhcmdlLXVwLCB0ci5oaWRlLWZvci14eGxhcmdlLCB0ci5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICB0aC5oaWRlLWZvci1zbWFsbC1vbmx5LCB0ZC5oaWRlLWZvci1zbWFsbC1vbmx5LCB0aC5zaG93LWZvci1zbWFsbC11cCwgdGQuc2hvdy1mb3Itc21hbGwtdXAsIHRoLmhpZGUtZm9yLXNtYWxsLCB0ZC5oaWRlLWZvci1zbWFsbCwgdGguaGlkZS1mb3Itc21hbGwtZG93biwgdGQuaGlkZS1mb3Itc21hbGwtZG93biwgdGguaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRkLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0aC5zaG93LWZvci1tZWRpdW0tdXAsIHRkLnNob3ctZm9yLW1lZGl1bS11cCwgdGguaGlkZS1mb3ItbWVkaXVtLCB0ZC5oaWRlLWZvci1tZWRpdW0sIHRoLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0ZC5oaWRlLWZvci1tZWRpdW0tZG93biwgdGguc2hvdy1mb3ItbGFyZ2Utb25seSwgdGQuc2hvdy1mb3ItbGFyZ2Utb25seSwgdGguc2hvdy1mb3ItbGFyZ2UtdXAsIHRkLnNob3ctZm9yLWxhcmdlLXVwLCB0aC5zaG93LWZvci1sYXJnZSwgdGQuc2hvdy1mb3ItbGFyZ2UsIHRoLnNob3ctZm9yLWxhcmdlLWRvd24sIHRkLnNob3ctZm9yLWxhcmdlLWRvd24sIHRoLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0ZC5oaWRlLWZvci14bGFyZ2Utb25seSwgdGguaGlkZS1mb3IteGxhcmdlLXVwLCB0ZC5oaWRlLWZvci14bGFyZ2UtdXAsIHRoLmhpZGUtZm9yLXhsYXJnZSwgdGQuaGlkZS1mb3IteGxhcmdlLCB0aC5zaG93LWZvci14bGFyZ2UtZG93biwgdGQuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRoLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGQuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0aC5oaWRlLWZvci14eGxhcmdlLXVwLCB0ZC5oaWRlLWZvci14eGxhcmdlLXVwLCB0aC5oaWRlLWZvci14eGxhcmdlLCB0ZC5oaWRlLWZvci14eGxhcmdlLCB0aC5zaG93LWZvci14eGxhcmdlLWRvd24sIHRkLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuLyogeGxhcmdlIGRpc3BsYXlzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwLjA2MjVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSwgLnNob3ctZm9yLXNtYWxsLXVwLCAuaGlkZS1mb3Itc21hbGwsIC5oaWRlLWZvci1zbWFsbC1kb3duLCAuaGlkZS1mb3ItbWVkaXVtLW9ubHksIC5zaG93LWZvci1tZWRpdW0tdXAsIC5oaWRlLWZvci1tZWRpdW0sIC5oaWRlLWZvci1tZWRpdW0tZG93biwgLmhpZGUtZm9yLWxhcmdlLW9ubHksIC5zaG93LWZvci1sYXJnZS11cCwgLmhpZGUtZm9yLWxhcmdlLCAuaGlkZS1mb3ItbGFyZ2UtZG93biwgLnNob3ctZm9yLXhsYXJnZS1vbmx5LCAuc2hvdy1mb3IteGxhcmdlLXVwLCAuc2hvdy1mb3IteGxhcmdlLCAuc2hvdy1mb3IteGxhcmdlLWRvd24sIC5oaWRlLWZvci14eGxhcmdlLW9ubHksIC5oaWRlLWZvci14eGxhcmdlLXVwLCAuaGlkZS1mb3IteHhsYXJnZSwgLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5LCAuaGlkZS1mb3Itc21hbGwtdXAsIC5zaG93LWZvci1zbWFsbCwgLnNob3ctZm9yLXNtYWxsLWRvd24sIC5zaG93LWZvci1tZWRpdW0tb25seSwgLmhpZGUtZm9yLW1lZGl1bS11cCwgLnNob3ctZm9yLW1lZGl1bSwgLnNob3ctZm9yLW1lZGl1bS1kb3duLCAuc2hvdy1mb3ItbGFyZ2Utb25seSwgLmhpZGUtZm9yLWxhcmdlLXVwLCAuc2hvdy1mb3ItbGFyZ2UsIC5zaG93LWZvci1sYXJnZS1kb3duLCAuaGlkZS1mb3IteGxhcmdlLW9ubHksIC5oaWRlLWZvci14bGFyZ2UtdXAsIC5oaWRlLWZvci14bGFyZ2UsIC5oaWRlLWZvci14bGFyZ2UtZG93biwgLnNob3ctZm9yLXh4bGFyZ2Utb25seSwgLnNob3ctZm9yLXh4bGFyZ2UtdXAsIC5zaG93LWZvci14eGxhcmdlLCAuaGlkZS1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGRlbi1mb3Itc21hbGwtb25seSwgLnZpc2libGUtZm9yLXNtYWxsLXVwLCAuaGlkZGVuLWZvci1zbWFsbCwgLmhpZGRlbi1mb3Itc21hbGwtZG93biwgLmhpZGRlbi1mb3ItbWVkaXVtLW9ubHksIC52aXNpYmxlLWZvci1tZWRpdW0tdXAsIC5oaWRkZW4tZm9yLW1lZGl1bSwgLmhpZGRlbi1mb3ItbWVkaXVtLWRvd24sIC5oaWRkZW4tZm9yLWxhcmdlLW9ubHksIC52aXNpYmxlLWZvci1sYXJnZS11cCwgLmhpZGRlbi1mb3ItbGFyZ2UsIC5oaWRkZW4tZm9yLWxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14bGFyZ2Utb25seSwgLnZpc2libGUtZm9yLXhsYXJnZS11cCwgLnZpc2libGUtZm9yLXhsYXJnZSwgLnZpc2libGUtZm9yLXhsYXJnZS1kb3duLCAuaGlkZGVuLWZvci14eGxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLXh4bGFyZ2UtdXAsIC5oaWRkZW4tZm9yLXh4bGFyZ2UsIC52aXNpYmxlLWZvci14eGxhcmdlLWRvd24ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bzsgfVxuICAudmlzaWJsZS1mb3Itc21hbGwtb25seSwgLmhpZGRlbi1mb3Itc21hbGwtdXAsIC52aXNpYmxlLWZvci1zbWFsbCwgLnZpc2libGUtZm9yLXNtYWxsLWRvd24sIC52aXNpYmxlLWZvci1tZWRpdW0tb25seSwgLmhpZGRlbi1mb3ItbWVkaXVtLXVwLCAudmlzaWJsZS1mb3ItbWVkaXVtLCAudmlzaWJsZS1mb3ItbWVkaXVtLWRvd24sIC52aXNpYmxlLWZvci1sYXJnZS1vbmx5LCAuaGlkZGVuLWZvci1sYXJnZS11cCwgLnZpc2libGUtZm9yLWxhcmdlLCAudmlzaWJsZS1mb3ItbGFyZ2UtZG93biwgLmhpZGRlbi1mb3IteGxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLXhsYXJnZS11cCwgLmhpZGRlbi1mb3IteGxhcmdlLCAuaGlkZGVuLWZvci14bGFyZ2UtZG93biwgLnZpc2libGUtZm9yLXh4bGFyZ2Utb25seSwgLnZpc2libGUtZm9yLXh4bGFyZ2UtdXAsIC52aXNpYmxlLWZvci14eGxhcmdlLCAuaGlkZGVuLWZvci14eGxhcmdlLWRvd24ge1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHg7IH1cbiAgdGFibGUuaGlkZS1mb3Itc21hbGwtb25seSwgdGFibGUuc2hvdy1mb3Itc21hbGwtdXAsIHRhYmxlLmhpZGUtZm9yLXNtYWxsLCB0YWJsZS5oaWRlLWZvci1zbWFsbC1kb3duLCB0YWJsZS5oaWRlLWZvci1tZWRpdW0tb25seSwgdGFibGUuc2hvdy1mb3ItbWVkaXVtLXVwLCB0YWJsZS5oaWRlLWZvci1tZWRpdW0sIHRhYmxlLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0YWJsZS5oaWRlLWZvci1sYXJnZS1vbmx5LCB0YWJsZS5zaG93LWZvci1sYXJnZS11cCwgdGFibGUuaGlkZS1mb3ItbGFyZ2UsIHRhYmxlLmhpZGUtZm9yLWxhcmdlLWRvd24sIHRhYmxlLnNob3ctZm9yLXhsYXJnZS1vbmx5LCB0YWJsZS5zaG93LWZvci14bGFyZ2UtdXAsIHRhYmxlLnNob3ctZm9yLXhsYXJnZSwgdGFibGUuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRhYmxlLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGFibGUuaGlkZS1mb3IteHhsYXJnZS11cCwgdGFibGUuaGlkZS1mb3IteHhsYXJnZSwgdGFibGUuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRoZWFkLnNob3ctZm9yLXNtYWxsLXVwLCB0aGVhZC5oaWRlLWZvci1zbWFsbCwgdGhlYWQuaGlkZS1mb3Itc21hbGwtZG93biwgdGhlYWQuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRoZWFkLnNob3ctZm9yLW1lZGl1bS11cCwgdGhlYWQuaGlkZS1mb3ItbWVkaXVtLCB0aGVhZC5oaWRlLWZvci1tZWRpdW0tZG93biwgdGhlYWQuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGhlYWQuc2hvdy1mb3ItbGFyZ2UtdXAsIHRoZWFkLmhpZGUtZm9yLWxhcmdlLCB0aGVhZC5oaWRlLWZvci1sYXJnZS1kb3duLCB0aGVhZC5zaG93LWZvci14bGFyZ2Utb25seSwgdGhlYWQuc2hvdy1mb3IteGxhcmdlLXVwLCB0aGVhZC5zaG93LWZvci14bGFyZ2UsIHRoZWFkLnNob3ctZm9yLXhsYXJnZS1kb3duLCB0aGVhZC5oaWRlLWZvci14eGxhcmdlLW9ubHksIHRoZWFkLmhpZGUtZm9yLXh4bGFyZ2UtdXAsIHRoZWFkLmhpZGUtZm9yLXh4bGFyZ2UsIHRoZWFkLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuaGlkZS1mb3Itc21hbGwtb25seSwgdGJvZHkuc2hvdy1mb3Itc21hbGwtdXAsIHRib2R5LmhpZGUtZm9yLXNtYWxsLCB0Ym9keS5oaWRlLWZvci1zbWFsbC1kb3duLCB0Ym9keS5oaWRlLWZvci1tZWRpdW0tb25seSwgdGJvZHkuc2hvdy1mb3ItbWVkaXVtLXVwLCB0Ym9keS5oaWRlLWZvci1tZWRpdW0sIHRib2R5LmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0Ym9keS5oaWRlLWZvci1sYXJnZS1vbmx5LCB0Ym9keS5zaG93LWZvci1sYXJnZS11cCwgdGJvZHkuaGlkZS1mb3ItbGFyZ2UsIHRib2R5LmhpZGUtZm9yLWxhcmdlLWRvd24sIHRib2R5LnNob3ctZm9yLXhsYXJnZS1vbmx5LCB0Ym9keS5zaG93LWZvci14bGFyZ2UtdXAsIHRib2R5LnNob3ctZm9yLXhsYXJnZSwgdGJvZHkuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRib2R5LmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGJvZHkuaGlkZS1mb3IteHhsYXJnZS11cCwgdGJvZHkuaGlkZS1mb3IteHhsYXJnZSwgdGJvZHkuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5oaWRlLWZvci1zbWFsbC1vbmx5LCB0ci5zaG93LWZvci1zbWFsbC11cCwgdHIuaGlkZS1mb3Itc21hbGwsIHRyLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRyLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0ci5zaG93LWZvci1tZWRpdW0tdXAsIHRyLmhpZGUtZm9yLW1lZGl1bSwgdHIuaGlkZS1mb3ItbWVkaXVtLWRvd24sIHRyLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRyLnNob3ctZm9yLWxhcmdlLXVwLCB0ci5oaWRlLWZvci1sYXJnZSwgdHIuaGlkZS1mb3ItbGFyZ2UtZG93biwgdHIuc2hvdy1mb3IteGxhcmdlLW9ubHksIHRyLnNob3ctZm9yLXhsYXJnZS11cCwgdHIuc2hvdy1mb3IteGxhcmdlLCB0ci5zaG93LWZvci14bGFyZ2UtZG93biwgdHIuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0ci5oaWRlLWZvci14eGxhcmdlLXVwLCB0ci5oaWRlLWZvci14eGxhcmdlLCB0ci5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICB0aC5oaWRlLWZvci1zbWFsbC1vbmx5LCB0ZC5oaWRlLWZvci1zbWFsbC1vbmx5LCB0aC5zaG93LWZvci1zbWFsbC11cCwgdGQuc2hvdy1mb3Itc21hbGwtdXAsIHRoLmhpZGUtZm9yLXNtYWxsLCB0ZC5oaWRlLWZvci1zbWFsbCwgdGguaGlkZS1mb3Itc21hbGwtZG93biwgdGQuaGlkZS1mb3Itc21hbGwtZG93biwgdGguaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRkLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0aC5zaG93LWZvci1tZWRpdW0tdXAsIHRkLnNob3ctZm9yLW1lZGl1bS11cCwgdGguaGlkZS1mb3ItbWVkaXVtLCB0ZC5oaWRlLWZvci1tZWRpdW0sIHRoLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0ZC5oaWRlLWZvci1tZWRpdW0tZG93biwgdGguaGlkZS1mb3ItbGFyZ2Utb25seSwgdGQuaGlkZS1mb3ItbGFyZ2Utb25seSwgdGguc2hvdy1mb3ItbGFyZ2UtdXAsIHRkLnNob3ctZm9yLWxhcmdlLXVwLCB0aC5oaWRlLWZvci1sYXJnZSwgdGQuaGlkZS1mb3ItbGFyZ2UsIHRoLmhpZGUtZm9yLWxhcmdlLWRvd24sIHRkLmhpZGUtZm9yLWxhcmdlLWRvd24sIHRoLnNob3ctZm9yLXhsYXJnZS1vbmx5LCB0ZC5zaG93LWZvci14bGFyZ2Utb25seSwgdGguc2hvdy1mb3IteGxhcmdlLXVwLCB0ZC5zaG93LWZvci14bGFyZ2UtdXAsIHRoLnNob3ctZm9yLXhsYXJnZSwgdGQuc2hvdy1mb3IteGxhcmdlLCB0aC5zaG93LWZvci14bGFyZ2UtZG93biwgdGQuc2hvdy1mb3IteGxhcmdlLWRvd24sIHRoLmhpZGUtZm9yLXh4bGFyZ2Utb25seSwgdGQuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCB0aC5oaWRlLWZvci14eGxhcmdlLXVwLCB0ZC5oaWRlLWZvci14eGxhcmdlLXVwLCB0aC5oaWRlLWZvci14eGxhcmdlLCB0ZC5oaWRlLWZvci14eGxhcmdlLCB0aC5zaG93LWZvci14eGxhcmdlLWRvd24sIHRkLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuLyogeHhsYXJnZSBkaXNwbGF5cyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAuMDYyNWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5LCAuc2hvdy1mb3Itc21hbGwtdXAsIC5oaWRlLWZvci1zbWFsbCwgLmhpZGUtZm9yLXNtYWxsLWRvd24sIC5oaWRlLWZvci1tZWRpdW0tb25seSwgLnNob3ctZm9yLW1lZGl1bS11cCwgLmhpZGUtZm9yLW1lZGl1bSwgLmhpZGUtZm9yLW1lZGl1bS1kb3duLCAuaGlkZS1mb3ItbGFyZ2Utb25seSwgLnNob3ctZm9yLWxhcmdlLXVwLCAuaGlkZS1mb3ItbGFyZ2UsIC5oaWRlLWZvci1sYXJnZS1kb3duLCAuaGlkZS1mb3IteGxhcmdlLW9ubHksIC5zaG93LWZvci14bGFyZ2UtdXAsIC5oaWRlLWZvci14bGFyZ2UsIC5oaWRlLWZvci14bGFyZ2UtZG93biwgLnNob3ctZm9yLXh4bGFyZ2Utb25seSwgLnNob3ctZm9yLXh4bGFyZ2UtdXAsIC5zaG93LWZvci14eGxhcmdlLCAuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXNtYWxsLW9ubHksIC5oaWRlLWZvci1zbWFsbC11cCwgLnNob3ctZm9yLXNtYWxsLCAuc2hvdy1mb3Itc21hbGwtZG93biwgLnNob3ctZm9yLW1lZGl1bS1vbmx5LCAuaGlkZS1mb3ItbWVkaXVtLXVwLCAuc2hvdy1mb3ItbWVkaXVtLCAuc2hvdy1mb3ItbWVkaXVtLWRvd24sIC5zaG93LWZvci1sYXJnZS1vbmx5LCAuaGlkZS1mb3ItbGFyZ2UtdXAsIC5zaG93LWZvci1sYXJnZSwgLnNob3ctZm9yLWxhcmdlLWRvd24sIC5zaG93LWZvci14bGFyZ2Utb25seSwgLmhpZGUtZm9yLXhsYXJnZS11cCwgLnNob3ctZm9yLXhsYXJnZSwgLnNob3ctZm9yLXhsYXJnZS1kb3duLCAuaGlkZS1mb3IteHhsYXJnZS1vbmx5LCAuaGlkZS1mb3IteHhsYXJnZS11cCwgLmhpZGUtZm9yLXh4bGFyZ2UsIC5oaWRlLWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaGlkZGVuLWZvci1zbWFsbC1vbmx5LCAudmlzaWJsZS1mb3Itc21hbGwtdXAsIC5oaWRkZW4tZm9yLXNtYWxsLCAuaGlkZGVuLWZvci1zbWFsbC1kb3duLCAuaGlkZGVuLWZvci1tZWRpdW0tb25seSwgLnZpc2libGUtZm9yLW1lZGl1bS11cCwgLmhpZGRlbi1mb3ItbWVkaXVtLCAuaGlkZGVuLWZvci1tZWRpdW0tZG93biwgLmhpZGRlbi1mb3ItbGFyZ2Utb25seSwgLnZpc2libGUtZm9yLWxhcmdlLXVwLCAuaGlkZGVuLWZvci1sYXJnZSwgLmhpZGRlbi1mb3ItbGFyZ2UtZG93biwgLmhpZGRlbi1mb3IteGxhcmdlLW9ubHksIC52aXNpYmxlLWZvci14bGFyZ2UtdXAsIC5oaWRkZW4tZm9yLXhsYXJnZSwgLmhpZGRlbi1mb3IteGxhcmdlLWRvd24sIC52aXNpYmxlLWZvci14eGxhcmdlLW9ubHksIC52aXNpYmxlLWZvci14eGxhcmdlLXVwLCAudmlzaWJsZS1mb3IteHhsYXJnZSwgLnZpc2libGUtZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG4gIC52aXNpYmxlLWZvci1zbWFsbC1vbmx5LCAuaGlkZGVuLWZvci1zbWFsbC11cCwgLnZpc2libGUtZm9yLXNtYWxsLCAudmlzaWJsZS1mb3Itc21hbGwtZG93biwgLnZpc2libGUtZm9yLW1lZGl1bS1vbmx5LCAuaGlkZGVuLWZvci1tZWRpdW0tdXAsIC52aXNpYmxlLWZvci1tZWRpdW0sIC52aXNpYmxlLWZvci1tZWRpdW0tZG93biwgLnZpc2libGUtZm9yLWxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLWxhcmdlLXVwLCAudmlzaWJsZS1mb3ItbGFyZ2UsIC52aXNpYmxlLWZvci1sYXJnZS1kb3duLCAudmlzaWJsZS1mb3IteGxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLXhsYXJnZS11cCwgLnZpc2libGUtZm9yLXhsYXJnZSwgLnZpc2libGUtZm9yLXhsYXJnZS1kb3duLCAuaGlkZGVuLWZvci14eGxhcmdlLW9ubHksIC5oaWRkZW4tZm9yLXh4bGFyZ2UtdXAsIC5oaWRkZW4tZm9yLXh4bGFyZ2UsIC5oaWRkZW4tZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweDsgfVxuICB0YWJsZS5oaWRlLWZvci1zbWFsbC1vbmx5LCB0YWJsZS5zaG93LWZvci1zbWFsbC11cCwgdGFibGUuaGlkZS1mb3Itc21hbGwsIHRhYmxlLmhpZGUtZm9yLXNtYWxsLWRvd24sIHRhYmxlLmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0YWJsZS5zaG93LWZvci1tZWRpdW0tdXAsIHRhYmxlLmhpZGUtZm9yLW1lZGl1bSwgdGFibGUuaGlkZS1mb3ItbWVkaXVtLWRvd24sIHRhYmxlLmhpZGUtZm9yLWxhcmdlLW9ubHksIHRhYmxlLnNob3ctZm9yLWxhcmdlLXVwLCB0YWJsZS5oaWRlLWZvci1sYXJnZSwgdGFibGUuaGlkZS1mb3ItbGFyZ2UtZG93biwgdGFibGUuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRhYmxlLnNob3ctZm9yLXhsYXJnZS11cCwgdGFibGUuaGlkZS1mb3IteGxhcmdlLCB0YWJsZS5oaWRlLWZvci14bGFyZ2UtZG93biwgdGFibGUuc2hvdy1mb3IteHhsYXJnZS1vbmx5LCB0YWJsZS5zaG93LWZvci14eGxhcmdlLXVwLCB0YWJsZS5zaG93LWZvci14eGxhcmdlLCB0YWJsZS5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuaGlkZS1mb3Itc21hbGwtb25seSwgdGhlYWQuc2hvdy1mb3Itc21hbGwtdXAsIHRoZWFkLmhpZGUtZm9yLXNtYWxsLCB0aGVhZC5oaWRlLWZvci1zbWFsbC1kb3duLCB0aGVhZC5oaWRlLWZvci1tZWRpdW0tb25seSwgdGhlYWQuc2hvdy1mb3ItbWVkaXVtLXVwLCB0aGVhZC5oaWRlLWZvci1tZWRpdW0sIHRoZWFkLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0aGVhZC5oaWRlLWZvci1sYXJnZS1vbmx5LCB0aGVhZC5zaG93LWZvci1sYXJnZS11cCwgdGhlYWQuaGlkZS1mb3ItbGFyZ2UsIHRoZWFkLmhpZGUtZm9yLWxhcmdlLWRvd24sIHRoZWFkLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0aGVhZC5zaG93LWZvci14bGFyZ2UtdXAsIHRoZWFkLmhpZGUtZm9yLXhsYXJnZSwgdGhlYWQuaGlkZS1mb3IteGxhcmdlLWRvd24sIHRoZWFkLnNob3ctZm9yLXh4bGFyZ2Utb25seSwgdGhlYWQuc2hvdy1mb3IteHhsYXJnZS11cCwgdGhlYWQuc2hvdy1mb3IteHhsYXJnZSwgdGhlYWQuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5oaWRlLWZvci1zbWFsbC1vbmx5LCB0Ym9keS5zaG93LWZvci1zbWFsbC11cCwgdGJvZHkuaGlkZS1mb3Itc21hbGwsIHRib2R5LmhpZGUtZm9yLXNtYWxsLWRvd24sIHRib2R5LmhpZGUtZm9yLW1lZGl1bS1vbmx5LCB0Ym9keS5zaG93LWZvci1tZWRpdW0tdXAsIHRib2R5LmhpZGUtZm9yLW1lZGl1bSwgdGJvZHkuaGlkZS1mb3ItbWVkaXVtLWRvd24sIHRib2R5LmhpZGUtZm9yLWxhcmdlLW9ubHksIHRib2R5LnNob3ctZm9yLWxhcmdlLXVwLCB0Ym9keS5oaWRlLWZvci1sYXJnZSwgdGJvZHkuaGlkZS1mb3ItbGFyZ2UtZG93biwgdGJvZHkuaGlkZS1mb3IteGxhcmdlLW9ubHksIHRib2R5LnNob3ctZm9yLXhsYXJnZS11cCwgdGJvZHkuaGlkZS1mb3IteGxhcmdlLCB0Ym9keS5oaWRlLWZvci14bGFyZ2UtZG93biwgdGJvZHkuc2hvdy1mb3IteHhsYXJnZS1vbmx5LCB0Ym9keS5zaG93LWZvci14eGxhcmdlLXVwLCB0Ym9keS5zaG93LWZvci14eGxhcmdlLCB0Ym9keS5zaG93LWZvci14eGxhcmdlLWRvd24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRyLnNob3ctZm9yLXNtYWxsLXVwLCB0ci5oaWRlLWZvci1zbWFsbCwgdHIuaGlkZS1mb3Itc21hbGwtZG93biwgdHIuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRyLnNob3ctZm9yLW1lZGl1bS11cCwgdHIuaGlkZS1mb3ItbWVkaXVtLCB0ci5oaWRlLWZvci1tZWRpdW0tZG93biwgdHIuaGlkZS1mb3ItbGFyZ2Utb25seSwgdHIuc2hvdy1mb3ItbGFyZ2UtdXAsIHRyLmhpZGUtZm9yLWxhcmdlLCB0ci5oaWRlLWZvci1sYXJnZS1kb3duLCB0ci5oaWRlLWZvci14bGFyZ2Utb25seSwgdHIuc2hvdy1mb3IteGxhcmdlLXVwLCB0ci5oaWRlLWZvci14bGFyZ2UsIHRyLmhpZGUtZm9yLXhsYXJnZS1kb3duLCB0ci5zaG93LWZvci14eGxhcmdlLW9ubHksIHRyLnNob3ctZm9yLXh4bGFyZ2UtdXAsIHRyLnNob3ctZm9yLXh4bGFyZ2UsIHRyLnNob3ctZm9yLXh4bGFyZ2UtZG93biB7XG4gICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gIHRoLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRkLmhpZGUtZm9yLXNtYWxsLW9ubHksIHRoLnNob3ctZm9yLXNtYWxsLXVwLCB0ZC5zaG93LWZvci1zbWFsbC11cCwgdGguaGlkZS1mb3Itc21hbGwsIHRkLmhpZGUtZm9yLXNtYWxsLCB0aC5oaWRlLWZvci1zbWFsbC1kb3duLCB0ZC5oaWRlLWZvci1zbWFsbC1kb3duLCB0aC5oaWRlLWZvci1tZWRpdW0tb25seSwgdGQuaGlkZS1mb3ItbWVkaXVtLW9ubHksIHRoLnNob3ctZm9yLW1lZGl1bS11cCwgdGQuc2hvdy1mb3ItbWVkaXVtLXVwLCB0aC5oaWRlLWZvci1tZWRpdW0sIHRkLmhpZGUtZm9yLW1lZGl1bSwgdGguaGlkZS1mb3ItbWVkaXVtLWRvd24sIHRkLmhpZGUtZm9yLW1lZGl1bS1kb3duLCB0aC5oaWRlLWZvci1sYXJnZS1vbmx5LCB0ZC5oaWRlLWZvci1sYXJnZS1vbmx5LCB0aC5zaG93LWZvci1sYXJnZS11cCwgdGQuc2hvdy1mb3ItbGFyZ2UtdXAsIHRoLmhpZGUtZm9yLWxhcmdlLCB0ZC5oaWRlLWZvci1sYXJnZSwgdGguaGlkZS1mb3ItbGFyZ2UtZG93biwgdGQuaGlkZS1mb3ItbGFyZ2UtZG93biwgdGguaGlkZS1mb3IteGxhcmdlLW9ubHksIHRkLmhpZGUtZm9yLXhsYXJnZS1vbmx5LCB0aC5zaG93LWZvci14bGFyZ2UtdXAsIHRkLnNob3ctZm9yLXhsYXJnZS11cCwgdGguaGlkZS1mb3IteGxhcmdlLCB0ZC5oaWRlLWZvci14bGFyZ2UsIHRoLmhpZGUtZm9yLXhsYXJnZS1kb3duLCB0ZC5oaWRlLWZvci14bGFyZ2UtZG93biwgdGguc2hvdy1mb3IteHhsYXJnZS1vbmx5LCB0ZC5zaG93LWZvci14eGxhcmdlLW9ubHksIHRoLnNob3ctZm9yLXh4bGFyZ2UtdXAsIHRkLnNob3ctZm9yLXh4bGFyZ2UtdXAsIHRoLnNob3ctZm9yLXh4bGFyZ2UsIHRkLnNob3ctZm9yLXh4bGFyZ2UsIHRoLnNob3ctZm9yLXh4bGFyZ2UtZG93biwgdGQuc2hvdy1mb3IteHhsYXJnZS1kb3duIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBPcmllbnRhdGlvbiB0YXJnZXRpbmcgKi9cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbnRhYmxlLmhpZGUtZm9yLWxhbmRzY2FwZSwgdGFibGUuc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG5cbnRoZWFkLmhpZGUtZm9yLWxhbmRzY2FwZSwgdGhlYWQuc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuXG50Ym9keS5oaWRlLWZvci1sYW5kc2NhcGUsIHRib2R5LnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cblxudHIuaGlkZS1mb3ItbGFuZHNjYXBlLCB0ci5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG5cbnRkLmhpZGUtZm9yLWxhbmRzY2FwZSwgdGQuc2hvdy1mb3ItcG9ydHJhaXQsXG50aC5oaWRlLWZvci1sYW5kc2NhcGUsXG50aC5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICB0YWJsZS5zaG93LWZvci1sYW5kc2NhcGUsIHRhYmxlLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLWxhbmRzY2FwZSwgdGhlYWQuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLWxhbmRzY2FwZSwgdGJvZHkuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLWxhbmRzY2FwZSwgdHIuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLWxhbmRzY2FwZSwgdGQuaGlkZS1mb3ItcG9ydHJhaXQsXG4gIHRoLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgdGguaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuc2hvdy1mb3ItcG9ydHJhaXQsXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUge1xuICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcG9ydHJhaXQsXG4gIC5zaG93LWZvci1sYW5kc2NhcGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbiAgdGFibGUuc2hvdy1mb3ItcG9ydHJhaXQsIHRhYmxlLmhpZGUtZm9yLWxhbmRzY2FwZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wb3J0cmFpdCwgdGhlYWQuaGlkZS1mb3ItbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wb3J0cmFpdCwgdGJvZHkuaGlkZS1mb3ItbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wb3J0cmFpdCwgdHIuaGlkZS1mb3ItbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wb3J0cmFpdCwgdGQuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICB0aC5zaG93LWZvci1wb3J0cmFpdCxcbiAgdGguaGlkZS1mb3ItbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBUb3VjaC1lbmFibGVkIGRldmljZSB0YXJnZXRpbmcgKi9cbi5zaG93LWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaGlkZS1mb3ItdG91Y2gge1xuICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLnRvdWNoIC5zaG93LWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuXG4udG91Y2ggLmhpZGUtZm9yLXRvdWNoIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xudGFibGUuaGlkZS1mb3ItdG91Y2gge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG5cbi50b3VjaCB0YWJsZS5zaG93LWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cblxudGhlYWQuaGlkZS1mb3ItdG91Y2gge1xuICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuXG4udG91Y2ggdGhlYWQuc2hvdy1mb3ItdG91Y2gge1xuICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuXG50Ym9keS5oaWRlLWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG5cbi50b3VjaCB0Ym9keS5zaG93LWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG5cbnRyLmhpZGUtZm9yLXRvdWNoIHtcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cblxuLnRvdWNoIHRyLnNob3ctZm9yLXRvdWNoIHtcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cblxudGQuaGlkZS1mb3ItdG91Y2gge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuLnRvdWNoIHRkLnNob3ctZm9yLXRvdWNoIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbnRoLmhpZGUtZm9yLXRvdWNoIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbi50b3VjaCB0aC5zaG93LWZvci10b3VjaCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4vKiBTY3JlZW4gcmVhZGVyLXNwZWNpZmljIGNsYXNzZXMgKi9cbi5zaG93LWZvci1zciB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4OyB9XG5cbi5zaG93LW9uLWZvY3VzIHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7IH1cbiAgLnNob3ctb24tZm9jdXM6Zm9jdXMsIC5zaG93LW9uLWZvY3VzOmFjdGl2ZSB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG5cbi8qIFByaW50IHZpc2liaWxpdHkgKi9cbi5wcmludC1vbmx5LFxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC5wcmludC1vbmx5LFxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtb24tcHJpbnQsXG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbmh0bWwsIGJvZHkge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuI3BhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA0MDJweDsgfVxuICAjcGFnZSAjaGVhZGVyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgICNwYWdlICNoZWFkZXIgI2hlYWRlci10b3AgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAgICNwYWdlICNoZWFkZXIgI2hlYWRlci1tYWluID4gLmxheW91dC1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cblxuYm9keTpub3QoLnBhZ2Utbm9kZS10eXBlLXBhZ2UpICNjb250ZW50ICNjb250ZW50LW1haW4gPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNjRyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbiNmb290ZXIge1xuICBtYXJnaW4tdG9wOiAtNDAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjZm9vdGVyID4gLmxheW91dC1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNjRyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG5cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBjb2xvcjogIzMzMzMzMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogOTVweDsgfVxuICAjaGVhZGVyICoge1xuICAgIGNvbG9yOiAjMzMzMzMzOyB9XG4gICNoZWFkZXIgI2hlYWRlci10b3Age1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuICAgICNoZWFkZXIgI2hlYWRlci10b3AgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMC43Nzc3OHJlbSAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiA5NXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICNoZWFkZXIgI2hlYWRlci10b3AgI2Jsb2NrLXN0YXJ0ZXItYnJhbmRpbmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwLjc1cmVtO1xuICAgICAgbGVmdDogMS41cmVtO1xuICAgICAgaGVpZ2h0OiAzLjc3Nzc4cmVtO1xuICAgICAgZm9udC1zaXplOiAwOyB9XG4gICAgICAjaGVhZGVyICNoZWFkZXItdG9wICNibG9jay1zdGFydGVyLWJyYW5kaW5nIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1zdGFydGVyLW1haW4tbWVudSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLXN0YXJ0ZXItbWFpbi1tZW51ID4gdWwge1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgI2hlYWRlciAjaGVhZGVyLXRvcCBuYXYjYmxvY2stc3RhcnRlci1tYWluLW1lbnUgPiB1bDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1zdGFydGVyLW1haW4tbWVudSA+IHVsIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGhlaWdodDogMy43Nzc3OHJlbTtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTsgfVxuICAgICAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLXN0YXJ0ZXItbWFpbi1tZW51ID4gdWwgbGkgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAgICAgICAgICAgI2hlYWRlciAjaGVhZGVyLXRvcCBuYXYjYmxvY2stc3RhcnRlci1tYWluLW1lbnUgPiB1bCBsaSBhLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzMzMzMzM7IH1cbiAgICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1zdGFydGVyLW1haW4tbWVudSA+IHVsIGxpIGFbdGl0bGU9JzI1dGggQW5uaXZlcnNhcnknXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjVfYW5uaXZlcnNhcnkuanBnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIHdpZHRoOiA0LjQ0NDQ0cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA0LjQ0NDQ0cmVtO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLXN0YXJ0ZXItbWFpbi1tZW51LnNob3ctZGVza3RvcCA+IHVsIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAgICAgI2hlYWRlciAjaGVhZGVyLXRvcCBuYXYjYmxvY2stc3RhcnRlci1tYWluLW1lbnUgLm1vYmlsZS1tZW51LWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDIuMjIyMjJyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6ICMxMjVFOTE7IH1cbiAgICAgICAgI2hlYWRlciAjaGVhZGVyLXRvcCBuYXYjYmxvY2stc3RhcnRlci1tYWluLW1lbnUgLm1vYmlsZS1tZW51LWJ1dHRvbi5vcGVuIHtcbiAgICAgICAgICBmb250LXNpemU6IDA7IH1cbiAgICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1zdGFydGVyLW1haW4tbWVudSAubW9iaWxlLW1lbnUtYnV0dG9uLm9wZW46YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ8OXJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMjIyMjJyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLXN0YXJ0ZXItbWFpbi1tZW51LnNob3ctbW9iaWxlIHVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0xMDB2aDsgfVxuICAgICAgI2hlYWRlciAjaGVhZGVyLXRvcCBuYXYjYmxvY2stc3RhcnRlci1tYWluLW1lbnUuc2hvdy1tb2JpbGUgLm1vYmlsZS1tZW51LWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1tYWlubmF2aWdhdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IDk1cHg7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB6LWluZGV4OiAxMDAxO1xuICAgICAgYmFja2dyb3VuZDogIzEyNUU5MTtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIGJvZHkudG9vbGJhci1maXhlZCAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1tYWlubmF2aWdhdGlvbiB7XG4gICAgICAgIHRvcDogMTM0cHg7IH1cbiAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLW1haW5uYXZpZ2F0aW9uID4gdWw6bm90KC5jb250ZXh0dWFsLWxpbmtzKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1tYWlubmF2aWdhdGlvbiA+IHVsOm5vdCguY29udGV4dHVhbC1saW5rcykgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1tYWlubmF2aWdhdGlvbiA+IHVsOm5vdCguY29udGV4dHVhbC1saW5rcykgbGkgYSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNDQ0NDRyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgICAjaGVhZGVyICNoZWFkZXItdG9wIG5hdiNibG9jay1tYWlubmF2aWdhdGlvbiA+IHVsOm5vdCguY29udGV4dHVhbC1saW5rcykgbGkgYVt0aXRsZT0nMjV0aCBBbm5pdmVyc2FyeSddIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICNoZWFkZXIgI2hlYWRlci10b3AgbmF2I2Jsb2NrLW1haW5uYXZpZ2F0aW9uLm9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAjaGVhZGVyICNoZWFkZXItbWFpbiB7XG4gICAgYmFja2dyb3VuZDogIzAzNDQ2ZjsgfVxuICAgICNoZWFkZXIgI2hlYWRlci1tYWluICNibG9jay1qdmJydW5pYW5kY29tcGFueSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwOyB9XG4gICAgICAjaGVhZGVyICNoZWFkZXItbWFpbiAjYmxvY2stanZicnVuaWFuZGNvbXBhbnkgKiB7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBmb250LWZhbWlseTogXCJQaW55b24gU2NyaXB0XCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42NjY2N3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICAgICNoZWFkZXIgI2hlYWRlci1tYWluICNibG9jay1qdmJydW5pYW5kY29tcGFueSAqIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXZ3OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgICAjaGVhZGVyICNoZWFkZXItbWFpbiAjYmxvY2stanZicnVuaWFuZGNvbXBhbnkgKiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDd2dzsgfSB9XG5cbmJvZHkudG9vbGJhci1maXhlZCAjaGVhZGVyICNoZWFkZXItdG9wIHtcbiAgdG9wOiAzOXB4OyB9XG5cbmJvZHkudG9vbGJhci1maXhlZC50b29sYmFyLWhvcml6b250YWwudG9vbGJhci10cmF5LW9wZW4gI2hlYWRlciAjaGVhZGVyLXRvcCB7XG4gIHRvcDogNzlweDsgfVxuXG5ib2R5LnRvb2xiYXItZml4ZWQudG9vbGJhci12ZXJ0aWNhbC50b29sYmFyLXRyYXktb3BlbiAjaGVhZGVyICNoZWFkZXItdG9wIHtcbiAgdG9wOiAzOXB4O1xuICBsZWZ0OiAyNDBweDsgfVxuXG4jcGFnZSAjY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiAjMzMzMzMzOyB9XG4gICNwYWdlICNjb250ZW50ICNjb250ZW50LW1haW4gPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07IH1cblxuI3BhZ2UgI3BhZ2Utc2Nyb2xsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gIHJpZ2h0OiAtMTAwcHg7XG4gIHotaW5kZXg6IDEwMTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgZm9udC1mYW1pbHk6IG94Ym93O1xuICBmb250LXN0eWxlOiAxOXB4O1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC41cztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC8qIGlPUyBTYWZhcmkgKi9cbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLyogQ2hyb21lL1NhZmFyaS9PcGVyYSAqL1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC8qIEtvbnF1ZXJvciAqL1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAvKiBGaXJlZm94ICovXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgLyogSW50ZXJuZXQgRXhwbG9yZXIvRWRnZSAqL1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLyogTm9uLXByZWZpeGVkIHZlcnNpb24sIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIGJ5IGFueSBicm93c2VyICovIH1cbiAgI3BhZ2UgI3BhZ2Utc2Nyb2xsLnNob3cge1xuICAgIHJpZ2h0OiAyMHB4OyB9XG5cbmJvZHkudXNlci1sb2dnZWQtaW4gI3BhZ2UgI3BhZ2Utc2Nyb2xsIHtcbiAgYm90dG9tOiA2MHB4OyB9XG5cbiNmb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDk5O1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBjb2xvcjogI0RERERERDsgfVxuICAjZm9vdGVyICoge1xuICAgIGNvbG9yOiAjREREREREOyB9XG4gICNmb290ZXIgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07IH1cbiAgI2Zvb3RlciAjYmxvY2stZm9vdGVyYWRkcmVzcyB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgI2Zvb3RlciAjYmxvY2stZm9vdGVyYWRkcmVzcyAuZmllbGQtLW5hbWUtYm9keSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAjZm9vdGVyICNibG9jay1mb290ZXJhZGRyZXNzIC5maWVsZC0tbmFtZS1ib2R5ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgI2Zvb3RlciAjYmxvY2stZGlzY2xhaW1lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2N3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtOyB9XG4gICAgI2Zvb3RlciAjYmxvY2stZGlzY2xhaW1lciAqIHtcbiAgICAgIGZvbnQtc2l6ZTogLjkwZW07XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAjZm9vdGVyICNibG9jay1jb3B5cmlnaHRibG9jayB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgZm9udC1zaXplOiAuOTBlbTsgfVxuICAgICNmb290ZXIgI2Jsb2NrLWNvcHlyaWdodGJsb2NrICoge1xuICAgICAgY29sb3I6ICM5OTk7IH1cbiAgI2Zvb3RlciAjYmxvY2stb3hib3dsYWJzY29weXJpZ2h0YmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiAuOTBlbTsgfVxuICAgICNmb290ZXIgI2Jsb2NrLW94Ym93bGFic2NvcHlyaWdodGJsb2NrICoge1xuICAgICAgY29sb3I6ICM2NjY2NjY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAjZm9vdGVyICNibG9jay1mb290ZXJhZGRyZXNzIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07IH1cbiAgICAgICNmb290ZXIgI2Jsb2NrLWZvb3RlcmFkZHJlc3MgKiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICNmb290ZXIgI2Jsb2NrLWRpc2NsYWltZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICNmb290ZXIgI2Jsb2NrLWNvcHlyaWdodGJsb2NrIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICNmb290ZXIgI2Jsb2NrLW94Ym93bGFic2NvcHlyaWdodGJsb2NrIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5mcy1zIHtcbiAgZm9udC1zaXplOiAxMy41cHg7IH1cblxuLmZzLW0ge1xuICBmb250LXNpemU6IDE4cHg7IH1cblxuLmZzLWwge1xuICBmb250LXNpemU6IDIyLjVweDsgfVxuXG4uZnMteGwge1xuICBmb250LXNpemU6IDI3cHg7IH1cblxuLmZzLXh4bCB7XG4gIGZvbnQtc2l6ZTogMzEuNXB4OyB9XG5cbi5mLXNlcmlmLFxuLmYtc2VyaWYgKiB7XG4gIGZvbnQtZmFtaWx5OiBcIlRpbm9zXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5mLXNhbnMsXG4uZi1zYW5zICoge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IH1cblxucDpub3QoLnRleHQtYWxpZ24tY2VudGVyKTpub3QoLnRleHQtYWxpZ24tcmlnaHQpIHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5ociB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9XG4gIGhyOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwyNjY2JyAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjYmZiZmJmO1xuICAgIGNvbG9yOiAjYmZiZmJmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuXG4jYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIGgxIHtcbiAgcGFkZGluZy10b3A6IDNyZW07IH1cbiAgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSBoMS5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYXJhZ3JhcGgudGl0bGUtYWxpZ24tY2VudGVyIC5maWVsZC0tbmFtZS1maWVsZC1wLXRpdGxlLFxuLnBfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wYXJhZ3JhcGgudGl0bGUtYWxpZ24tcmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtdGl0bGUge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5oMSwgaDIge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiBcIlRpbm9zXCIsIHNlcmlmOyB9XG5cbnRhYmxlIHtcbiAgbWFyZ2luOiAxLjVyZW0gYXV0bztcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuICB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7IH1cbiAgdGFibGUgY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiBib3R0b207IH1cblxuLnZpZXctaW5zaWdodHMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXdzLXJvdywgYmxvY2txdW90ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJUaW5vc1wiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjQ0NDQ0cmVtOyB9XG4gIC52aWV3LWluc2lnaHRzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3cy1yb3cgKiwgYmxvY2txdW90ZSAqIHtcbiAgICBmb250LXNpemU6IDEuMjIyMjJyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiVGlub3NcIiwgc2VyaWY7IH1cbiAgLnZpZXctaW5zaWdodHMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXdzLXJvdzphZnRlciwgYmxvY2txdW90ZTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDAuMjc3NzhyZW07XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgYmFja2dyb3VuZDogIzM0OThEQjsgfVxuICAudmlldy1pbnNpZ2h0cy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlld3Mtcm93OmJlZm9yZSwgYmxvY2txdW90ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMUMnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xLjY2NjY3cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMy4zMzMzM3JlbTtcbiAgICBoZWlnaHQ6IDMuMzMzMzNyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA1O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDVyZW07IH1cblxudWwge1xuICBtYXJnaW46IDEuNXJlbSAwIDEuNXJlbSAxLjlyZW07IH1cbiAgdWw6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgdWw6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYnV0dG9uLWRlZmF1bHQsXG4uaXMtc3R5bGUtYnV0dG9uIC5idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwIDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjgwNTU2cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OThEQjtcbiAgYm9yZGVyLWNvbG9yOiAjMjE3YmI4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMC4xNjY2N3JlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLW91dDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIC5idXR0b24tZGVmYXVsdDpob3ZlciwgLmJ1dHRvbi1kZWZhdWx0OmZvY3VzLFxuICAuaXMtc3R5bGUtYnV0dG9uIC5idXR0b246aG92ZXIsXG4gIC5pcy1zdHlsZS1idXR0b24gLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxN2JiODsgfVxuICAuYnV0dG9uLWRlZmF1bHQ6aG92ZXIsIC5idXR0b24tZGVmYXVsdDpmb2N1cyxcbiAgLmlzLXN0eWxlLWJ1dHRvbiAuYnV0dG9uOmhvdmVyLFxuICAuaXMtc3R5bGUtYnV0dG9uIC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5idXR0b24tc2Vjb25kYXJ5IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW0gMC44MDU1NnJlbSAxLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGJvcmRlci1jb2xvcjogIzUyNTI1MjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuICAuYnV0dG9uLXNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi1zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MjUyNTI7IH1cbiAgLmJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uYnV0dG9uLXRlcnRpYXJ5IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW0gMC44MDU1NnJlbSAxLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIGJvcmRlci1jb2xvcjogI2JmYmZiZjtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gIGNvbG9yOiAjMzMzMzMzICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuICAuYnV0dG9uLXRlcnRpYXJ5OmhvdmVyLCAuYnV0dG9uLXRlcnRpYXJ5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmZiZmJmOyB9XG4gIC5idXR0b24tdGVydGlhcnk6aG92ZXIsIC5idXR0b24tdGVydGlhcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAjMzMzMzMzOyB9XG5cbi5idXR0b24td2hpdGUge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwIDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjgwNTU2cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYztcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gIGNvbG9yOiAjMzMzMzMzICFpbXBvcnRhbnQ7IH1cbiAgLmJ1dHRvbi13aGl0ZTpob3ZlciwgLmJ1dHRvbi13aGl0ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYzsgfVxuICAuYnV0dG9uLXdoaXRlOmhvdmVyLCAuYnV0dG9uLXdoaXRlOmZvY3VzIHtcbiAgICBjb2xvcjogIzMzMzMzMzsgfVxuXG4uYnV0dG9uLW91dGxpbmUsXG4uaXMtc3R5bGUtYnV0dG9uLW91dGxpbmUgLmJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDAgMCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtIDAuODA1NTZyZW0gMS41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMC4xNjY2N3JlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLW91dDtcbiAgY29sb3I6IGJsYWNrO1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsgfVxuICAuYnV0dG9uLW91dGxpbmU6aG92ZXIsIC5idXR0b24tb3V0bGluZTpmb2N1cyxcbiAgLmlzLXN0eWxlLWJ1dHRvbi1vdXRsaW5lIC5idXR0b246aG92ZXIsXG4gIC5pcy1zdHlsZS1idXR0b24tb3V0bGluZSAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG4gIC5idXR0b24tb3V0bGluZTpob3ZlciwgLmJ1dHRvbi1vdXRsaW5lOmZvY3VzLFxuICAuaXMtc3R5bGUtYnV0dG9uLW91dGxpbmUgLmJ1dHRvbjpob3ZlcixcbiAgLmlzLXN0eWxlLWJ1dHRvbi1vdXRsaW5lIC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC5idXR0b24tb3V0bGluZTpob3ZlciwgLmJ1dHRvbi1vdXRsaW5lOmZvY3VzLFxuICAuaXMtc3R5bGUtYnV0dG9uLW91dGxpbmUgLmJ1dHRvbjpob3ZlcixcbiAgLmlzLXN0eWxlLWJ1dHRvbi1vdXRsaW5lIC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uYnV0dG9uLW91dGxpbmUge1xuICBib3JkZXItY29sb3I6ICM0NTVhNjQ7XG4gIGNvbG9yOiAjNDU1YTY0OyB9XG5cbmZvcm0gLmZvcm0tc3VibWl0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC44ODg4OXJlbSAxLjc3Nzc4cmVtIDAuOTQ0NDRyZW0gMS43Nzc3OHJlbTtcbiAgZm9udC1zaXplOiAwLjg4ODg5cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5OERCO1xuICBib3JkZXItY29sb3I6ICMyMTdiYjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2Utb3V0OyB9XG4gIGZvcm0gLmZvcm0tc3VibWl0OmhvdmVyLCBmb3JtIC5mb3JtLXN1Ym1pdDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxN2JiODsgfVxuICBmb3JtIC5mb3JtLXN1Ym1pdDpob3ZlciwgZm9ybSAuZm9ybS1zdWJtaXQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG5cbmZvcm0gLmZvcm0taXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0gLmZvcm0taXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0gaW5wdXQsIGZvcm0gLmZvcm0taXRlbSB0ZXh0YXJlYSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIGZvcm0gLmZvcm0taXRlbSAuZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMC43Nzc3OHJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjM3NXJlbTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0gbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMS4wNTU1NnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXJhZGlvIGlucHV0LCBmb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLWNoZWNrYm94IGlucHV0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGZvcm0gLmZvcm0taXRlbS5mb3JtLXR5cGUtcmFkaW8gbGFiZWwsIGZvcm0gLmZvcm0taXRlbS5mb3JtLXR5cGUtY2hlY2tib3ggbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgZm9ybSAuZm9ybS1pdGVtLmZvcm0tdHlwZS1yYWRpbyBsYWJlbDpiZWZvcmUsIGZvcm0gLmZvcm0taXRlbS5mb3JtLXR5cGUtY2hlY2tib3ggbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDFlbTtcbiAgICAgIGhlaWdodDogMWVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAuMWVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7IH1cbiAgZm9ybSAuZm9ybS1pdGVtLmZvcm0tdHlwZS1yYWRpbyBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCBmb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLWNoZWNrYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgIGJvcmRlci1jb2xvcjogIzk5OTk5OTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXJhZGlvIGxhYmVsOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIGZvcm0gLmZvcm0taXRlbS53ZWJmb3JtLWNvbXBvbmVudC1maWxlOmJlZm9yZSwgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LWZpbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIGZvcm0gLmZvcm0taXRlbS53ZWJmb3JtLWNvbXBvbmVudC1maWxlOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtZmlsZSAuZm9ybS1tYW5hZ2VkLWZpbGU6YmVmb3JlLCBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtZmlsZSAuZm9ybS1tYW5hZ2VkLWZpbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIGZvcm0gLmZvcm0taXRlbS53ZWJmb3JtLWNvbXBvbmVudC1maWxlIC5mb3JtLW1hbmFnZWQtZmlsZTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LWZpbGUgLmZvcm0tbWFuYWdlZC1maWxlIC5mb3JtLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuICBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZSB7XG4gICAgZm9udC1zaXplOiAwOyB9XG4gICAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWU6YmVmb3JlLCBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWU6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZSAud2ViZm9ybS1jb250YWluZXItaW5saW5lID4gKiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgICAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLndlYmZvcm0tY29udGFpbmVyLWlubGluZSA+ICogLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0taXRlbS1zdWJtaXR0ZWQtdGltZS1ob3VyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZSAuZm9ybS1pdGVtLXN1Ym1pdHRlZC10aW1lLWhvdXIge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgIGZvcm0gLmZvcm0taXRlbS53ZWJmb3JtLWNvbXBvbmVudC10aW1lIC5mb3JtLWl0ZW0tc3VibWl0dGVkLXRpbWUtbWludXRlIHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtOyB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICAgZm9ybSAuZm9ybS1pdGVtLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0taXRlbS1zdWJtaXR0ZWQtdGltZS1taW51dGUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICBmb3JtIC5mb3JtLWl0ZW0ud2ViZm9ybS1jb21wb25lbnQtdGltZSAuZm9ybS1yYWRpb3Mge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogMi4yMjIyMnJlbTsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgIGZvcm0gLmZvcm0taXRlbS53ZWJmb3JtLWNvbXBvbmVudC10aW1lIC5mb3JtLXJhZGlvcyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5ib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuYm9keS5wYWdlLW5vZGUtdHlwZS1wYWdlIC5wYWdlcl9faXRlbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgLnBhZ2VyX19pdGVtcyBhIHtcbiAgICBwYWRkaW5nOiAuNWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5pcy1hY3RpdmUgYm9keS5wYWdlLW5vZGUtdHlwZS1wYWdlIC5wYWdlcl9faXRlbXMgYTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwLjI3NXJlbTtcbiAgICAgIHJpZ2h0OiAwLjI3NXJlbTtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDsgfVxuXG5ib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgI2NvbnRlbnQgI2NvbnRlbnQtbWFpbiA+IC5sYXlvdXQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgI2NvbnRlbnQgI2NvbnRlbnQtbWFpbiA+IC5sYXlvdXQtY29udGFpbmVyIC5maWVsZC0tbmFtZS1ib2R5IGgxIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTsgfVxuICBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgI2NvbnRlbnQgI2NvbnRlbnQtbWFpbiA+IC5sYXlvdXQtY29udGFpbmVyIC5maWVsZC0tbmFtZS1ib2R5IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJUaW5vc1wiLCBzZXJpZjsgfVxuICBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgI2NvbnRlbnQgI2NvbnRlbnQtbWFpbiA+IC5sYXlvdXQtY29udGFpbmVyIC5maWVsZC0tbmFtZS1ib2R5ID4gKjpub3QoLmFsaWduZnVsbCkge1xuICAgIG1heC13aWR0aDogNjRyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgYm9keS5wYWdlLW5vZGUtdHlwZS1wYWdlICNjb250ZW50ICNjb250ZW50LW1haW4gPiAubGF5b3V0LWNvbnRhaW5lciAuZmllbGQtLW5hbWUtYm9keSA+IC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4jYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIGgxIHtcbiAgcGFkZGluZy10b3A6IDNyZW07IH1cblxuaDEuaXMtc3R5bGUtdGV4dC1zaGFkb3csXG5oMi5pcy1zdHlsZS10ZXh0LXNoYWRvdyxcbmgzLmlzLXN0eWxlLXRleHQtc2hhZG93LFxuaDQuaXMtc3R5bGUtdGV4dC1zaGFkb3csXG5oNS5pcy1zdHlsZS10ZXh0LXNoYWRvdyxcbi5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwgbGkgYS5pcy1zdHlsZS10ZXh0LXNoYWRvdyxcbmg2LmlzLXN0eWxlLXRleHQtc2hhZG93IHtcbiAgdGV4dC1zaGFkb3c6IDAgMCA1cHggYmxhY2s7IH1cblxuLndwLWJsb2NrLWp2YnJ1bmktc3BhY2VyIHtcbiAgaGVpZ2h0OiAzcmVtOyB9XG4gIC53cC1ibG9jay1qdmJydW5pLXNwYWNlci5pcy1zdHlsZS1sYXJnZSB7XG4gICAgaGVpZ2h0OiAxcmVtOyB9XG4gIC53cC1ibG9jay1qdmJydW5pLXNwYWNlci5pcy1zdHlsZS1tZWRpdW0ge1xuICAgIGhlaWdodDogM3JlbTsgfVxuICAud3AtYmxvY2stanZicnVuaS1zcGFjZXIuaXMtc3R5bGUtbGFyZ2Uge1xuICAgIGhlaWdodDogNnJlbTsgfVxuXG4ud3AtYmxvY2stY292ZXIsXG4ud3AtYmxvY2stY292ZXItaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEuNXJlbTsgfVxuICAud3AtYmxvY2stY292ZXIgPiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbiAgLndwLWJsb2NrLWNvdmVyLWltYWdlID4gLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNjRyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLndwLWJsb2NrLWltYWdlIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLndwLWJsb2NrLWltYWdlIGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi53cC1ibG9jay1jb2x1bW5zIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmQsXG4ud3AtYmxvY2stY292ZXIuaGFzLWJhY2tncm91bmQge1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9XG5cbi53cC1ibG9jay1ncm91cC5pcy1zdHlsZS1wYWRkaW5nLWxhcmdlLFxuLndwLWJsb2NrLWNvdmVyLmlzLXN0eWxlLXBhZGRpbmctbGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07IH1cblxuLndwLWJsb2NrLWdyb3VwIGgxLFxuLndwLWJsb2NrLWNvdmVyIGgxIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ud3AtYmxvY2stZ3JvdXAgLnZpZXdzLWVsZW1lbnQtY29udGFpbmVyID4gaDIsXG4ud3AtYmxvY2stY292ZXIgLnZpZXdzLWVsZW1lbnQtY29udGFpbmVyID4gaDIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5hbGlnbmxlZnQsXG4uYWxpZ25jZW50ZXIsXG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMS41ZW07IH1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWducmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uaGFzLXRleHQtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyAudmlldy1maWx0ZXJzIC52aWV3LWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyAudmlldy1maWx0ZXJzIC5idXR0b24tb3V0bGluZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIC52aWV3LWZpbHRlcnMgLmJ1dHRvbi1vdXRsaW5lLmZpbHRlci1hY3RpdmUge1xuICAgICAgY29sb3I6ICMzNDk4REI7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIC5ub2RlX19jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLm5vZGVfX2NhcmQgLmZpZWxkLS1uYW1lLWJvZHkgPiAqIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyAudmlld3MtZ3JvdXBfX3RpdGxlIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogIzM0OThEQjsgfVxuICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIC52aWV3cy1ncm91cF9fYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4udmlldy10b3BpY3Mudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnZpZXctdG9waWNzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LXRvcGljcy1saXN0IC52aWV3LWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWFydGljbGVzX2Jsb2NrIGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cblxuI2NvbnRlbnQtdG9wIC5tZXNzYWdlcyB7XG4gIG1heC13aWR0aDogNjRyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgI2NvbnRlbnQtdG9wIC5tZXNzYWdlcyAubWVzc2FnZV9fY29udGVudCB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuNzIyMjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjExMTExcmVtO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAyLjA1NTU2cmVtIDEuNXJlbSAxLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZS1vdXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGVzbW9rZTtcbiAgICBib3JkZXItY29sb3I6IGxpZ2h0Z3JheTtcbiAgICBjb2xvcjogIzdhMDAzZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDZyZW0gc29saWQgIzVCQjFEMztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LWZhbWlseTogXCJPeHlnZW4gTW9ub1wiLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAjY29udGVudC10b3AgLm1lc3NhZ2VzIC5tZXNzYWdlX19jb250ZW50OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXEU4MzEnO1xuICAgICAgZm9udC1mYW1pbHk6IG94Ym93O1xuICAgICAgd2lkdGg6IDZyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtNnJlbTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxLjExMTExcmVtO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuICAgICNjb250ZW50LXRvcCAubWVzc2FnZXMgLm1lc3NhZ2VfX2NvbnRlbnQgLmNsb3NlIHtcbiAgICAgIHJpZ2h0OiAwLjIyMjIycmVtO1xuICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgZm9udC1zaXplOiAxLjIyMjIycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IC45O1xuICAgICAgbWFyZ2luLXRvcDogLTAuNjExMTFyZW07XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICBwYWRkaW5nOiAwIDZweCA0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICByaWdodDogMC43NXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuICAgICAgI2NvbnRlbnQtdG9wIC5tZXNzYWdlcyAubWVzc2FnZV9fY29udGVudCAuY2xvc2U6aG92ZXIsICNjb250ZW50LXRvcCAubWVzc2FnZXMgLm1lc3NhZ2VfX2NvbnRlbnQgLmNsb3NlOmZvY3VzIHtcbiAgICAgICAgb3BhY2l0eTogMC41OyB9XG4gICNjb250ZW50LXRvcCAubWVzc2FnZXMubWVzc2FnZXMtLXN0YXR1cyAubWVzc2FnZV9fY29udGVudCB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICM0M0FDNkE7IH1cbiAgICAjY29udGVudC10b3AgLm1lc3NhZ2VzLm1lc3NhZ2VzLS1zdGF0dXMgLm1lc3NhZ2VfX2NvbnRlbnQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcRTgxRCc7IH1cbiAgI2NvbnRlbnQtdG9wIC5tZXNzYWdlcy5tZXNzYWdlcy0tZXJyb3IgLm1lc3NhZ2VfX2NvbnRlbnQge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZjA0MTI0OyB9XG4gICAgI2NvbnRlbnQtdG9wIC5tZXNzYWdlcy5tZXNzYWdlcy0tZXJyb3IgLm1lc3NhZ2VfX2NvbnRlbnQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcRTgzQyc7IH1cbiAgI2NvbnRlbnQtdG9wIC5tZXNzYWdlcy5tZXNzYWdlcy0td2FybmluZyAubWVzc2FnZV9fY29udGVudCB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICNmMDhhMjQ7IH1cbiAgICAjY29udGVudC10b3AgLm1lc3NhZ2VzLm1lc3NhZ2VzLS13YXJuaW5nIC5tZXNzYWdlX19jb250ZW50OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXEU4NDEnOyB9XG4gICNjb250ZW50LXRvcCAubWVzc2FnZXMuYWxlcnQtY2xvc2Uge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDsgfVxuXG4jYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3Mge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC0xcHg7XG4gIHotaW5kZXg6IDEwMDA7XG4gIG1heC13aWR0aDogNjRyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsIGxpIGEge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjgwNTU2cmVtIDEuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWVkaXVtc2VhZ3JlZW47XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzMwOGY1YTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gICAgICAgICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bCBsaSBhOmhvdmVyLCAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYTpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwOGY1YTsgfVxuICAgICAgICAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYTpob3ZlciwgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsIGxpIGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAgICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bCBsaSBhLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYVtocmVmJD0nZGVsZXRlJ10ge1xuICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjgwNTU2cmVtIDEuNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjcmltc29uO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2IwMTAzMDtcbiAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgICAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYVtocmVmJD0nZGVsZXRlJ106aG92ZXIsICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bCBsaSBhW2hyZWYkPSdkZWxldGUnXTpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjAxMDMwOyB9XG4gICAgICAgICAgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsIGxpIGFbaHJlZiQ9J2RlbGV0ZSddOmhvdmVyLCAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYVtocmVmJD0nZGVsZXRlJ106Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAgICAgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsIGxpIGFbaHJlZio9J2RldmVsJ10ge1xuICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjgwNTU2cmVtIDEuNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb2xkO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2NjYWMwMDtcbiAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgICAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYVtocmVmKj0nZGV2ZWwnXTpob3ZlciwgI2FkbWluICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHVsIGxpIGFbaHJlZio9J2RldmVsJ106Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYWMwMDsgfVxuICAgICAgICAgICNhZG1pbiAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB1bCBsaSBhW2hyZWYqPSdkZXZlbCddOmhvdmVyLCAjYWRtaW4gI2Jsb2NrLXN0YXJ0ZXItbG9jYWwtdGFza3MgdWwgbGkgYVtocmVmKj0nZGV2ZWwnXTpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4jdG9vbGJhci1hZG1pbmlzdHJhdGlvbiAjdG9vbGJhci1pdGVtLWFkbWluaXN0cmF0aW9uLXRyYXkgLnRvb2xiYXItbWVudSBsaS5tZW51LWl0ZW0ge1xuICBmb250LXNpemU6IHNtYWxsOyB9XG5cbiN0b29sYmFyLWFkbWluaXN0cmF0aW9uICNhZG1pbi10b29sYmFyLXNlYXJjaC1pbnB1dCB7XG4gIGhlaWdodDogdW5zZXQ7IH1cblxuYm9keS5wYXRoLW5vZGUgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm5vZGUgLm5vZGVfX2xpbmsge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbiAgLm5vZGUgLm5vZGVfX2xpbmsgYSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogMCAwIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtIDAuODA1NTZyZW0gMS41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjE2NjY3cmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZS1vdXQ7XG4gICAgY29sb3I6ICMzNDk4REI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzM0OThEQjsgfVxuICAgIC5ub2RlIC5ub2RlX19saW5rIGE6aG92ZXIsIC5ub2RlIC5ub2RlX19saW5rIGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAgIC5ub2RlIC5ub2RlX19saW5rIGE6aG92ZXIsIC5ub2RlIC5ub2RlX19saW5rIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAubm9kZSAubm9kZV9fbGluayBhOmhvdmVyLCAubm9kZSAubm9kZV9fbGluayBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMzQ5OERCO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLm5vZGUubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2luZm8gLnNlcCB7XG4gIG1hcmdpbjogMCAwLjM3NXJlbTsgfVxuXG4ubm9kZS5ub2RlLS12aWV3LW1vZGUtZnVsbCAubm9kZV9faW5mbyAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzID4gLmZpZWxkX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjM3NXJlbTsgfVxuXG5ib2R5LnBhdGgtdXNlciAjYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5ib2R5LnBhdGgtdXNlciAuZmllbGQtLW5hbWUtdXNlci1waWN0dXJlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IC02cmVtOyB9XG5cbmJvZHkucGF0aC11c2VyIC5maWVsZC0tbmFtZS1maWVsZC1wb3NpdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAxLjQ0NDQ0cmVtOyB9XG5cbi5wcm9maWxlIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAucHJvZmlsZSAucHJvZmlsZV9faW1hZ2Uge1xuICAgIGZsZXg6IDEgMCAyMCU7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtIDEuNXJlbTsgfVxuICAucHJvZmlsZSAucHJvZmlsZV9fbmFtZSAqIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnByb2ZpbGUgLnByb2ZpbGVfX3Bvc2l0aW9uIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZmlsZSAucHJvZmlsZV9faW1hZ2Uge1xuICAgICAgZmxleDogMSAwIDMzLjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgLnByb2ZpbGUge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5wcm9maWxlIC5wcm9maWxlX19pbWFnZSB7XG4gICAgICAgIGZsZXg6IDEgMCAzMy4zMzMzMyU7XG4gICAgICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwOyB9XG4gICAgICAucHJvZmlsZSAucHJvZmlsZV9fbmFtZSxcbiAgICAgIC5wcm9maWxlIC5wcm9maWxlX19wb3NpdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbmJvZHkucGF0aC1mcm9udHBhZ2UgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuYm9keS5wYXRoLWZyb250cGFnZSAjY29udGVudC1tYWluID4gLmxheW91dC1jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbmJvZHkucGFnZS1ub2RlLXR5cGUtcGFnZSAjYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkucGFnZS1ub2RlLXR5cGUtcGFnZSAuZmllbGQtLW5hbWUtYm9keSBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgYm9keS5wYWdlLW5vZGUtdHlwZS1wYWdlIC5maWVsZC0tbmFtZS1ib2R5IGltZy5hbGlnbi1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTsgfVxuICBib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2UgLmZpZWxkLS1uYW1lLWJvZHkgaW1nLmFsaWduLWxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtOyB9XG5cbmJvZHkucGFnZS1ub2RlLXR5cGUtcGFnZSBociB7XG4gIGNsZWFyOiBib3RoO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMS41cmVtIDA7IH1cbiAgYm9keS5wYWdlLW5vZGUtdHlwZS1wYWdlIGhyOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjY2NicgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogI2JmYmZiZjtcbiAgICBjb2xvcjogI2JmYmZiZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50IHtcbiAgbWFyZ2luOiAxLjVyZW0gMCAwO1xuICBib3JkZXItdG9wOiBub25lO1xuICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG4gIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMzAxO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjsgfVxuICAgIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51LmZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5ub2RlLXBhZ2UuaGFzLXBiLW1lbnUgPiAuY29udGVudCA+IC5wYi1tZW51ID4gdWwge1xuICAgICAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTQ0NDRyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTEuMjIyMjJyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxLjVyZW0gMDsgfVxuICAgICAgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4yMjIyMnJlbTsgfVxuICAgICAgICAubm9kZS1wYWdlLmhhcy1wYi1tZW51ID4gLmNvbnRlbnQgPiAucGItbWVudSA+IHVsID4gbGkgPiAqIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwLjc1cmVtIDAuNzVyZW07IH1cbiAgICAgICAgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjdzIGVhc2Utb3V0OyB9XG4gICAgICAgICAgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBiLW1lbnUgPiB1bCBsaSBhLmFjdGl2ZSB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSk7IH1cbiAgLm5vZGUtcGFnZS5oYXMtcGItbWVudSA+IC5jb250ZW50ID4gLnBhcmFncmFwaHMtaXRlbXMtZmllbGQtcGFyYWdyYXBocyB7XG4gICAgcGFkZGluZy10b3A6IDIuNXJlbTsgfVxuXG4ubm9kZS1zbGlkZXNob3ctc2xpZGUge1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5ub2RlLXNsaWRlc2hvdy1zbGlkZSAuc2xpZGUtd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm5vZGUtc2xpZGVzaG93LXNsaWRlIC5zbGlkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubm9kZS1zbGlkZXNob3ctc2xpZGUgLnNsaWRlLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgLm5vZGUtc2xpZGVzaG93LXNsaWRlIC5zbGlkZS1pbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5vZGUtc2xpZGVzaG93LXNsaWRlIC5zbGlkZS1pbWcgKiB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAubm9kZS1zbGlkZXNob3ctc2xpZGUgLnNsaWRlLXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgICAubm9kZS1zbGlkZXNob3ctc2xpZGUgLnNsaWRlLXRleHQgPiAuaW5uZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICBmb250LXNpemU6IDEuNzc3NzhyZW07XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAubm9kZS1zbGlkZXNob3ctc2xpZGUgLnNsaWRlLXRleHQgPiAuaW5uZXIgLnNsaWRlLXRleHQtbGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwOyB9XG4gICAgICAubm9kZS1zbGlkZXNob3ctc2xpZGUgLnNsaWRlLXRleHQgPiAuaW5uZXIgLmxpbmUtbGluayBhIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMC44ODg4OXJlbSAxLjc3Nzc4cmVtIDAuOTQ0NDRyZW0gMS43Nzc3OHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg4ODg5cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ5OERCO1xuICAgICAgICBib3JkZXItY29sb3I6ICMyMTdiYjg7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2Utb3V0O1xuICAgICAgICBmb250LXNpemU6IDEuNzc3NzhyZW07XG4gICAgICAgIG1hcmdpbjogMC43NXJlbSAwOyB9XG4gICAgICAgIC5ub2RlLXNsaWRlc2hvdy1zbGlkZSAuc2xpZGUtdGV4dCA+IC5pbm5lciAubGluZS1saW5rIGE6aG92ZXIsIC5ub2RlLXNsaWRlc2hvdy1zbGlkZSAuc2xpZGUtdGV4dCA+IC5pbm5lciAubGluZS1saW5rIGE6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTdiYjg7IH1cbiAgICAgICAgLm5vZGUtc2xpZGVzaG93LXNsaWRlIC5zbGlkZS10ZXh0ID4gLmlubmVyIC5saW5lLWxpbmsgYTpob3ZlciwgLm5vZGUtc2xpZGVzaG93LXNsaWRlIC5zbGlkZS10ZXh0ID4gLmlubmVyIC5saW5lLWxpbmsgYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLm5vZGUtc2xpZGVzaG93LXNsaWRlLnRleHQtcG9zLWxlZnQgLnNsaWRlLXRleHQgLmlubmVyIHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5ub2RlLXNsaWRlc2hvdy1zbGlkZS50ZXh0LXBvcy1jZW50ZXIgLnNsaWRlLXRleHQgLmlubmVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC5ub2RlLXNsaWRlc2hvdy1zbGlkZS50ZXh0LXBvcy1yaWdodCAuc2xpZGUtdGV4dCAuaW5uZXIge1xuICAgIHJpZ2h0OiAwOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYXJ0aWNsZSAubm9kZV9faW5mbyA+ICoge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2luZm8gKiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMS4wNTU1NnJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2luZm8gLm5vZGVfX2RhdGUge1xuICBjb2xvcjogIzY2NjY2NjsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2luZm8gLnNlcCB7XG4gIG1hcmdpbjogMCAuMjVlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2luZm8gLmZpZWxkLS1uYW1lLWZpZWxkLXRvcGljcyAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYXJ0aWNsZSAubm9kZV9faW5mbyAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSkgYTphZnRlciB7XG4gIGNvbnRlbnQ6ICcsJzsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2F1dGhvciwgLm5vZGUubm9kZS0tdHlwZS1hcnRpY2xlIC5ub2RlX19hdXRob3IgKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjA1NTU2cmVtO1xuICBjb2xvcjogIzY2NjY2NjsgfVxuICAubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2F1dGhvciBzcGFuLCAubm9kZS5ub2RlLS10eXBlLWFydGljbGUgLm5vZGVfX2F1dGhvciAqIHNwYW4ge1xuICAgIHBhZGRpbmctbGVmdDogLjI1ZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1hcnRpY2xlLm5vZGUtLXZpZXctbW9kZS1mdWxsIGhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX3N1YnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1hcnRpY2xlLm5vZGUtLXZpZXctbW9kZS1mdWxsIC5ub2RlX19pbWFnZSB7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHdpZHRoOiAzNSU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgLm5vZGUubm9kZS0tdHlwZS1hcnRpY2xlLm5vZGUtLXZpZXctbW9kZS1mdWxsIC5ub2RlX19pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubm9kZS5ub2RlLS10eXBlLWFydGljbGUubm9kZS0tdmlldy1tb2RlLXRlYXNlciAubm9kZV9fY29udGVudCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXgtd2lkdGg6IDcwJTsgfVxuICAubm9kZS5ub2RlLS10eXBlLWFydGljbGUubm9kZS0tdmlldy1tb2RlLXRlYXNlciAubm9kZV9fY29udGVudCAubm9kZV9faW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICAubm9kZS5ub2RlLS10eXBlLWFydGljbGUubm9kZS0tdmlldy1tb2RlLXRlYXNlciAubm9kZV9fY29udGVudCAubm9kZV9fc3VidGl0bGUgKiB7XG4gICAgZm9udC1zaXplOiAxLjA1NTU2cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYXJ0aWNsZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ub2RlX19pbWFnZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeSAubm9kZV9faW5mbyA+ICoge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2luZm8gKiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMS4wNTU1NnJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2luZm8gLm5vZGVfX2RhdGUge1xuICBjb2xvcjogIzY2NjY2NjsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2luZm8gLnNlcCB7XG4gIG1hcmdpbjogMCAuMjVlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2luZm8gLmZpZWxkLS1uYW1lLWZpZWxkLXRvcGljcyAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeSAubm9kZV9faW5mbyAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSkgYTphZnRlciB7XG4gIGNvbnRlbnQ6ICcsJzsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2F1dGhvciwgLm5vZGUubm9kZS0tdHlwZS1ibG9nLWVudHJ5IC5ub2RlX19hdXRob3IgKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjA1NTU2cmVtO1xuICBjb2xvcjogIzY2NjY2NjsgfVxuICAubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2F1dGhvciBzcGFuLCAubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkgLm5vZGVfX2F1dGhvciAqIHNwYW4ge1xuICAgIHBhZGRpbmctbGVmdDogLjI1ZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1ibG9nLWVudHJ5Lm5vZGUtLXZpZXctbW9kZS1mdWxsIGhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1ibG9nLWVudHJ5Lm5vZGUtLXZpZXctbW9kZS1mdWxsIC5ub2RlX19pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkubm9kZS0tdmlldy1tb2RlLWZ1bGwgZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gIC5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeS5ub2RlLS12aWV3LW1vZGUtZnVsbCBmb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyNjY2JyAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjYmZiZmJmO1xuICAgIGNvbG9yOiAjYmZiZmJmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1ibG9nLWVudHJ5Lm5vZGUtLXZpZXctbW9kZS1mdWxsIC5ub2RlX19hdXRob3JfYWJvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogNS41NTU1NnJlbTsgfVxuICAubm9kZS5ub2RlLS10eXBlLWJsb2ctZW50cnkubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2F1dGhvcl9hYm91dCAuZmllbGQtLW5hbWUtdXNlci1waWN0dXJlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7IH1cblxuLm5vZGUubm9kZS0tdHlwZS1ibG9nLWVudHJ5Lm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLm5vZGVfX2luZm8ge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ub2RlX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ub2RlX19saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0IC5ub2RlX19pbmZvID4gKiB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0IC5ub2RlX19pbmZvICoge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEuMDU1NTZyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1jbGllbnQtbGV0dGVyLWV4Y2VycHQgLm5vZGVfX2luZm8gLm5vZGVfX2RhdGUge1xuICBjb2xvcjogIzY2NjY2NjsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWNsaWVudC1sZXR0ZXItZXhjZXJwdCAubm9kZV9faW5mbyAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm5vZGUubm9kZS0tdHlwZS1jbGllbnQtbGV0dGVyLWV4Y2VycHQgLm5vZGVfX2luZm8gLmZpZWxkLS1uYW1lLWZpZWxkLXRvcGljcyAuZmllbGRfX2l0ZW06bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgY29udGVudDogJywnOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0IC5ub2RlX19hdXRob3IsIC5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0IC5ub2RlX19hdXRob3IgKiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjA1NTU2cmVtO1xuICBjb2xvcjogIzY2NjY2NjsgfVxuXG4ubm9kZS5ub2RlLS10eXBlLWNsaWVudC1sZXR0ZXItZXhjZXJwdC5ub2RlLS12aWV3LW1vZGUtZnVsbCBoZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1jbGllbnQtbGV0dGVyLWV4Y2VycHQubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07IH1cblxuLm5vZGUubm9kZS0tdHlwZS1jbGllbnQtbGV0dGVyLWV4Y2VycHQubm9kZS0tdmlldy1tb2RlLWZ1bGwgLm5vZGVfX2ltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0Lm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLm5vZGVfX2luZm8ge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbi5ub2RlLm5vZGUtLXR5cGUtY2xpZW50LWxldHRlci1leGNlcnB0Lm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLm5vZGVfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50IHtcbiAgYm9keSAjaGVhZGVyLXRvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5ICNoZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgYm9keSAjYmxvY2stc3RhcnRlci1sb2NhbC10YXNrcyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5IGZvb3RlciBuYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keSBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keSAjYmxvY2stY29weXJpZ2h0YmxvY2sge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBmb250LXNpemU6IHNtYWxsOyB9XG4gIGJvZHkgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyAudmlldy10b3BpY3MtbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5IC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19jYXJkIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICBib2R5IC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXdzLWdyb3VwIHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgYm9keSAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIC52aWV3cy1ncm91cF9fYmFyLFxuICBib2R5IC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXdzLWdyb3VwX190YWcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi52aWV3ID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICAudmlldyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnBhcmFncmFwaCAudmlldy1mcm9udC1wYWdlIC52aWV3LWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLnZpZXctZnJvbnQtcGFnZSB7XG4gIG1hcmdpbjogLTAuMzc1cmVtOyB9XG4gIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwLjM3NXJlbTsgfVxuICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX19jb250ZW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTsgfVxuICAgICAgICAgIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2NvbnRlbnQgKiB7XG4gICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7IH1cbiAgICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZS50ZXh0LWNvbG9yLXdoaXRlIC5ub2RlX19jb250ZW50ICoge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlLnRleHQtY29sb3ItZ3JheSAubm9kZV9fY29udGVudCAqIHtcbiAgICAgICAgICBjb2xvcjogIzY2NjY2NjsgfVxuICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlLnRleHQtY29sb3ItYmx1ZSAubm9kZV9fY29udGVudCAqIHtcbiAgICAgICAgICBjb2xvcjogIzM0OThEQjsgfVxuICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX190aXRsZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xOyB9XG4gICAgICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fdGl0bGUgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDglOyB9XG4gICAgICAgIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2luZm8ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9faW5mbyAqIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTUlOyB9XG4gICAgICAgIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX3N1YnRpdGxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMS41cmVtO1xuICAgICAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgYm90dG9tOiAxLjVyZW07IH1cbiAgICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX19zdWJ0aXRsZSBoMyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDkwJTsgfVxuICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX19saW5rIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwOyB9XG4gICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93Om50aC1jaGlsZChvZGQpIC5ub2RlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTJlMjsgfVxuICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXRvcDogNTAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzpmaXJzdC1vZi10eXBlIC5ub2RlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzljOWM5OyB9XG4gICAgICAgICAgLnZpZXctZnJvbnQtcGFnZSA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzpmaXJzdC1vZi10eXBlIC5ub2RlIC5ub2RlX190aXRsZSBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjIlOyB9XG4gICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDI1JSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC52aWV3LWZyb250LXBhZ2UgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6bGFzdC1vZi10eXBlIC5ub2RlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7IH1cbiAgICAgICAgICAudmlldy1mcm9udC1wYWdlID4gLnZpZXctY29udGVudCAudmlld3Mtcm93Omxhc3Qtb2YtdHlwZSAubm9kZSAubm9kZV9fdGl0bGUgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDU4JTsgfVxuXG4udmlldy1hYm91dCA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI2NjYnICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZDogI2JmYmZiZjtcbiAgY29sb3I6ICNiZmJmYmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLnZpZXctYWJvdXQgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aWV3LWFib3V0ID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC52aWV3cy1maWVsZC11c2VyLXBpY3R1cmUge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIG1heC13aWR0aDogMzMlOyB9XG5cbi52aWV3LWFib3V0ID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC52aWV3cy1maWVsZC1uYW1lICoge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi52aWV3LWFib3V0ID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC52aWV3cy1maWVsZC1maWVsZC1wb3NpdGlvbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4udmlldy1hYm91dCA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAudmlld3MtZmllbGQtZmllbGQtYmlvIHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfVxuXG4udmlldy10b3BpY3MgaGVhZGVyIHtcbiAgbWFyZ2luOiAwIC0wLjc1cmVtOyB9XG5cbi52aWV3LXRvcGljcyAudmlldy10b3BpY3MtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtOyB9XG4gIC52aWV3LXRvcGljcyAudmlldy10b3BpY3MtbGlzdDphZnRlciB7XG4gICAgY29udGVudDogJ1xcMjY2NicgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogI2JmYmZiZjtcbiAgICBjb2xvcjogI2JmYmZiZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuLnZpZXctdG9waWNzID4gLnZpZXctY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLnZpZXctdG9waWNzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgLnZpZXctdG9waWNzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtOyB9XG4gICAgICAudmlldy10b3BpY3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiMWIxYjE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm94LXNoYWRvdzogMnB4IDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAgIC52aWV3LXRvcGljcyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMy4wNTU1NnJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsgfVxuICAgICAgICAudmlldy10b3BpY3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2NvbnRlbnQgLm5vZGVfX2luZm8gKiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgICAgIC52aWV3LXRvcGljcyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdHlwZSB7XG4gICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzM0OThEQjtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzogMC4xMTExMXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDgwJTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLnZpZXctdG9waWNzIC52aWV3LWlkLXRvcGljc19saXN0IC52aWV3LWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gIC52aWV3LXRvcGljcyAudmlldy1pZC10b3BpY3NfbGlzdCAudmlld3Mtcm93IHtcbiAgICBtYXJnaW46IDAgMnB4IDJweCAwICFpbXBvcnRhbnQ7IH1cbiAgICAudmlldy10b3BpY3MgLnZpZXctaWQtdG9waWNzX2xpc3QgLnZpZXdzLXJvdyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAudmlldy10b3BpY3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjIwcHgpIHtcbiAgLnZpZXctdG9waWNzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi52aWV3LXRvcGljcy1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC52aWV3LXRvcGljcy1saXN0ID4gLnZpZXctY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjM3NXJlbSAwIDAuNzVyZW07IH1cbiAgICAudmlldy10b3BpY3MtbGlzdCA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNnJlbSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAudmlldy10b3BpY3MtbGlzdCA+IC52aWV3LWNvbnRlbnQuc3RpY2t5LWFibGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAtMS41cmVtO1xuICAgICAgcmlnaHQ6IC0xLjVyZW07XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuM3M7IH1cbiAgICAudmlldy10b3BpY3MtbGlzdCA+IC52aWV3LWNvbnRlbnQuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuICAgICAgYm9keS50b29sYmFyLWZpeGVkIC52aWV3LXRvcGljcy1saXN0ID4gLnZpZXctY29udGVudC5maXhlZCB7XG4gICAgICAgIHRvcDogMTMzcHggIWltcG9ydGFudDsgfVxuICAgICAgYm9keS50b29sYmFyLWZpeGVkLnRvb2xiYXItaG9yaXpvbnRhbC50b29sYmFyLXRyYXktb3BlbiAudmlldy10b3BpY3MtbGlzdCA+IC52aWV3LWNvbnRlbnQuZml4ZWQge1xuICAgICAgICB0b3A6IDE3M3B4ICFpbXBvcnRhbnQ7IH1cblxuLnZpZXctZmlsdGVycyBhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW0gMC44MDU1NnJlbSAxLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwLjE2NjY3cmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2Utb3V0O1xuICBjb2xvcjogYmxhY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICBib3JkZXItY29sb3I6ICMzNDk4REI7XG4gIGNvbG9yOiAjMzQ5OERCO1xuICBwYWRkaW5nOiAwLjM1cmVtIDAuNXJlbSAwLjRyZW0gMC41cmVtOyB9XG4gIC52aWV3LWZpbHRlcnMgYTpob3ZlciwgLnZpZXctZmlsdGVycyBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG4gIC52aWV3LWZpbHRlcnMgYTpob3ZlciwgLnZpZXctZmlsdGVycyBhOmZvY3VzIHtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAudmlldy1maWx0ZXJzIGE6aG92ZXIsIC52aWV3LWZpbHRlcnMgYTpmb2N1cyB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC52aWV3LWZpbHRlcnMgYTpob3ZlciB7XG4gICAgY29sb3I6ICMzNDk4REI7IH1cbiAgLnZpZXctZmlsdGVycyBhLmZpbHRlci1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4REI7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1hcnRpY2xlc19ibG9jayA+IC52aWV3LWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1hcnRpY2xlc19ibG9jayA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1hcnRpY2xlc19ibG9jayA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwyNjY2JyAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgYmFja2dyb3VuZDogI2JmYmZiZjtcbiAgICAgIGNvbG9yOiAjYmZiZmJmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9XG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWFydGljbGVzX2Jsb2NrID4gLnZpZXctY29udGVudCAudmlld3Mtcm93Omxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYXJ0aWNsZXNfYmxvY2sgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3c6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4udmlldy1ibG9nID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICAudmlldy1ibG9nID4gLnZpZXctY29udGVudCAudmlld3Mtcm93OmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwyNjY2JyAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjYmZiZmJmO1xuICAgIGNvbG9yOiAjYmZiZmJmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbiAgLnZpZXctYmxvZyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAudmlldy1ibG9nID4gLnZpZXctY29udGVudCAudmlld3Mtcm93Omxhc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi52aWV3LXJlY2VudC1ibG9ncyA+IC52aWV3LWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogLTAuNzVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNzVyZW07IH1cbiAgLnZpZXctcmVjZW50LWJsb2dzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuICAgIC52aWV3LXJlY2VudC1ibG9ncyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fdGl0bGUgKiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2xpbmsgYSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luOiAwIDAgMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtIDAuODA1NTZyZW0gMS41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTY2NjdyZW07XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2Utb3V0O1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7IH1cbiAgICAgIC52aWV3LXJlY2VudC1ibG9ncyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fbGluayBhOmhvdmVyLCAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2xpbmsgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IH1cbiAgICAgIC52aWV3LXJlY2VudC1ibG9ncyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZSAubm9kZV9fbGluayBhOmhvdmVyLCAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2xpbmsgYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgICAudmlldy1yZWNlbnQtYmxvZ3MgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUgLm5vZGVfX2xpbmsgYTpob3ZlciwgLnZpZXctcmVjZW50LWJsb2dzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIC5ub2RlX19saW5rIGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbmJvZHkucGF0aC1jbGllbnQtbGV0dGVyLWV4Y2VycHRzICNwYWdlIHtcbiAgYmFja2dyb3VuZDogIzM0OThEQjsgfVxuICBib2R5LnBhdGgtY2xpZW50LWxldHRlci1leGNlcnB0cyAjcGFnZSAjY29udGVudC1tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzQ5OERCOyB9XG4gICAgYm9keS5wYXRoLWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgI3BhZ2UgI2NvbnRlbnQtbWFpbiAjYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlICoge1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cblxuLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyB7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cy5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2UtaW4tb3V0OyB9XG4gIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXctdG9waWNzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC43NXJlbTsgfVxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXctdG9waWNzLWxpc3Q6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMjY2NicgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGJhY2tncm91bmQ6ICNiZmJmYmY7XG4gICAgICBjb2xvcjogI2JmYmZiZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXctdG9waWNzLWxpc3QgLnZpZXdzLWZpZWxkIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3NfX2Zvb3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDUuNTU1NTZyZW07XG4gICAgICBoZWlnaHQ6IDAuNTU1NTZyZW07XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1ncm91cCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDUuOTMwNTZyZW0gMCAzcmVtOyB9XG4gICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3MtZ3JvdXAuZmlsdGVyLWhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1ncm91cCAudmlld3MtZ3JvdXBfX2JhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDAuNTU1NTZyZW07XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjI3Nzc4cmVtOyB9XG4gICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3MtZ3JvdXAgLnZpZXdzLWdyb3VwX190YWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLWdyb3VwIC52aWV3cy1ncm91cF9fdGFnIC52aWV3cy1ncm91cF9fdGl0bGUge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDUuNTU1NTZyZW07XG4gICAgICAgICAgaGVpZ2h0OiA1LjU1NTU2cmVtO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTIuNzc3NzhyZW07XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMS42NjY2N3JlbSAxLjVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93LmZpbHRlci1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19jYXJkIHtcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICAgICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fY2FyZCAubm9kZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGVfX2NhcmQgLm5vZGVfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMDU1NTZyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxLjQ0NDQ0cmVtOyB9XG4gICAgICAgICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fY2FyZCAubm9kZV9fdGl0bGUgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogIzM0OThEQjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuICAgICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19jYXJkIC5ub2RlX19pbmZvICoge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdy52aWV3cy1yb3ctLXNlY29uZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07IH1cbiAgICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGVfX2Fycm93IHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEuNXJlbTtcbiAgICAgICAgd2lkdGg6IDEuMTExMTFyZW07XG4gICAgICAgIGhlaWdodDogMS4xMTExMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dDtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTAxcHgpIHtcbiAgICAgICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19hcnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3Mtcm93LnZpZXdzLXJvdy0tbGVmdCAubm9kZV9fYXJyb3cge1xuICAgICAgICByaWdodDogMS4xMTExMXJlbTtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdy52aWV3cy1yb3ctLXJpZ2h0IC5ub2RlX19hcnJvdyB7XG4gICAgICAgIGxlZnQ6IDEuMTExMTFyZW07XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cudmlld3Mtcm93LS1zZWNvbmQgLm5vZGVfX2Fycm93IHtcbiAgICAgICAgbGVmdDogMS4xMTExMXJlbTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyAudmlldy1pZC10b3BpY3NfbGlzdCAudmlldy1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIC52aWV3LWlkLXRvcGljc19saXN0IC52aWV3cy1yb3cge1xuICAgIG1hcmdpbjogMCAycHggMnB4IDAgIWltcG9ydGFudDsgfVxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgLnZpZXctaWQtdG9waWNzX2xpc3QgLnZpZXdzLXJvdyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3NfX2Zvb3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiA1LjU1NTU2cmVtO1xuICAgIGhlaWdodDogMC41NTU1NnJlbTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyA+IC52aWV3LWNvbnRlbnQgLnZpZXdzLWdyb3VwIC52aWV3cy1ncm91cF9fYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMi43Nzc3OHJlbTsgfVxuICAudmlldy1jbGllbnQtbGV0dGVyLWV4Y2VycHRzID4gLnZpZXctY29udGVudCAudmlld3MtZ3JvdXAgLnZpZXdzLWdyb3VwX190YWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAyLjc3Nzc4cmVtOyB9XG4gIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMgPiAudmlldy1jb250ZW50IC52aWV3cy1yb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwIDAgNC4yNzc3OHJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXZpZXcudmlld3MtcC0tbm9uZSA+IC5wX19pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4udmlldy1pbnNpZ2h0cy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlld3Mtcm93IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAudmlldy1pbnNpZ2h0cy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlld3Mtcm93LnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC52aWV3LWluc2lnaHRzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3cy1yb3cgPiAqIHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAudmlldy1pbnNpZ2h0cy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlld3Mtcm93IHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnBhZ2Utbm9kZS10eXBlLWNvbnRlbnQtcGFnZSAjYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIHtcbiAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnBhZ2Utbm9kZS10eXBlLWNvbnRlbnQtcGFnZSAjcGFnZSAjY29udGVudCAjY29udGVudC1tYWluID4gLmxheW91dC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuYm9keS5wYWdlLW5vZGUtdHlwZS1jb250ZW50LXBhZ2UgLnBhcmFncmFwaDpub3QoLmNvbnN0cmFpbi1ub25lKSA+IC5wX19pbm5lciB7XG4gIG1heC13aWR0aDogNjRyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5wYXJhZ3JhcGggLmZpZWxkLS1uYW1lLWZpZWxkLXAtdGl0bGUgaDEge1xuICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG5cbi5wYXJhZ3JhcGggLnBfX3RpdGxlIGgyLFxuLnBhcmFncmFwaCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb250ZW50IGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiVGlub3NcIiwgc2VyaWY7IH1cblxuLnBhcmFncmFwaCAucF9fc2Nyb2xsIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm90dG9tOiAtMS41cmVtOyB9XG4gIC5wYXJhZ3JhcGggLnBfX3Njcm9sbDphZnRlciB7XG4gICAgY29udGVudDogJ1xcRTgyOSc7XG4gICAgZm9udC1mYW1pbHk6IG94Ym93O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuMTY2NjdyZW07XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5wYXJhZ3JhcGguaGVpZ2h0LTIwID4gLnBfX2lubmVyIHtcbiAgaGVpZ2h0OiAyMHZoO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5wYXJhZ3JhcGguaGVpZ2h0LTQwID4gLnBfX2lubmVyIHtcbiAgaGVpZ2h0OiA0MHZoO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5wYXJhZ3JhcGguaGVpZ2h0LTYwID4gLnBfX2lubmVyIHtcbiAgaGVpZ2h0OiA2MHZoO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5wYXJhZ3JhcGguaGVpZ2h0LTgwID4gLnBfX2lubmVyIHtcbiAgaGVpZ2h0OiA4MHZoO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLWJvYXJkIC5maWVsZC0tbmFtZS1maWVsZC1wLWJvYXJkIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWJvYXJkIC5maWVsZC0tbmFtZS1maWVsZC1wLXN0YWZmIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLXN0YWZmIC5maWVsZC0tbmFtZS1maWVsZC1wLWJvYXJkIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLXN0YWZmIC5maWVsZC0tbmFtZS1maWVsZC1wLXN0YWZmIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIge1xuICBjb250ZW50OiAnXFwyNjY2JyAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQ6ICNiZmJmYmY7XG4gIGNvbG9yOiAjYmZiZmJmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4udmlldy1zdGFmZiA+IC52aWV3LWNvbnRlbnQgPiAudmlld3Mtcm93Om5vdCg6bGFzdC1vZi10eXBlKTphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI2NjYnICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZDogI2JmYmZiZjtcbiAgY29sb3I6ICNiZmJmYmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbi5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50LFxuLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4udmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IHtcbiAgZGlzcGxheTogLW1zLWdyaWQgIWltcG9ydGFudDtcbiAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDJmciAxZnIgMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG4gIGdyaWQtZ2FwOiAxLjVyZW07IH1cbiAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3c19fZm9vdCxcbiAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLnZpZXdzX19mb290LFxuICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3NfX2Zvb3QsXG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzX19mb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAuZmllbGRfX2l0ZW0sXG4gIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93LFxuICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW0sXG4gIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC52aWV3cy1yb3csXG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSxcbiAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLnZpZXdzLXJvdyxcbiAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW0sXG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAuZmllbGRfX2l0ZW0gLm5vZGUsXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3cgLm5vZGUsXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3cgLm5vZGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW0gLm5vZGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX19jb250ZW50LFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX19jb250ZW50LFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC5maWVsZF9faXRlbSAubm9kZV9fY29udGVudCxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19jb250ZW50LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSAubm9kZV9fY29udGVudCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX19jb250ZW50LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX19jb250ZW50LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgZGlzcGxheTogLW1zLWdyaWQ7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjVyZW0gMWZyIDEuNXJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIDNyZW0gMWZyO1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMS41cmVtIDFmciAxLjVyZW07XG4gICAgICAtbXMtZ3JpZC1yb3dzOiAxZnIgM3JlbSAxZnI7IH1cbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX19pbWFnZSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLnZpZXdzLXJvdyAubm9kZV9faW1hZ2UsXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX19pbWFnZSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX19pbWFnZSxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAuZmllbGRfX2l0ZW0gLm5vZGVfX2ltYWdlLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3cgLm5vZGVfX2ltYWdlLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX19pbWFnZSxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGVfX2ltYWdlIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMztcbiAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0LFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX190ZXh0LFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC5maWVsZF9faXRlbSAubm9kZV9fdGV4dCxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX190ZXh0LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSAubm9kZV9fdGV4dCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX190ZXh0LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fdGV4dCB7XG4gICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICAgIGdyaWQtcm93OiAyIC8gc3BhbiAyO1xuICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMCAxLjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAuZmllbGRfX2l0ZW0gLm5vZGVfX3RleHQgaDIsXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLnZpZXdzLXJvdyAubm9kZV9fdGV4dCBoMixcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC5maWVsZF9faXRlbSAubm9kZV9fdGV4dCBoMixcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGVfX3RleHQgaDIsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAuZmllbGRfX2l0ZW0gLm5vZGVfX3RleHQgaDIsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX190ZXh0IGgyLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW0gLm5vZGVfX3RleHQgaDIsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IC52aWV3cy1yb3cgLm5vZGVfX3RleHQgaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0IC5ub2RlX19saW5rLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3cgLm5vZGVfX3RleHQgLm5vZGVfX2xpbmssXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW0gLm5vZGVfX3RleHQgLm5vZGVfX2xpbmssXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX190ZXh0IC5ub2RlX19saW5rLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0IC5ub2RlX19saW5rLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLnZpZXdzLXJvdyAubm9kZV9fdGV4dCAubm9kZV9fbGluayxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0IC5ub2RlX19saW5rLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX190ZXh0IC5ub2RlX19saW5rIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0IC5ub2RlX19saW5rIGEsXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX190ZXh0IC5ub2RlX19saW5rIGEsXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC5maWVsZF9faXRlbSAubm9kZV9fdGV4dCAubm9kZV9fbGluayBhLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93IC5ub2RlX190ZXh0IC5ub2RlX19saW5rIGEsXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSAubm9kZV9fdGV4dCAubm9kZV9fbGluayBhLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX190ZXh0IC5ub2RlX19saW5rIGEsXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX190ZXh0IC5ub2RlX19saW5rIGEsXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fdGV4dCAubm9kZV9fbGluayBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwLjI3Nzc4cmVtIDAuNzVyZW07IH1cbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUsXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3c6Zmlyc3Qtb2YtdHlwZSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAuZmllbGRfX2l0ZW06Zmlyc3Qtb2YtdHlwZSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCAudmlld3Mtcm93OmZpcnN0LW9mLXR5cGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLnZpZXdzLXJvdzpmaXJzdC1vZi10eXBlLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAudmlld3Mtcm93OmZpcnN0LW9mLXR5cGUge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjsgfVxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3c6Zmlyc3Qtb2YtdHlwZSAubm9kZV9fY29udGVudCxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50IC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdzpmaXJzdC1vZi10eXBlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUgLm5vZGVfX2NvbnRlbnQsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93OmZpcnN0LW9mLXR5cGUgLm5vZGVfX2NvbnRlbnQsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCAudmlld3Mtcm93OmZpcnN0LW9mLXR5cGUgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDZmciAzcmVtIDFmcjtcbiAgICAgICAgLW1zLWdyaWQtcm93czogNmZyIDNyZW0gMWZyOyB9XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSAubm9kZV9fY29udGVudCA+IC5ub2RlX19saW5rLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCAudmlld3Mtcm93IC5ub2RlX19jb250ZW50ID4gLm5vZGVfX2xpbmssXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLmZpZWxkX19pdGVtIC5ub2RlX19jb250ZW50ID4gLm5vZGVfX2xpbmssXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fY29udGVudCA+IC5ub2RlX19saW5rLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC5maWVsZF9faXRlbSAubm9kZV9fY29udGVudCA+IC5ub2RlX19saW5rLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkIC52aWV3cy1yb3cgLm5vZGVfX2NvbnRlbnQgPiAubm9kZV9fbGluayxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IC5maWVsZF9faXRlbSAubm9kZV9fY29udGVudCA+IC5ub2RlX19saW5rLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgLnZpZXdzLXJvdyAubm9kZV9fY29udGVudCA+IC5ub2RlX19saW5rIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDJmciAxZnIgMWZyO1xuICAgICAgLW1zLWdyaWQtcm93czogMWZyIDFmcjsgfVxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjsgfVxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTsgfVxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg1KSxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg1KSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg1KSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtOyB9IH1cbiAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQge1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMmZyIDFmciAxZnI7XG4gICAgICAtbXMtZ3JpZC1yb3dzOiAxZnIgMWZyOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAyOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMztcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTsgfVxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNSkge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50LFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW0sXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIGdyaWQtcm93OiBzcGFuIDEgIWltcG9ydGFudDsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW0gLm5vZGUgLm5vZGVfX2NvbnRlbnQsXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAyZnIgM3JlbSAxZnIgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtIC5ub2RlIC5ub2RlX19jb250ZW50IC5ub2RlX190ZXh0IHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDcuNXJlbTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLCAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSksXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMiksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSwgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCxcbiAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgIC1tcy1ncmlkLXJvd3M6IGF1dG8gYXV0bzsgfVxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSksXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMztcbiAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSkgLm5vZGUgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICAtbXMtZ3JpZC1yb3dzOiAyZnIgM3JlbSAxZnIgIWltcG9ydGFudDsgfVxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMiksXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDQ7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMztcbiAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgzKSxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDI7XG4gICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogMztcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xuICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtOyB9XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg1KSxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNSksXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogNTtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xuICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtOyB9IH1cbiAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgICAgICAtbXMtZ3JpZC1yb3dzOiBhdXRvIGF1dG87IH1cbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDM7XG4gICAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSAubm9kZSAubm9kZV9fY29udGVudCxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSkgLm5vZGUgLm5vZGVfX2NvbnRlbnQsXG4gICAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSkgLm5vZGUgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgLW1zLWdyaWQtcm93czogMmZyIDNyZW0gMWZyICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMiksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDQ7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDM7XG4gICAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgzKSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMjtcbiAgICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDI7XG4gICAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDUpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNSksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg1KSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNSkge1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNTtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMjtcbiAgICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07IH0gfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4NTBweCkge1xuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW0sXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDEgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW0gLm5vZGUgLm5vZGVfX2NvbnRlbnQsXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtIC5ub2RlIC5ub2RlX19jb250ZW50LFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAyZnIgM3JlbSAxZnIgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSAubm9kZSAubm9kZV9fY29udGVudCAubm9kZV9fdGV4dCxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtIC5ub2RlIC5ub2RlX19jb250ZW50IC5ub2RlX190ZXh0IHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDcuNXJlbTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDEpLCAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLCAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLCAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSksXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDMpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgxKSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMyksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoMSksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCgzKSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIGFuZCAobWF4LXdpZHRoOiA4NTBweCksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQsXG4gIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06Zmlyc3Qtb2YtdHlwZSxcbiAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NTBweCkge1xuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkLFxuICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQsXG4gICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbSxcbiAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW0sXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gICAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOmZpcnN0LW9mLXR5cGUsXG4gICAgICAgICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06Zmlyc3Qtb2YtdHlwZSxcbiAgICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpmaXJzdC1vZi10eXBlLFxuICAgICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC52aWV3LWNvbnRlbnQgPiAuZmllbGRfX2l0ZW06Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4gICAgLnBhcmFncmFwaC5wYXJhZ3JhcGgtLXR5cGUtLWZlYXR1cmVkIC52aWV3LWNvbnRlbnQsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4gICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW0sXG4gICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSxcbiAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtLFxuICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5wYXJhZ3JhcGgucGFyYWdyYXBoLS10eXBlLS1mZWF0dXJlZCAudmlldy1jb250ZW50ID4gLmZpZWxkX19pdGVtOmZpcnN0LWNoaWxkLFxuICAgICAgICAudmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSAuZmllbGQtLW5hbWUtZmllbGQtcC1mZWF0dXJlZCA+IC5maWVsZF9faXRlbTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKDQpLFxuICAgICAgICAucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCksXG4gICAgICAgIC52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIC5maWVsZC0tbmFtZS1maWVsZC1wLWZlYXR1cmVkID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZCg0KSxcbiAgICAgICAgLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWJsb2NrXzEgLnZpZXctY29udGVudCA+IC5maWVsZF9faXRlbTpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuIiwiXG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvK1NsYWI6NDAwLDcwMCwzMDAsMTAwfFJvYm90bzo0MDAsMTAwLDEwMGl0YWxpYywzMDAsMzAwaXRhbGljLDQwMGl0YWxpYyw1MDAsNTAwaXRhbGljLDcwMCw3MDBpdGFsaWMsOTAwLDkwMGl0YWxpYyk7XG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UGlueW9uK1NjcmlwdHxUaW5vczo0MDAsNDAwaXRhbGljLDcwMCw3MDBpdGFsaWMpO1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU94eWdlbitNb25vKTtcblxuLy8vIENvcHkgRm9udHNcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJUaW5vc1wiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IFwiT3h5Z2VuIE1vbm9cIiwgQ29uc29sYXMsIG1vbm9zcGFjZTtcblxuLy8vIEljb24gRm9udHNcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ294Ym93JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLW94Ym93L2ZvbnQvb3hib3cuZW90PycpO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGVsbG8tb3hib3cvZm9udC9veGJvdy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnLi4vZm9udHMvZm9udGVsbG8tb3hib3cvZm9udC9veGJvdy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZWxsby1veGJvdy9mb250L294Ym93LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLW94Ym93L2ZvbnQvb3hib3cuc3ZnI294Ym93JykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IFxuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFNpbmNlIHRoZSB0eXBpY2FsIGRlZmF1bHQgYnJvd3NlciBmb250LXNpemUgaXMgMTZweCwgdGhhdCBtYWtlcyB0aGUgY2FsY3VsYXRpb24gZm9yIGdyaWQgc2l6ZS5cbi8vIElmIHlvdSB3YW50IHlvdXIgYmFzZSBmb250LXNpemUgdG8gYmUgZGlmZmVyZW50IGFuZCBub3QgaGF2ZSBpdCBhZmZlY3QgdGhlIGdyaWQgYnJlYWtwb2ludHMsXG4vLyBzZXQgJHJlbS1iYXNlIHRvICRiYXNlLWZvbnQtc2l6ZSBhbmQgbWFrZSBzdXJlICRiYXNlLWZvbnQtc2l6ZSBpcyBhIHB4IHZhbHVlLlxuJGJhc2UtZm9udC1zaXplOiAxOHB4O1xuJHJlbS1iYXNlOiAkYmFzZS1mb250LXNpemU7XG4kYmFzZS1saW5lLWhlaWdodDogMTUwJTtcblxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xuJGJvZHktZm9udC1zdHlsZTogbm9ybWFsO1xuXG4vLy8gZGVmYXVsdCBib2R5IHR5cG9ncmFwaHkgc2V0dGluZ3NcbiRib2R5LWZvbnQtY29sb3I6ICRzaXRlLWNvcHktY29sb3I7XG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4kYm9keS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbDtcblxuXG4kaGVhZGVyLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTsgLy8kZm9udC1mYW1pbHktc2VyaWY7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtO1xuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcbiRoMS1mb250LXNpemU6IHJlbS1jYWxjKDQ0KTtcbiRoMi1mb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiRoNS1mb250LXNpemU6IHJlbS1jYWxjKDE5KTtcbiRoNi1mb250LXNpemU6IDFyZW07XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBzaXplIHJlZHVjdGlvbiBvbiBzbWFsbCBzY3JlZW5zXG4vLyAkaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKTtcbi8vICRoMi1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMTApO1xuLy8gJGgzLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYyg1KTtcbi8vICRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSk7XG4vLyAkaDUtZm9udC1yZWR1Y3Rpb246IDA7XG4vLyAkaDYtZm9udC1yZWR1Y3Rpb246IDA7XG5cbi8vIFRoZXNlIGNvbnRyb2wgaG93IHN1YmhlYWRlcnMgYXJlIHN0eWxlZC5cbi8vICRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNDtcbi8vICRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpO1xuLy8gJHN1YmhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRzdWJoZWFkZXItdG9wLW1hcmdpbjogLjJyZW07XG4vLyAkc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtO1xuXG4vLyBBIGdlbmVyYWwgPHNtYWxsPiBzdHlsaW5nXG4vLyAkc21hbGwtZm9udC1zaXplOiA2MCU7XG4vLyAkc21hbGwtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xuLy8gJHBhcmFncmFwaC1mb250LWZhbWlseTogaW5oZXJpdDtcbi8vICRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbTtcbi8vICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IDEuNjtcbi8vICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzU7XG4vLyAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4vLyAkY29kZS1jb2xvcjogJG9pbDtcbi8vICRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuLy8gJGNvZGUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpO1xuLy8gJGNvZGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICRjb2RlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpO1xuLy8gJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXG4vLyAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbi8vICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuLy8gJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbi8vICRoci1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRoci1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcbi8vICRoci1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4vLyAkbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcbi8vICRsaXN0LWZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4vLyAkbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbi8vICRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vICRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuLy8gJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbTtcbi8vICRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbTtcbi8vICRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDogMDtcbi8vICRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKTtcbi8vICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbTtcbi8vICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbi8vICRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbi8vICRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4vLyAkYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ2FpbnNib3JvO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbi8vICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4vLyAkYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4vLyAkbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpO1xuLy8gJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIHBhZGRpbmdcbi8vICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBmb250IHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lOyIsIlxuLmVsZW1lbnQtaW52aXNpYmxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuJWdyb3VwLCAuZ3JvdXAge1xuICBAZXh0ZW5kIC5jbGVhcmZpeDtcbn1cblxuJW5vLXNlbGVjdCwgLm5vLXNlbGVjdCB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJy4uL2Z1bmN0aW9ucyc7XG4vL1xuLy8gRm91bmRhdGlvbiBWYXJpYWJsZXNcbi8vXG5cbi8vIERhdGEgYXR0cmlidXRlIG5hbWVzcGFjZVxuLy8gc3R5bGVzIGdldCBhcHBsaWVkIHRvIFtkYXRhLW15c2l0ZS1wbHVnaW5dLCBldGNcbiRuYW1lc3BhY2U6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250LXNpemUgaXMgc2V0IHRvIDEwMCUgb2YgdGhlIGJyb3dzZXIgc3R5bGUgc2hlZXQgKHVzdWFsbHkgMTZweClcbi8vIGZvciBjb21wYXRpYmlsaXR5IHdpdGggYnJvd3Nlci1iYXNlZCB0ZXh0IHpvb20gb3IgdXNlci1zZXQgZGVmYXVsdHMuXG5cbi8vIFNpbmNlIHRoZSB0eXBpY2FsIGRlZmF1bHQgYnJvd3NlciBmb250LXNpemUgaXMgMTZweCwgdGhhdCBtYWtlcyB0aGUgY2FsY3VsYXRpb24gZm9yIGdyaWQgc2l6ZS5cbi8vIElmIHlvdSB3YW50IHlvdXIgYmFzZSBmb250LXNpemUgdG8gYmUgZGlmZmVyZW50IGFuZCBub3QgaGF2ZSBpdCBhZmZlY3QgdGhlIGdyaWQgYnJlYWtwb2ludHMsXG4vLyBzZXQgJHJlbS1iYXNlIHRvICRiYXNlLWZvbnQtc2l6ZSBhbmQgbWFrZSBzdXJlICRiYXNlLWZvbnQtc2l6ZSBpcyBhIHB4IHZhbHVlLlxuJGJhc2UtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLyAkYmFzZS1saW5lLWhlaWdodCBpcyAyNHB4IHdoaWxlICRiYXNlLWZvbnQtc2l6ZSBpcyAxNnB4XG4kYmFzZS1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vL1xuLy8gR2xvYmFsIEZvdW5kYXRpb24gTWl4aW5zXG4vL1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBib3JkZXIgcmFkaXVzLlxuLy8gJHJhZGl1cyAtIERlZmF1bHQ6ICRnbG9iYWwtcmFkaXVzIHx8IDRweFxuQG1peGluIHJhZGl1cygkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XG4gIEBpZiAkcmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgZXF1YWwgc2lkZSBib3JkZXIgcmFkaXVzIG9uIGVsZW1lbnRzLlxuLy8gJHNpZGUgLSBPcHRpb25zOiBsZWZ0LCByaWdodCwgdG9wLCBib3R0b21cbkBtaXhpbiBzaWRlLXJhZGl1cygkc2lkZSwgJHJhZGl1czokZ2xvYmFsLXJhZGl1cykge1xuICBAaWYgKCRzaWRlID09IGxlZnQgb3IgJHNpZGUgPT0gcmlnaHQpIHtcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xuICAgIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XG4gIH0gQGVsc2Uge1xuICAgIC13ZWJraXQtI3skc2lkZX0tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgLXdlYmtpdC0jeyRzaWRlfS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLSN7JHNpZGV9LWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci0jeyRzaWRlfS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIGNhbiBjb250cm9sIHdoZXRoZXIgb3Igbm90IHdlIGhhdmUgaW5zZXQgc2hhZG93cyBlZGdlcy5cbi8vICRhY3RpdmUgLSBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxuQG1peGluIGluc2V0LXNoYWRvdygkYWN0aXZlOnRydWUpIHtcbiAgYm94LXNoYWRvdzogJHNoaW55LWVkZ2Utc2l6ZSAkc2hpbnktZWRnZS1jb2xvciBpbnNldDtcblxuICBAaWYgJGFjdGl2ZSB7ICY6YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAkc2hpbnktZWRnZS1zaXplICRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvciBpbnNldDsgfSB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBhZGQgdHJhbnNpdGlvbnMgdG8gZWxlbWVudHNcbi8vICRwcm9wZXJ0eSAtIERlZmF1bHQ6IGFsbCwgT3B0aW9uczogaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy10cmFuc2l0aW9ucy8jYW5pbWF0YWJsZS1wcm9wZXJ0aWVzXG4vLyAkc3BlZWQgLSBEZWZhdWx0OiAzMDBtc1xuLy8gJGVhc2UgLSBEZWZhdWx0OiBlYXNlLW91dCwgT3B0aW9uczogaHR0cDovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvcHJvcGVydGllcy90L3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uL1xuQG1peGluIHNpbmdsZS10cmFuc2l0aW9uKCRwcm9wZXJ0eTphbGwsICRzcGVlZDozMDBtcywgJGVhc2U6ZWFzZS1vdXQpIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvcGVydHksICRzcGVlZCwgJGVhc2UpO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIHNpbmdsZSBvciBtdWx0aXBsZSB0cmFuc2l0aW9ucyB0byBlbGVtZW50c1xuLy8gJHByb3BlcnR5IC0gRGVmYXVsdDogYWxsLCBPcHRpb25zOiBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLXRyYW5zaXRpb25zLyNhbmltYXRhYmxlLXByb3BlcnRpZXNcbi8vICRzcGVlZCAtIERlZmF1bHQ6IDMwMG1zXG4vLyAkZWFzZSAtIERlZmF1bHQ6IGVhc2Utb3V0LCBPcHRpb25zOiBodHRwOi8vY3NzLXRyaWNrcy5jb20vYWxtYW5hYy9wcm9wZXJ0aWVzL3QvdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24vXG4vLyAkZGVsYXkgLSBEZWZhdWx0OiBudWxsICgwcylcbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wZXJ0eTphbGwsICRzcGVlZDozMDBtcywgJGVhc2U6ZWFzZS1vdXQsICRkZWxheTpudWxsKSB7XG4gICR0cmFuc2l0aW9uOiBub25lO1xuXG4gIEBpZiBsZW5ndGgoJHByb3BlcnR5KSA+IDEge1xuXG4gICAgQGVhY2ggJHRyYW5zaXRpb25fbGlzdCBpbiAkcHJvcGVydHkge1xuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdHJhbnNpdGlvbl9saXN0KSB7XG5cbiAgICAgICAgQGlmICRpID09IDEge1xuICAgICAgICAgICRfcHJvcGVydHk6IG50aCgkdHJhbnNpdGlvbl9saXN0LCAkaSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uX2xpc3QpID4gMSB7XG4gICAgICAgICAgQGlmICRpID09IDIge1xuICAgICAgICAgICAgJF9zcGVlZDogbnRoKCR0cmFuc2l0aW9uX2xpc3QsICRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICRfc3BlZWQ6ICRzcGVlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb25fbGlzdCkgPiAyIHtcbiAgICAgICAgICBAaWYgJGkgPT0gMyB7XG4gICAgICAgICAgICAkX2Vhc2U6IG50aCgkdHJhbnNpdGlvbl9saXN0LCAkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAkX2Vhc2U6ICRlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbl9saXN0KSA+IDMge1xuICAgICAgICAgIEBpZiAkaSA9PSA0IHtcbiAgICAgICAgICAgICRfZGVsYXk6IG50aCgkdHJhbnNpdGlvbl9saXN0LCAkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAkX2RlbGF5OiAkZGVsYXk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICR0cmFuc2l0aW9uID09IG5vbmUge1xuICAgICAgICAkdHJhbnNpdGlvbjogJF9wcm9wZXJ0eSAkX3NwZWVkICRfZWFzZSAkX2RlbGF5O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbiwgJF9wcm9wZXJ0eSAkX3NwZWVkICRfZWFzZSAkX2RlbGF5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAZWFjaCAkcHJvcCBpbiAkcHJvcGVydHkge1xuXG4gICAgICBAaWYgJHRyYW5zaXRpb24gPT0gbm9uZSB7XG4gICAgICAgICR0cmFuc2l0aW9uOiAkcHJvcCAkc3BlZWQgJGVhc2UgJGRlbGF5O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbiwgJHByb3AgJHNwZWVkICRlYXNlICRkZWxheTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBib3gtc2l6aW5nIGFjcm9zcyBicm93c2VyIHByZWZpeGVzXG5AbWl4aW4gYm94LXNpemluZygkdHlwZTpib3JkZXItYm94KSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJHR5cGU7IC8vIEFuZHJvaWQgPCAyLjMsIGlPUyA8IDRcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkdHlwZTsgLy8gRmlyZWZveCA8IDI5XG4gICAgICAgICAgYm94LXNpemluZzogJHR5cGU7IC8vIENocm9tZSwgSUUgOCssIE9wZXJhLCBTYWZhcmkgNS4xXG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgaXNvc2NlbGVzIHRyaWFuZ2xlc1xuLy8gJHRyaWFuZ2xlLXNpemUgLSBVc2VkIHRvIHNldCBib3JkZXItc2l6ZS4gTm8gZGVmYXVsdCwgc2V0IGEgcHggb3IgZW0gc2l6ZS5cbi8vICR0cmlhbmdsZS1jb2xvciAtIFVzZWQgdG8gc2V0IGJvcmRlci1jb2xvciB3aGljaCBtYWtlcyB1cCB0cmlhbmdsZS4gTm8gZGVmYXVsdFxuLy8gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIFVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIGRpcmVjdGlvbiB0cmlhbmdsZSBwb2ludHMuIE9wdGlvbnM6IHRvcCwgYm90dG9tLCBsZWZ0LCByaWdodFxuQG1peGluIGNzcy10cmlhbmdsZSgkdHJpYW5nbGUtc2l6ZSwgJHRyaWFuZ2xlLWNvbG9yLCAkdHJpYW5nbGUtZGlyZWN0aW9uKSB7XG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdG9wKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGJvdHRvbSkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgaWNvbiB3aXRoIHRocmVlIGxpbmVzIGFrYSB0aGUgaGFtYnVyZ2VyIGljb24sIHRoZSBtZW51LWljb24gb3IgdGhlIG5hdmljb25cbi8vICR3aWR0aCAtIFdpZHRoIG9mIGhhbWJ1cmdlciBpY29uIGluIHJlbVxuLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cbi8vICR0b3AgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIHZlcnRpY2FsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtXG4vLyAkdGhpY2tuZXNzIC0gdGhpY2tuZXNzIG9mIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcbi8vICRnYXAgLSBzcGFjaW5nIGJldHdlZW4gdGhlIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcbi8vICRjb2xvciAtIGljb24gY29sb3Jcbi8vICRob3Zlci1jb2xvciAtIGljb24gY29sb3IgZHVyaW5nIGhvdmVyXG4vLyAkb2ZmY2FudmFzIC0gU2V0IHRvIHRydWUgb2YgQGluY2x1ZGUgaW4gb2ZmY2FudmFzXG5AbWl4aW4gaGFtYnVyZ2VyKCR3aWR0aCwgJGxlZnQsICR0b3AsICR0aGlja25lc3MsICRnYXAsICRjb2xvciwgJGhvdmVyLWNvbG9yLCAkb2ZmY2FudmFzKSB7XG4gIHNwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICBAaWYgJG9mZmNhbnZhcyB7XG4gICAgICBAaWYgJHRvcCB7XG4gICAgICAgIHRvcDogJHRvcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJHdpZHRoLzIpO1xuICAgICAgfVxuICAgICAgQGlmICRsZWZ0IHtcbiAgICAgICAgbGVmdDogJGxlZnQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6ICgkdGFiYmFyLW1lbnUtaWNvbi13aWR0aCAtICR3aWR0aCkvMjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLXRvcDogLSgkd2lkdGgvMik7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDAgMCAkdGhpY2tuZXNzICRjb2xvcixcbiAgICAgIDAgJGdhcCArICR0aGlja25lc3MgMCAkdGhpY2tuZXNzICRjb2xvcixcbiAgICAgIDAgKDIgKiAkZ2FwICsgMiokdGhpY2tuZXNzKSAwICR0aGlja25lc3MgJGNvbG9yO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbiAgc3Bhbjpob3ZlcjphZnRlciB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAkZ2FwICsgJHRoaWNrbmVzcyAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gZG8gY2xlYXIgZmxvYXRzXG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOmJlZm9yZSwgJjphZnRlciB7IGNvbnRlbnQ6IFwiIFwiOyBkaXNwbGF5OiB0YWJsZTsgfVxuICAmOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBhIGdsb3dpbmcgZWZmZWN0IHRvIGJsb2NrIGVsZW1lbnRzXG4vLyAkc2VsZWN0b3IgLSBVc2VkIGZvciBzZWxlY3RvciBzdGF0ZS4gRGVmYXVsdDogZm9jdXMsIE9wdGlvbnM6IGhvdmVyLCBhY3RpdmUsIHZpc2l0ZWRcbi8vICRmYWRlLXRpbWUgLSBEZWZhdWx0OiAzMDBtc1xuLy8gJGdsb3dpbmctZWZmZWN0LWNvbG9yIC0gRGVmYXVsdDogZmFkZS1vdXQoJHByaW1hcnktY29sb3IsIC4yNSlcbkBtaXhpbiBibG9jay1nbG93aW5nLWVmZmVjdCgkc2VsZWN0b3I6Zm9jdXMsICRmYWRlLXRpbWU6MzAwbXMsICRnbG93aW5nLWVmZmVjdC1jb2xvcjpmYWRlLW91dCgkcHJpbWFyeS1jb2xvciwgLjI1KSkge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRmYWRlLXRpbWUsIGJvcmRlci1jb2xvciAkZmFkZS10aW1lIGVhc2UtaW4tb3V0O1xuXG4gICY6I3skc2VsZWN0b3J9IHtcbiAgICBib3JkZXItY29sb3I6ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gdHJhbnNsYXRlIGVsZW1lbnRzIGluIDJEXG4vLyAkaG9yaXpvbnRhbDogRGVmYXVsdDogMFxuLy8gJHZlcnRpY2FsOiBEZWZhdWx0OiAwXG5AbWl4aW4gdHJhbnNsYXRlMmQoJGhvcml6b250YWw6MCwgJHZlcnRpY2FsOjApIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGhvcml6b250YWwsICR2ZXJ0aWNhbClcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgYWNjZXNzaWJsZS5cbi8vIEBzZWUgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBUdXJucyBvZmYgdGhlIGVsZW1lbnQtaW52aXNpYmxlIGVmZmVjdC5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4kd2hpdGUgICAgICAgICA6ICNGRkZGRkYgIWRlZmF1bHQ7XG4kZ2hvc3QgICAgICAgICA6ICNGQUZBRkEgIWRlZmF1bHQ7XG4kc25vdyAgICAgICAgICA6ICNGOUY5RjkgIWRlZmF1bHQ7XG4kdmFwb3IgICAgICAgICA6ICNGNkY2RjYgIWRlZmF1bHQ7XG4kd2hpdGUtc21va2UgICA6ICNGNUY1RjUgIWRlZmF1bHQ7XG4kc2lsdmVyICAgICAgICA6ICNFRkVGRUYgIWRlZmF1bHQ7XG4kc21va2UgICAgICAgICA6ICNFRUVFRUUgIWRlZmF1bHQ7XG4kZ2FpbnNib3JvICAgICA6ICNEREREREQgIWRlZmF1bHQ7XG4kaXJvbiAgICAgICAgICA6ICNDQ0NDQ0MgIWRlZmF1bHQ7XG4kYmFzZSAgICAgICAgICA6ICNBQUFBQUEgIWRlZmF1bHQ7XG4kYWx1bWludW0gICAgICA6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kanVtYm8gICAgICAgICA6ICM4ODg4ODggIWRlZmF1bHQ7XG4kbW9uc29vbiAgICAgICA6ICM3Nzc3NzcgIWRlZmF1bHQ7XG4kc3RlZWwgICAgICAgICA6ICM2NjY2NjYgIWRlZmF1bHQ7XG4kY2hhcmNvYWwgICAgICA6ICM1NTU1NTUgIWRlZmF1bHQ7XG4kdHVhdGFyYSAgICAgICA6ICM0NDQ0NDQgIWRlZmF1bHQ7XG4kb2lsICAgICAgICAgICA6ICMzMzMzMzMgIWRlZmF1bHQ7XG4kamV0ICAgICAgICAgICA6ICMyMjIyMjIgIWRlZmF1bHQ7XG4kYmxhY2sgICAgICAgICA6ICMwMDAwMDAgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XG4kcHJpbWFyeS1jb2xvcjogIzAwOENCQSAhZGVmYXVsdDsgICAvLyBib25kaS1ibHVlXG4kc2Vjb25kYXJ5LWNvbG9yOiAjZTdlN2U3ICFkZWZhdWx0OyAvLyB3aGl0ZS1saWxhY1xuJGFsZXJ0LWNvbG9yOiAjZjA0MTI0ICFkZWZhdWx0OyAgICAgLy8gY2lubmFiYXJcbiRzdWNjZXNzLWNvbG9yOiAjNDNBQzZBICFkZWZhdWx0OyAgIC8vIHNlYS1ncmVlblxuJHdhcm5pbmctY29sb3I6ICNmMDhhMjQgIWRlZmF1bHQ7ICAgLy8gY2Fycm90XG4kaW5mby1jb2xvcjogI2EwZDNlOCAhZGVmYXVsdDsgICAgICAvLyBjb3JuZmxvd2VyXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBkZWZpbmUgZGVmYXVsdCBmb250IHN0YWNrc1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBDYW1icmlhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gZGVmaW5lIGRlZmF1bHQgZm9udCB3ZWlnaHRzXG4kZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBnbG9iYWwgc3R5bGVzXG4kYm9keS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYm9keS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xuJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3NcbiR0ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuJGRlZmF1bHQtZmxvYXQ6IGxlZnQgIWRlZmF1bHQ7XG4kb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodCAhZGVmYXVsdDtcbkBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgJGRlZmF1bHQtZmxvYXQ6IGxlZnQ7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0O1xufSBAZWxzZSB7XG4gICRkZWZhdWx0LWZsb2F0OiByaWdodDtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogbGVmdDtcbn1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2Ugc3VyZSBib3JkZXIgcmFkaXVzIG1hdGNoZXMgdW5sZXNzIHdlIHdhbnQgaXQgZGlmZmVyZW50LlxuJGdsb2JhbC1yYWRpdXM6IDNweCAhZGVmYXVsdDtcbiRnbG9iYWwtcm91bmRlZDogMTAwMHB4ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBpbnNldCBzaGFkb3cgc2hpbnkgZWRnZXMgYW5kIGRlcHJlc3Npb25zLlxuJHNoaW55LWVkZ2Utc2l6ZTogMCAxcHggMCAhZGVmYXVsdDtcbiRzaGlueS1lZGdlLWNvbG9yOiByZ2JhKCNmZmYsIC41KSAhZGVmYXVsdDtcbiRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgjMDAwLCAuMikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgd2hldGhlciBvciBub3QgQ1NTIGNsYXNzZXMgY29tZSB0aHJvdWdoIGluIHRoZSBnZW0gZmlsZXMuXG4kaW5jbHVkZS1odG1sLWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XG4kaW5jbHVkZS1wcmludC1zdHlsZXM6IHRydWUgIWRlZmF1bHQ7XG4kaW5jbHVkZS1qcy1tZXRhLXN0eWxlczogdHJ1ZSAhZGVmYXVsdDsgLy8gV2FybmluZyEgTWV0YSBzdHlsZXMgYXJlIGEgZGVwZW5kYW5jeSBvZiB0aGUgSmF2YXNjcmlwdC5cbiRpbmNsdWRlLWh0bWwtZ2xvYmFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcblxuLy8gTWVkaWEgUXVlcnkgUmFuZ2VzXG4kc21hbGwtYnJlYWtwb2ludDogIGVtLWNhbGMoNjQwKSAgIWRlZmF1bHQ7XG4kbWVkaXVtLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTAyNCkgIWRlZmF1bHQ7XG4kbGFyZ2UtYnJlYWtwb2ludDogIGVtLWNhbGMoMTQ0MCkgIWRlZmF1bHQ7XG4keGxhcmdlLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTkyMCkgIWRlZmF1bHQ7XG5cbiRzbWFsbC1yYW5nZTogICAoMCwgJHNtYWxsLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJG1lZGl1bS1yYW5nZTogICgkc21hbGwtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkbWVkaXVtLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJGxhcmdlLXJhbmdlOiAgICgkbWVkaXVtLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCAkbGFyZ2UtYnJlYWtwb2ludCkgICFkZWZhdWx0O1xuJHhsYXJnZS1yYW5nZTogICgkbGFyZ2UtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkeGxhcmdlLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJHh4bGFyZ2UtcmFuZ2U6ICgkeGxhcmdlLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCBlbS1jYWxjKDk5OTk5OTk5KSkgIWRlZmF1bHQ7XG5cbiRzY3JlZW46IFwib25seSBzY3JlZW5cIiAhZGVmYXVsdDtcblxuJGxhbmRzY2FwZTogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcIiAhZGVmYXVsdDtcbiRwb3J0cmFpdDogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVwiICFkZWZhdWx0O1xuXG4kc21hbGwtdXA6ICRzY3JlZW4gIWRlZmF1bHQ7XG4kc21hbGwtb25seTogXCIjeyRzY3JlZW59IGFuZCAobWF4LXdpZHRoOiAje3VwcGVyLWJvdW5kKCRzbWFsbC1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4kbWVkaXVtLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4kbWVkaXVtLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiRsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4kbGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiR4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcbiR4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuJHh4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4keHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiRyZXRpbmE6IChcbiAgXCIjeyRzY3JlZW59IGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKVwiLFxuICBcIiN7JHNjcmVlbn0gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpXCIsXG4gIFwiI3skc2NyZWVufSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMilcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KVwiXG4pO1xuXG4vLyBMZWdhY3lcbiRzbWFsbDogJHNtYWxsLXVwO1xuJG1lZGl1bTogJG1lZGl1bS11cDtcbiRsYXJnZTogJGxhcmdlLXVwO1xuXG5cbi8vV2UgdXNlIHRoaXMgYXMgY3Vyc29ycyB2YWx1ZXMgZm9yIGVuYWJsaW5nIHRoZSBvcHRpb24gb2YgaGF2aW5nIGN1c3RvbSBjdXJzb3JzIGluIHRoZSB3aG9sZSBzaXRlJ3Mgc3R5bGVzaGVldFxuJGN1cnNvci1hdXRvLXZhbHVlOiBhdXRvICFkZWZhdWx0O1xuJGN1cnNvci1jcm9zc2hhaXItdmFsdWU6IGNyb3NzaGFpciAhZGVmYXVsdDtcbiRjdXJzb3ItZGVmYXVsdC12YWx1ZTogZGVmYXVsdCAhZGVmYXVsdDtcbiRjdXJzb3ItZGlzYWJsZWQtdmFsdWU6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuJGN1cnNvci1wb2ludGVyLXZhbHVlOiBwb2ludGVyICFkZWZhdWx0O1xuJGN1cnNvci1oZWxwLXZhbHVlOiBoZWxwICFkZWZhdWx0O1xuJGN1cnNvci10ZXh0LXZhbHVlOiB0ZXh0ICFkZWZhdWx0O1xuXG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJnbG9iYWxcIikge1xuXG4gIC8vIE1ldGEgc3R5bGVzIGFyZSBhIGRlcGVuZGFuY3kgb2YgdGhlIEphdmFzY3JpcHQuXG4gIC8vIFVzZWQgdG8gcHJvdmlkZSBtZWRpYSBxdWVyeSB2YWx1ZXMgZm9yIGphdmFzY3JpcHQgY29tcG9uZW50cy5cbiAgLy8gRm9yd2FyZCBzbGFzaCBwbGFjZWQgYXJvdW5kIGV2ZXJ5dGhpbmcgdG8gY29udmluY2UgUGhhbnRvbUpTIHRvIHJlYWQgdGhlIHZhbHVlLlxuXG4gIEBpZiAkaW5jbHVkZS1qcy1tZXRhLXN0eWxlcyB7XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tdmVyc2lvbiB7XG4gICAgICBmb250LWZhbWlseTogXCIve3tWRVJTSU9OfX0vXCI7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXNtYWxsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHNtYWxsLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRzbWFsbC1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXNtYWxsLW9ubHkge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkc21hbGwtb25seSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkc21hbGwtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS1tZWRpdW0ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbWVkaXVtLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS1tZWRpdW0tb25seSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRtZWRpdW0tb25seSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Uge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbGFyZ2UtdXApICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Utb25seSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRsYXJnZS1vbmx5KSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXhsYXJnZSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4bGFyZ2UtdXApICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXhsYXJnZS1vbmx5IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHhsYXJnZS1vbmx5KSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS14eGxhcmdlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHh4bGFyZ2UtdXApICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1kYXRhLWF0dHJpYnV0ZS1uYW1lc3BhY2Uge1xuICAgICAgZm9udC1mYW1pbHk6ICN7JG5hbWVzcGFjZX07XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlcyB7XG5cbiAgICAvLyBNdXN0IGJlIDEwMCUgZm9yIG9mZiBjYW52YXMgdG8gd29ya1xuICAgIGh0bWwsIGJvZHkgeyBoZWlnaHQ6IDEwMCU7IH1cblxuICAgIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgfVxuXG4gICAgaHRtbCxcbiAgICBib2R5IHsgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IH1cblxuICAgIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgICBib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRib2R5LWJnO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItYXV0by12YWx1ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc3R5bGU6ICRib2R5LWZvbnQtc3R5bGU7XG4gICAgICBmb250LXdlaWdodDogJGJvZHktZm9udC13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7IC8vIFNldCB0byAkYmFzZS1saW5lLWhlaWdodCB0byB0YWtlIG9uIGJyb3dzZXIgZGVmYXVsdCBvZiAxNTAlXG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICBhOmhvdmVyIHsgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7IH1cblxuICAgIC8vIEdyaWQgRGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgfVxuXG4gICAgaW1nIHsgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG4gICAgI21hcF9jYW52YXMsXG4gICAgLm1hcF9jYW52YXMsXG4gICAgLm1xYS1kaXNwbGF5IHtcbiAgICAgIGltZyxcbiAgICAgIGVtYmVkLFxuICAgICAgb2JqZWN0IHsgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWlzY2VsbGFuZW91cyB1c2VmdWwgSFRNTCBjbGFzc2VzXG4gICAgLmxlZnQgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuY2xlYXJmaXggeyBAaW5jbHVkZSBjbGVhcmZpeDsgfVxuXG4gICAgLy8gSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVyc1xuICAgIC5oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICAgIC5pbnZpc2libGUgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuICAgIC8vIEZvbnQgc21vb3RoaW5nXG4gICAgLy8gQW50aWFsaWFzZWQgZm9udCBzbW9vdGhpbmcgd29ya3MgYmVzdCBmb3IgbGlnaHQgdGV4dCBvbiBhIGRhcmsgYmFja2dyb3VuZC5cbiAgICAvLyBBcHBseSB0byBzaW5nbGUgZWxlbWVudHMgaW5zdGVhZCBvZiBnbG9iYWxseSB0byBib2R5LlxuICAgIC8vIE5vdGUgdGhpcyBvbmx5IGFwcGxpZXMgdG8gd2Via2l0LWJhc2VkIGRlc2t0b3AgYnJvd3NlcnMgYW5kIEZpcmVmb3ggMjUgKGFuZCBsYXRlcikgb24gdGhlIE1hYy5cbiAgICAuYW50aWFsaWFzZWQgeyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gR2xvYmFsIHJlc2V0cyBmb3IgZm9ybXNcbiAgICAvL1xuXG4gICAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gICAgdGV4dGFyZWEgeyBoZWlnaHQ6IGF1dG87IG1pbi1oZWlnaHQ6IDUwcHg7IH1cblxuICAgIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICAgIHNlbGVjdCB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cbn1cbiIsIlxuJHhzbWFsbC1icmVha3BvaW50OiBlbS1jYWxjKDU0MCk7XG4kc21hbGwtYnJlYWtwb2ludDogIGVtLWNhbGMoODAwKTsgLy9lbS1jYWxjKDY0MCk7XG4kbWVkaXVtLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTAyNCk7XG4kbGFyZ2UtYnJlYWtwb2ludDogIGVtLWNhbGMoMTQ0MCk7XG4keGxhcmdlLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTkyMCk7XG5cbiR4c21hbGwtcmFuZ2U6ICAoMCwgJHhzbWFsbC1icmVha3BvaW50KTtcbiRzbWFsbC1yYW5nZTogICAoJHhzbWFsbC1icmVha3BvaW50ICsgZW0tY2FsYygxKSwgJHNtYWxsLWJyZWFrcG9pbnQpO1xuJG1lZGl1bS1yYW5nZTogICgkc21hbGwtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkbWVkaXVtLWJyZWFrcG9pbnQpO1xuJGxhcmdlLXJhbmdlOiAgICgkbWVkaXVtLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCAkbGFyZ2UtYnJlYWtwb2ludCk7XG4keGxhcmdlLXJhbmdlOiAgKCRsYXJnZS1icmVha3BvaW50ICArIGVtLWNhbGMoMSksICR4bGFyZ2UtYnJlYWtwb2ludCk7XG4keHhsYXJnZS1yYW5nZTogKCR4bGFyZ2UtYnJlYWtwb2ludCArIGVtLWNhbGMoMSksIGVtLWNhbGMoOTk5OTk5OTkpKTtcblxuJHNjcmVlbjogXCJvbmx5IHNjcmVlblwiO1xuXG4kbGFuZHNjYXBlOiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiO1xuJHBvcnRyYWl0OiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXCI7XG5cbiR4c21hbGwtdXA6ICRzY3JlZW47XG4keHNtYWxsLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1heC13aWR0aDogI3t1cHBlci1ib3VuZCgkeHNtYWxsLXJhbmdlKX0pXCI7XG5cbiRzbWFsbC11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHNtYWxsLXJhbmdlKX0pXCI7XG4kc21hbGwtb25seTogXCIjeyRzY3JlZW59IGFuZCAobWF4LXdpZHRoOiAje3VwcGVyLWJvdW5kKCRzbWFsbC1yYW5nZSl9KVwiO1xuXG4kbWVkaXVtLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCI7XG4kbWVkaXVtLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCI7XG5cbiRsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCI7XG4kbGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCI7XG5cbiR4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIjtcbiR4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIjtcblxuJHh4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCI7XG4keHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCI7XG5cbiRyZXRpbmE6IChcbiAgXCIjeyRzY3JlZW59IGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKVwiLFxuICBcIiN7JHNjcmVlbn0gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpXCIsXG4gIFwiI3skc2NyZWVufSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMilcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KVwiXG4pOyIsIlxuLy8vIGF2YWlsYWJsZSBjb2xvcnNcbiRqdmItYmx1ZTogIzM0OThEQjtcbiRqdmItYmx1ZS0xOiAjMTI1RTkxO1xuJGp2Yi1ibHVlLTI6ICMwMzQ0NmY7XG4kanZiLWdyYXk6ICMzMzMzMzM7XG4kanZiLWdyYXktMTogIzY2NjY2NjtcbiRqdmItZ3JheS0yOiAjZWZlZmVmO1xuXG5cbiRveC1vcmFuZ2U6ICNERDYwMTE7XG4kb3gtZ3JheTogIzQwNDA0MDtcblxuJHdoaXRlICAgICAgIDogI0ZGRkZGRjtcbiRnYWluc2Jvcm8gICA6ICNEREREREQ7XG4kYmFzZSAgICAgICAgOiAjQUFBQUFBO1xuJGNoYXJjb2FsICAgIDogIzU1NTU1NTtcbiRvaWwgICAgICAgICA6ICMzMzMzMzM7XG4kYmxhY2sgICAgICAgOiAjMDAwMDAwO1xuXG4vLy8gYXNzaWduIGNvbG9yc1xuJHNpdGUtcHJpbWFyeS1jb2xvcjogJGp2Yi1ibHVlO1xuJHNpdGUtc2Vjb25kYXJ5LWNvbG9yOiBob3RwaW5rO1xuJHNpdGUtYm9keS1jb2xvcjogJHdoaXRlO1xuJHNpdGUtY29weS1jb2xvcjogJGp2Yi1ncmF5O1xuXG4vLy8gcmVnaW9uIGNvbG9yc1xuJGhlYWRlci1iZzogJHdoaXRlO1xuJGhlYWRlci1jb2xvcjogJGp2Yi1ncmF5O1xuJGNvbnRlbnQtYmc6ICR3aGl0ZTtcbiRjb250ZW50LWNvbG9yOiAkanZiLWdyYXk7XG4kZm9vdGVyLWJnOiAkb2lsO1xuJGZvb3Rlci1jb2xvcjogJGdhaW5zYm9ybzsiLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1hY2NvcmRpb24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yOiAkc2lsdmVyICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAoJGNvbHVtbi1ndXR0ZXIvMikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gIE1peGluOiBhY2NvcmRpb24tY29udGFpbmVyKClcbi8vICBEZWNyaXB0aW9uOiBSZXNwb25zaWJsZSBmb3IgdGhlIGNvbnRhaW5lciBjb21wb25lbnQgb2YgYWNjb3JkaW9ucywgZ2VuZXJhdGluZyBzdHlsZXMgcmVsYXRpbmcgdG8gYSBtYXJnaW4gb2YgemVybyBhbmQgYSBjbGVhcmZpeFxuLy8gIEV4cGxpY2l0IERlcGVuZGVuY2llczogYSBjbGVhcmZpeCBtaXhpbiAqaXMqIGRlZmluZWQuXG4vLyAgSW1wbGljaXQgRGVwZW5kZW5jaWVzOiBOb25lXG5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyKCkge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gIE1peGluOiBhY2NvcmRpb24tbmF2aWdhdGlvbiggJGJnLCAkaG92ZXItYmcsICRhY3RpdmUtYmcsICRwYWRkaW5nLCAkYWN0aXZlX2NsYXNzLCAgJGZvbnQtY29sb3IsICRmb250LXNpemUsICRmb250LWZhbWlseSkge1xuLy8gICAgQHBhcmFtcyAkYmctY29sb3I6IFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnRcbi8vICAgIEBwYXJhbXMgJGhvdmVyLWJnLWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnQgd2hlbiBob3ZlcmVkXG4vLyAgICBAcGFyYW1zICRhY3RpdmUtYmcgWyBjb2xvciBvciBzdHJpbmcgXTogU3BlY2lmeSB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG5hdmlnYXRpb24gZWxlbWVudCB3aGVuIGNsaWNrZWQgYW5kIG5vdCByZWxlYXNlZC5cbi8vICAgIEBwYXJhbXMgJGFjdGl2ZV9jbGFzcyBbIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBjbGFzcyBuYW1lIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBhY2NvcmRpb24gdGFiIHNob3VsZCBiZSB2aXNpYmxlXG4vLyAgICBAcGFyYW1zICRmb250LWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IENvbG9yIG9mIHRoZSBmb250IGZvciBhY2NvcmRpb25cbi8vICAgIEBwYXJhbXMgJGZvbnQtc2l6ZSBbIG51bWJlciBdOiBTcGVjaWZpeSB0aGUgZm9udC1zaXplIG9mIHRoZSB0ZXh0IGluc2lkZSB0aGUgbmF2aWdhdGlvbiBlbGVtZW50XG4vLyAgICBAcGFyYW1zICRmb250LWZhbWlseSBbIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBmb250IGZhbWlseSBmb3IgdGhlIHRleHQgb2YgdGhlIG5hdmlnYXRpb24gb2YgdGhlIGFjY29yaW9uXG4vLyAgICBAcGFyYW1zICRhY3RpdmUtZm9udCBbIGNvbG9yIG9yIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBmb250IGNvbG9yIGZvciB0aGUgbmF2aWdhdGlvbiBlbGVtZW50IHdoZW4gYWN0aXZlLlxuXG5AbWl4aW4gYWNjb3JkaW9uLW5hdmlnYXRpb24oICRiZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkaG92ZXItYmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvciwgJGFjdGl2ZS1iZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvciwgJHBhZGRpbmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nLCAkYWN0aXZlX2NsYXNzOiAnYWN0aXZlJywgICRmb250LWNvbG9yOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvciwgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSwgJGZvbnQtZmFtaWx5OiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHksICRhY3RpdmUtZm9udDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1mb250LWNvbG9yICkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBAaWYgdHlwZS1vZigkYWN0aXZlX2NsYXNzKSAhPSBcInN0cmluZ1wiIHtcbiAgICBAd2FybiBcImAjeyRhY3RpdmVfY2xhc3N9YCBpc24ndCBhIHZhbGlkIHN0cmluZy4gQSB2YWxpZCBzdHJpbmcgaXMgbmVlZGVkIHRvIGNvcnJlY3RseSBiZSBpbnRlcnBvbGF0ZWQgYXMgYSBDU1MgY2xhc3MuIENTUyBjbGFzc2VzIGNhbm5vdCBzdGFydCB3aXRoIGEgbnVtYmVyIG9yIGNvbnNpc3Qgb2Ygb25seSBudW1iZXJzLiBDU1Mgd2lsbCBub3QgYmUgZ2VuZXJhdGVkIGZvciB0aGUgYWN0aXZlIHN0YXRlIG9mIHRoaXMgbmF2aWdhdGlvbiBjb21wb25lbnQuXCJcbiAgfVxuICBAZWxzZSB7XG4gICAgJi4jeyAkYWN0aXZlX2NsYXNzIH0gPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtYmc7XG4gICAgICBjb2xvcjogJGFjdGl2ZS1mb250O1xuICAgIH1cbiAgfVxuICA+IGEge1xuICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgQGlmIHR5cGUtb2YoJHBhZGRpbmcpICE9IG51bWJlciB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgd2FzIHJlYWQgYXMgI3t0eXBlLW9mKCRwYWRkaW5nKX1cIjtcbiAgICAgIEBpZiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZyAhPSBudWxsIHtcbiAgICAgICAgQHdhcm4gXCIjeyRwYWRkaW5nfSB3YXMgcmVhZCBhcyBhICN7dHlwZS1vZigkcGFkZGluZyl9XCI7XG4gICAgICAgIEB3YXJuIFwiYCN7JHBhZGRpbmd9YCBpc24ndCBhIHZhbGlkIG51bWJlci4gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmcgKCN7JGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmd9KSB3aWxsIGJlIHVzZWQgaW5zdGVhZC4pXCI7XG4gICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIgYW5kICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nIGlzIG1pc3NpbmcuIEEgdmFsdWUgb2YgYG51bGxgIGlzIHJldHVybmVkIHRvIG5vdCBvdXRwdXQgYW4gaW52YWxpZCB2YWx1ZSBmb3IgcGFkZGluZ1wiO1xuICAgICAgICBwYWRkaW5nOiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICB9XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBAaWYgdHlwZS1vZigkZm9udC1zaXplKSAhPSBudW1iZXIge1xuICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgd2FzIHJlYWQgYXMgYSAje3R5cGUtb2YoJGZvbnQtc2l6ZSl9XCI7XG4gICAgICBAaWYgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSAhPSBudWxsIHtcbiAgICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgaXMgbm90IGEgdmFsaWQgbnVtYmVyLiBUaGUgdmFsdWUgb2YgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSB3aWxsIGJlIHVzZWQgaW5zdGVhZCAoI3skYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplfSkuXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcbiAgICAgIH1cbiAgICAgIEBlbHNle1xuICAgICAgICBAd2FybiBcImAjeyRmb250LXNpemV9YCBpcyBub3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgaXMgbm90IGRlZmluZWQuIEEgdmFsdWUgb2YgYG51bGxgIHdpbGwgYmUgcmV0dXJuZWQgdG8gbm90IGdlbmVyYXRlIGFuIGludmFsaWQgdmFsdWUgZm9yIGZvbnQtc2l6ZS5cIjtcbiAgICAgICAgZm9udC1zaXplOiBudWxsO1xuXG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cbi8vICBNaXhpbjogYWNjb3JkaW9uLWNvbnRlbnQoJGJnLCAkcGFkZGluZywgJGFjdGl2ZS1jbGFzcylcbi8vICAgIEBwYXJhbXMgJHBhZGRpbmcgWyBudW1iZXIgXTogUGFkZGluZyBmb3IgdGhlIGNvbnRlbnQgb2YgdGhlIGNvbnRhaW5lclxuLy8gICAgQHBhcmFtcyAkYmcgWyBjb2xvciAgXTogQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGNvbnRlbnQgd2hlbiBpdCdzIHZpc2libGVcbi8vICAgIEBwYXJhbXMgJGFjdGl2ZV9jbGFzcyBbIHN0cmluZyBdOiBDbGFzcyBuYW1lIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBhY2NvcmRpb24gdGFiIHNob3VsZCBiZSB2aXNpYmxlLlxuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQoJGJnOiAkYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yLCAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsICRhY3RpdmVfY2xhc3M6ICdhY3RpdmUnKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpZiB0eXBlLW9mKCRwYWRkaW5nKSAhPSBcIm51bWJlclwiIHtcbiAgICBAd2FybiBcIiN7JHBhZGRpbmd9IHdhcyByZWFkIGFzIGEgI3t0eXBlLW9mKCRwYWRkaW5nKX1cIjtcbiAgICBAaWYgJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcgIT0gbnVsbCB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIuICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIHVzZWQgaW5zdGVhZFwiO1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIGlzIG5vdCBkZWZpbmVkLiBBIHZhbHVlIG9mIGBudWxsYCBpcyByZXR1cm5lZCB0byBub3Qgb3V0cHV0IGFuIGludmFsaWQgdmFsdWUgZm9yIHBhZGRpbmcuXCI7XG4gICAgICBwYWRkaW5nOiBudWxsO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkYWN0aXZlX2NsYXNzKSAhPSBcInN0cmluZ1wiIHtcbiAgICBAd2FybiBcImAjeyRhY3RpdmVfY2xhc3N9YCBpc24ndCBhIHZhbGlkIHN0cmluZy4gQSB2YWxpZCBzdHJpbmcgaXMgbmVlZGVkIHRvIGNvcnJlY3RseSBiZSBpbnRlcnBvbGF0ZWQgYXMgYSBDU1MgY2xhc3MuIENTUyBjbGFzc2VzIGNhbm5vdCBzdGFydCB3aXRoIGEgbnVtYmVyIG9yIGNvbnNpc3Qgb2Ygb25seSBudW1iZXJzLiBDU1Mgd2lsbCBub3QgYmUgZ2VuZXJhdGVkIGZvciB0aGUgYWN0aXZlIHN0YXRlIG9mIHRoZSBjb250ZW50LiBcIlxuICB9XG4gIEBlbHNlIHtcbiAgICAmLiN7JGFjdGl2ZV9jbGFzc30ge1xuICAgICAgYmFja2dyb3VuZDogJGJnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJhY2NvcmRpb25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1hY2NvcmRpb24tY2xhc3NlcyB7XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIC5hY2NvcmRpb24tbmF2aWdhdGlvbiwgZGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAmLmFjdGl2ZSA+IGEgeyBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOyBjb2xvcjogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1mb250LWNvbG9yOyB9XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcbiAgICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZztcbiAgICAgICAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOyB9XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nO1xuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1hY3RpdmUtYmctY29sb3I7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cbiRyZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcblxuLy8gSU1QT1JUIE9OQ0Vcbi8vIFdlIHVzZSB0aGlzIHRvIHByZXZlbnQgc3R5bGVzIGZyb20gYmVpbmcgbG9hZGVkIG11bHRpcGxlIHRpbWVzIGZvciBjb21wb25lbnRzIHRoYXQgcmVseSBvbiBvdGhlciBjb21wb25lbnRzLlxuJG1vZHVsZXM6ICgpICFkZWZhdWx0O1xuXG5AbWl4aW4gZXhwb3J0cygkbmFtZSkge1xuICAvLyBJbXBvcnQgZnJvbSBnbG9iYWwgc2NvcGVcbiAgJG1vZHVsZXM6ICRtb2R1bGVzICFnbG9iYWw7XG4gIC8vIENoZWNrIGlmIGEgbW9kdWxlIGlzIGFscmVhZHkgb24gdGhlIGxpc3RcbiAgJG1vZHVsZV9pbmRleDogaW5kZXgoJG1vZHVsZXMsICRuYW1lKTtcbiAgQGlmICgoJG1vZHVsZV9pbmRleCA9PSBudWxsKSBvciAoJG1vZHVsZV9pbmRleCA9PSBmYWxzZSkpIHtcbiAgICAkbW9kdWxlczogYXBwZW5kKCRtb2R1bGVzLCAkbmFtZSkgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vL1xuLy8gQGZ1bmN0aW9uc1xuLy9cblxuXG4vLyBSQU5HRVNcbi8vIFdlIHVzZSB0aGVzZSBmdW5jdGlvbnMgdG8gZGVmaW5lIHJhbmdlcyBmb3IgdmFyaW91cyB0aGluZ3MsIGxpa2UgbWVkaWEgcXVlcmllcy5cbkBmdW5jdGlvbiBsb3dlci1ib3VuZCgkcmFuZ2UpIHtcbiAgQGlmIGxlbmd0aCgkcmFuZ2UpIDw9IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAcmV0dXJuIG50aCgkcmFuZ2UsIDEpO1xufVxuXG5AZnVuY3Rpb24gdXBwZXItYm91bmQoJHJhbmdlKSB7XG4gIEBpZiBsZW5ndGgoJHJhbmdlKSA8IDIge1xuICAgIEByZXR1cm4gOTk5OTk5OTk5OTk5O1xuICB9XG4gIEByZXR1cm4gbnRoKCRyYW5nZSwgMik7XG59XG5cbi8vIFNUUklQIFVOSVRcbi8vIEl0IHN0cmlwcyB0aGUgdW5pdCBvZiBtZWFzdXJlIGFuZCByZXR1cm5zIGl0XG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLyBURVhUIElOUFVUIFRZUEVTXG5cbkBmdW5jdGlvbiB0ZXh0LWlucHV0cyggJHR5cGVzOiBhbGwsICRzZWxlY3RvcjogaW5wdXQgKSB7XG5cbiAgJHJldHVybjogKCk7XG5cbiAgJGFsbC10ZXh0LWlucHV0LXR5cGVzOlxuICAgIHRleHRcbiAgICBwYXNzd29yZFxuICAgIGRhdGVcbiAgICBkYXRldGltZVxuICAgIGRhdGV0aW1lLWxvY2FsXG4gICAgbW9udGhcbiAgICB3ZWVrXG4gICAgZW1haWxcbiAgICBudW1iZXJcbiAgICBzZWFyY2hcbiAgICB0ZWxcbiAgICB0aW1lXG4gICAgdXJsXG4gICAgY29sb3JcbiAgICB0ZXh0YXJlYTtcblxuICBAaWYgJHR5cGVzID09IGFsbCB7ICR0eXBlczogJGFsbC10ZXh0LWlucHV0LXR5cGVzOyB9XG5cbiAgQGVhY2ggJHR5cGUgaW4gJHR5cGVzIHtcbiAgICBAaWYgJHR5cGUgPT0gdGV4dGFyZWEge1xuICAgICAgQGlmICRzZWxlY3RvciA9PSBpbnB1dCB7XG4gICAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCB1bnF1b3RlKCcjeyR0eXBlfScpLCBjb21tYSlcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgdW5xdW90ZSgnI3skdHlwZX0jeyRzZWxlY3Rvcn0nKSwgY29tbWEpXG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgdW5xdW90ZSgnI3skc2VsZWN0b3J9W3R5cGU9XCIjeyR0eXBlfVwiXScpLCBjb21tYSlcbiAgICB9XG4gIH1cblxuICAgIEByZXR1cm4gJHJldHVybjtcblxufVxuXG4vLyBDT05WRVJUIFRPIFJFTVxuQGZ1bmN0aW9uIGNvbnZlcnQtdG8tcmVtKCR2YWx1ZSwgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xuICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UtdmFsdWUpICogMXJlbTtcbiAgQGlmICgkdmFsdWUgPT0gMHJlbSkgeyAkdmFsdWU6IDA7IH0gLy8gVHVybiAwcmVtIGludG8gMFxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIGRhdGEoJGF0dHIpIHtcbiAgQGlmICRuYW1lc3BhY2Uge1xuICAgIEByZXR1cm4gJ1tkYXRhLScgKyAkbmFtZXNwYWNlICsgJy0nICsgJGF0dHIgKyAnXSc7XG4gIH1cblxuICBAcmV0dXJuICdbZGF0YS0nICsgJGF0dHIgKyAnXSc7XG59XG5cbi8vIFJFTSBDQUxDXG5cbi8vIE5ldyBTeW50YXgsIGFsbG93cyB0byBvcHRpb25hbGx5IGNhbGN1bGF0ZSBvbiBhIGRpZmZlcmVudCBiYXNlIHZhbHVlIHRvIGNvdW50ZXIgY29tcG91bmRpbmcgZWZmZWN0IG9mIHJlbSdzLlxuLy8gQ2FsbCB3aXRoIDEsIDIsIDMgb3IgNCBwYXJhbWV0ZXJzLCAncHgnIGlzIG5vdCByZXF1aXJlZCBidXQgc3VwcG9ydGVkOlxuLy9cbi8vICAgcmVtLWNhbGMoMTAgMjAgMzBweCA0MCk7XG4vL1xuLy8gU3BhY2UgZGVsaW1pdGVkLCBpZiB5b3Ugd2FudCB0byBkZWxpbWl0IHVzaW5nIGNvbW1hJ3MsIHdyYXAgaXQgaW4gYW5vdGhlciBwYWlyIG9mIGJyYWNrZXRzXG4vL1xuLy8gICByZW0tY2FsYygoMTAsIDIwLCAzMCwgNDBweCkpO1xuLy9cbi8vIE9wdGlvbmFsbHkgY2FsbCB3aXRoIGEgZGlmZmVyZW50IGJhc2UgKGVnOiA4cHgpIHRvIGNhbGN1bGF0ZSByZW0uXG4vL1xuLy8gICByZW0tY2FsYygxNnB4IDMycHggNDhweCwgOHB4KTtcbi8vXG4vLyBJZiB5b3UgcmVxdWlyZSB0byBjb21tYSBzZXBhcmF0ZSB5b3VyIGxpc3Rcbi8vXG4vLyAgIHJlbS1jYWxjKCgxNnB4LCAzMnB4LCA0OCksIDhweCk7XG5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICRtYXg6IGxlbmd0aCgkdmFsdWVzKTtcblxuICBAaWYgJG1heCA9PSAxIHsgQHJldHVybiBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgMSksICRiYXNlLXZhbHVlKTsgfVxuXG4gICRyZW1WYWx1ZXM6ICgpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRyZW1WYWx1ZXM6IGFwcGVuZCgkcmVtVmFsdWVzLCBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZS12YWx1ZSkpO1xuICB9XG4gIEByZXR1cm4gJHJlbVZhbHVlcztcbn1cblxuXG5AZnVuY3Rpb24gZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICRyZW1WYWx1ZXM6IHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpO1xuXG4gICRtYXg6IGxlbmd0aCgkcmVtVmFsdWVzKTtcblxuICBAaWYgJG1heCA9PSAxIHsgQHJldHVybiBzdHJpcC11bml0KG50aCgkcmVtVmFsdWVzLCAxKSkgKiAxZW07IH1cblxuICAkZW1WYWx1ZXM6ICgpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRlbVZhbHVlczogYXBwZW5kKCRlbVZhbHVlcywgc3RyaXAtdW5pdChudGgoJHJlbVZhbHVlcywgJGkpKSAqIDFlbSk7XG4gIH1cbiAgQHJldHVybiAkZW1WYWx1ZXM7XG59XG5cblxuLy8gRGVwcmVjYXRlZDogT0xEIEVNIENBTENcbkBmdW5jdGlvbiBlbUNhbGMoJHZhbHVlcykge1xuICBAcmV0dXJuIGVtLWNhbGMoJHZhbHVlcyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQWxlcnQgQm94IFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYWxlcnQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFsZXJ0IHBhZGRpbmcuXG4kYWxlcnQtcGFkZGluZy10b3A6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLWRlZmF1bHQtZmxvYXQ6ICRhbGVydC1wYWRkaW5nLXRvcCAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLW9wcG9zaXRlLWRpcmVjdGlvbjogJGFsZXJ0LXBhZGRpbmctdG9wICsgcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmctYm90dG9tOiAkYWxlcnQtcGFkZGluZy10b3AgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRleHQgc3R5bGUuXG4kYWxlcnQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYWxlcnQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kYWxlcnQtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGFsZXJ0LWZvbnQtY29sb3ItYWx0OiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtNjYlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgZm9yIGNsb3NlIGhvdmVyIGVmZmVjdC5cbiRhbGVydC1mdW5jdGlvbi1mYWN0b3I6IC0xNCUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXMuXG4kYWxlcnQtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRhbGVydC1ib3R0b20tbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgY2xvc2UgYnV0dG9uc1xuJGFsZXJ0LWNsb3NlLWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXRvcDogNTAlICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXBvc2l0aW9uOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1vcGFjaXR5OiAuMyAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1vcGFjaXR5LWhvdmVyOiAuNSAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1wYWRkaW5nOiAwIDZweCA0cHggIWRlZmF1bHQ7XG4kYWxlcnQtY2xvc2UtYmFja2dyb3VuZDogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBib3JkZXIgcmFkaXVzXG4kYWxlcnQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuJGFsZXJ0LXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zICFkZWZhdWx0O1xuJGFsZXJ0LXRyYW5zaXRpb24tZWFzZTogZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vXG4vLyBBbGVydCBNaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGRlZmF1bHQgYWxlcnQgYmFzZS5cbkBtaXhpbiBhbGVydC1iYXNlIHtcbiAgYm9yZGVyLXN0eWxlOiAkYWxlcnQtYm9yZGVyLXN0eWxlO1xuICBib3JkZXItd2lkdGg6ICRhbGVydC1ib3JkZXItd2lkdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRhbGVydC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtZm9udC13ZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1ib3R0b20tbWFyZ2luO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy10b3AgJGFsZXJ0LXBhZGRpbmctb3Bwb3NpdGUtZGlyZWN0aW9uICRhbGVydC1wYWRkaW5nLWJvdHRvbSAkYWxlcnQtcGFkZGluZy1kZWZhdWx0LWZsb2F0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKG9wYWNpdHksICRhbGVydC10cmFuc2l0aW9uLXNwZWVkLCAkYWxlcnQtdHJhbnNpdGlvbi1lYXNlKVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgYWxlcnQgc3R5bGVzXG4vL1xuLy8gJGJnIC0gVGhlIGJhY2tncm91bmQgb2YgdGhlIGFsZXJ0LiBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvci5cbkBtaXhpbiBhbGVydC1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IpIHtcblxuICAvLyBUaGlzIGZpbmRzIHRoZSBsaWdodG5lc3MgcGVyY2VudGFnZSBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBib3JkZXIgY29tZSB0aHJvdWdoLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gIGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGJnLCAkbGlnaHRuZXNzOiAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yKTtcblxuICAvLyBXZSBjb250cm9sIHRoZSB0ZXh0IGNvbG9yIGZvciB5b3UgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4gIEBpZiAkYmctbGlnaHRuZXNzID4gNzAlIHsgY29sb3I6ICRhbGVydC1mb250LWNvbG9yLWFsdDsgfVxuICBAZWxzZSAgICAgICAgICAgICAgICAgICB7IGNvbG9yOiAkYWxlcnQtZm9udC1jb2xvcjsgfVxuXG59XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGFsZXJ0LWNsb3NlIHtcbiAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGFsZXJ0LWNsb3NlLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kOiAkYWxlcnQtY2xvc2UtYmFja2dyb3VuZDtcbiAgY29sb3I6ICRhbGVydC1jbG9zZS1jb2xvcjtcbiAgZm9udC1zaXplOiAkYWxlcnQtY2xvc2UtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogLjk7XG4gIG1hcmdpbi10b3A6IC0oJGFsZXJ0LWNsb3NlLWZvbnQtc2l6ZSAvIDIpO1xuICBvcGFjaXR5OiAkYWxlcnQtY2xvc2Utb3BhY2l0eTtcbiAgcGFkZGluZzogJGFsZXJ0LWNsb3NlLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkYWxlcnQtY2xvc2UtdG9wO1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHsgb3BhY2l0eTogJGFsZXJ0LWNsb3NlLW9wYWNpdHktaG92ZXI7IH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gcXVpY2tseSBjcmVhdGUgYWxlcnRzIHdpdGggYSBzaW5nbGUgbWl4aW4uXG4vL1xuLy8gJGJnIC0gQmFja2dyb3VuZCBvZiBhbGVydC4gRGVmYXVsdDogJHByaW1hcnktY29sb3IuXG4vLyAkcmFkaXVzIC0gUmFkaXVzIG9mIGFsZXJ0IGJveC4gRGVmYXVsdDogZmFsc2UuXG5AbWl4aW4gYWxlcnQoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XG4gIEBpbmNsdWRlIGFsZXJ0LWJhc2U7XG4gIEBpbmNsdWRlIGFsZXJ0LXN0eWxlKCRiZyk7XG4gIEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImFsZXJ0LWJveFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWFsZXJ0LWNsYXNzZXMge1xuICAgIC5hbGVydC1ib3gge1xuICAgICAgQGluY2x1ZGUgYWxlcnQ7XG5cbiAgICAgIC5jbG9zZSAgICAgIHsgQGluY2x1ZGUgYWxlcnQtY2xvc2U7IH1cblxuICAgICAgJi5yYWRpdXMgICAgeyBAaW5jbHVkZSByYWRpdXMoJGFsZXJ0LXJhZGl1cyk7IH1cbiAgICAgICYucm91bmQgICAgIHsgQGluY2x1ZGUgcmFkaXVzKCRnbG9iYWwtcm91bmRlZCk7IH1cblxuICAgICAgJi5zdWNjZXNzICAgeyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkc3VjY2Vzcy1jb2xvcik7IH1cbiAgICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgYWxlcnQtc3R5bGUoJGFsZXJ0LWNvbG9yKTsgfVxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgJi53YXJuaW5nIHsgQGluY2x1ZGUgYWxlcnQtc3R5bGUoJHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAmLmluZm8geyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkaW5mby1jb2xvcik7IH1cbiAgICAgICYuYWxlcnQtY2xvc2UgeyBvcGFjaXR5OiAwfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vLy8gUmFkaXVzXG4kZ2xvYmFsLXJhZGl1czogM3B4O1xuJGdsb2JhbC1yb3VuZGVkOiAxMDAwcHg7IiwiXG4kYWxlcnQtY29sb3I6ICNmMDQxMjQ7XG4kc3VjY2Vzcy1jb2xvcjogIzQzQUM2QTtcbiR3YXJuaW5nLWNvbG9yOiAjZjA4YTI0O1xuJGluZm8tY29sb3I6ICM1QkIxRDM7XG5cbiRhbGVydC1wYWRkaW5nLXRvcDogJHNpdGUtcDtcbiRhbGVydC1wYWRkaW5nLWRlZmF1bHQtZmxvYXQ6ICRhbGVydC1wYWRkaW5nLXRvcDtcbiRhbGVydC1wYWRkaW5nLW9wcG9zaXRlLWRpcmVjdGlvbjogJGFsZXJ0LXBhZGRpbmctdG9wICsgcmVtLWNhbGMoMTApO1xuJGFsZXJ0LXBhZGRpbmctYm90dG9tOiAkYWxlcnQtcGFkZGluZy10b3A7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRleHQgc3R5bGUuXG4vLyAkYWxlcnQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkYWxlcnQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4vLyAkYWxlcnQtZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJGFsZXJ0LWZvbnQtY29sb3ItYWx0OiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtNjYlKTtcblxuLy8gV2UgdXNlIHRoaXMgZm9yIGNsb3NlIGhvdmVyIGVmZmVjdC5cbi8vICRhbGVydC1mdW5jdGlvbi1mYWN0b3I6IC0xNCU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXMuXG4vLyAkYWxlcnQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRhbGVydC1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRhbGVydC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRhbGVydC1ib3R0b20tbWFyZ2luOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgY2xvc2UgYnV0dG9uc1xuLy8gJGFsZXJ0LWNsb3NlLWNvbG9yOiAkb2lsO1xuLy8gJGFsZXJ0LWNsb3NlLXRvcDogNTAlO1xuLy8gJGFsZXJ0LWNsb3NlLXBvc2l0aW9uOiByZW0tY2FsYyg0KTtcbi8vICRhbGVydC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbi8vICRhbGVydC1jbG9zZS1vcGFjaXR5OiAuMztcbi8vICRhbGVydC1jbG9zZS1vcGFjaXR5LWhvdmVyOiAuNTtcbi8vICRhbGVydC1jbG9zZS1wYWRkaW5nOiA5cHggNnB4IDRweDtcbi8vICRhbGVydC1jbG9zZS1iYWNrZ3JvdW5kOiBpbmhlcml0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGJvcmRlciByYWRpdXNcbi8vICRhbGVydC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAkYWxlcnQtdHJhbnNpdGlvbi1zcGVlZDogMzAwbXM7XG4vLyAkYWxlcnQtdHJhbnNpdGlvbi1lYXNlOiBlYXNlLW91dDsiLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQmxvY2sgR3JpZCBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWJsb2NrLWdyaWQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuJGluY2x1ZGUteGwtaHRtbC1ibG9jay1ncmlkLWNsYXNzZXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBtYXhpbXVtIG51bWJlciBvZiBibG9jayBncmlkIGVsZW1lbnRzIHBlciByb3dcbiRibG9jay1ncmlkLWVsZW1lbnRzOiAxMiAhZGVmYXVsdDtcbiRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4kYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkOiBmYWxzZSAhZGVmYXVsdDtcbkBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcbiAgJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nOiAkY29sdW1uLWd1dHRlcjtcbn1cblxuLy8gRW5hYmxlcyBtZWRpYSBxdWVyaWVzIGZvciBibG9jay1ncmlkIGNsYXNzZXMuIFNldCB0byBmYWxzZSBpZiB3cml0aW5nIHNlbWFudGljIEhUTUwuXG4kYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzOiB0cnVlICFkZWZhdWx0O1xuXG4vL1xuLy8gQmxvY2sgR3JpZCBNaXhpbnNcbi8vXG5cbi8vIENyZWF0ZSBhIGN1c3RvbSBibG9jayBncmlkXG4vL1xuLy8gJHBlci1yb3cgLSAjIG9mIGl0ZW1zIHRvIGRpc3BsYXkgcGVyIHJvdy4gRGVmYXVsdDogZmFsc2UuXG4vLyAkc3BhY2luZyAtICMgb2YgZW1zIHRvIHVzZSBhcyBwYWRkaW5nIG9uIGVhY2ggYmxvY2sgaXRlbS4gRGVmYXVsdDogcmVtLWNhbGMoMjApLlxuLy8gJGluY2x1ZGUtc3BhY2luZyAtIEFkZHMgcGFkZGluZyB0byBvdXIgbGlzdCBpdGVtLiBEZWZhdWx0OiB0cnVlLlxuLy8gJGJhc2Utc3R5bGUgLSBBcHBseSBhIGJhc2Ugc3R5bGUgdG8gYmxvY2sgZ3JpZC4gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBibG9jay1ncmlkKFxuICAkcGVyLXJvdzpmYWxzZSxcbiAgJHNwYWNpbmc6JGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nLFxuICAkaW5jbHVkZS1zcGFjaW5nOnRydWUsXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luOiAwICgtJHNwYWNpbmcvMik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIEBpZiAkaW5jbHVkZS1zcGFjaW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAoJHNwYWNpbmcvMikgJHNwYWNpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwZXItcm93IHtcbiAgICA+IGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBAaWYgJGluY2x1ZGUtc3BhY2luZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgKCRzcGFjaW5nLzIpICRzcGFjaW5nO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCUvJHBlci1yb3c7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgICAgICY6bnRoLW9mLXR5cGUoI3skcGVyLXJvd31uKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1hbGlnbmVkKCRwZXItcm93LCAkc3BhY2luZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBibG9jay1ncmlkLWFsaWduZWQoJHBlci1yb3csICRzcGFjaW5nKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtZWxlbWVudHMge1xuICAgIEBpZiAkcGVyLXJvdyA+PSAkaSB7XG4gICAgICAkZ3JpZC1jb2x1bW46ICcrJyArICRpO1xuICAgICAgQGlmICRwZXItcm93ID09ICRpIHtcbiAgICAgICAgJGdyaWQtY29sdW1uOiAnJztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoI3skcGVyLXJvd31uI3t1bnF1b3RlKCRncmlkLWNvbHVtbil9KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCRzcGFjaW5nIC0gKCgkc3BhY2luZyAvICRwZXItcm93KSAqICgkcGVyLXJvdyAtICgkaSAtIDEpKSkpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJHNwYWNpbmcgLSAoKCRzcGFjaW5nIC8gJHBlci1yb3cpICogJGkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgcHJlc2VudGF0aW9uYWwgbWFya3VwIGZvciBibG9jayBncmlkLlxuLy9cbi8vICRzaXplIC0gTmFtZSBvZiBjbGFzcyB0byB1c2UsIGkuZS4gXCJsYXJnZVwiIHdpbGwgZ2VuZXJhdGUgLmxhcmdlLWJsb2NrLWdyaWQtMSwgLmxhcmdlLWJsb2NrLWdyaWQtMiwgZXRjLlxuQG1peGluIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplLCAkaW5jbHVkZS1zcGFjaW5nKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtZWxlbWVudHMge1xuICAgIC4jeyRzaXplfS1ibG9jay1ncmlkLSN7KCRpKX0ge1xuICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZCgkaSwgJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nLCAkaW5jbHVkZS1zcGFjaW5nLCBmYWxzZSk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJibG9jay1ncmlkXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzIHtcblxuICAgIFtjbGFzcyo9XCJibG9jay1ncmlkLVwiXSB7IEBpbmNsdWRlIGJsb2NrLWdyaWQ7IH1cblxuICAgIEBpZiAkYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzIHtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpzbWFsbCwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6bWVkaXVtLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOmxhcmdlLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRpbmNsdWRlLXhsLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzIHtcbiAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnhsYXJnZSwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnh4bGFyZ2UsICRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQnJlYWRjcnVtYiBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyLlxuJGNydW1iLWJnOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA1NSUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBwYWRkaW5nIGFyb3VuZCB0aGUgYnJlYWRjcnVtYnMuXG4kY3J1bWItcGFkZGluZzogcmVtLWNhbGMoOSAxNCA5KSAhZGVmYXVsdDtcbiRjcnVtYi1zaWRlLXBhZGRpbmc6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbiRjcnVtYi1mdW5jdGlvbi1mYWN0b3I6IC0xMCUgIWRlZmF1bHQ7XG4kY3J1bWItYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjcnVtYi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGNydW1iLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGNydW1iLWJnLCAkbGlnaHRuZXNzOiAkY3J1bWItZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRjcnVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHZhcmlvdXMgdGV4dCBzdHlsZXMgZm9yIGJyZWFkY3J1bWJzLlxuJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDogJG9pbCAhZGVmYXVsdDtcbiRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kY3J1bWItZm9udC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRjcnVtYi1saW5rLWRlY29yOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWJzXG4kY3J1bWItc2xhc2gtY29sb3I6ICRiYXNlICFkZWZhdWx0O1xuJGNydW1iLXNsYXNoOiBcIi9cIiAhZGVmYXVsdDtcbiRjcnVtYi1zbGFzaC1wb3NpdGlvbjogMXB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gQnJlYWRjcnVtYiBNaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGNvbnRhaW5lciBhcm91bmQgb3VyIGJyZWFkY3J1bWJzXG5AbWl4aW4gY3J1bWItY29udGFpbmVyIHtcbiAgYm9yZGVyLXN0eWxlOiAkY3J1bWItYm9yZGVyLXN0eWxlO1xuICBib3JkZXItd2lkdGg6ICRjcnVtYi1ib3JkZXItc2l6ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogJGNydW1iLXBhZGRpbmc7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBib3JkZXIgY29tZSB0aHJvdWdoLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3J1bWItYmc7XG4gIGJvcmRlci1jb2xvcjogJGNydW1iLWJvcmRlci1jb2xvcjtcbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGJyZWFkY3J1bWIgc3R5bGVzIGZyb20gbGlzdCBpdGVtcy5cbkBtaXhpbiBjcnVtYnMge1xuXG4gIC8vIEEgbm9ybWFsIHN0YXRlIHdpbGwgbWFrZSB0aGUgbGlua3MgbG9vayBhbmQgYWN0IGxpa2UgY2xpY2thYmxlIGJyZWFkY3J1bWJzLlxuICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3I7XG4gIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgZm9udC1zaXplOiAkY3J1bWItZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNydW1iLWZvbnQtc2l6ZTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogJGNydW1iLWZvbnQtdHJhbnNmb3JtO1xuXG4gICY6aG92ZXIgYSwgJjpmb2N1cyBhIHsgdGV4dC1kZWNvcmF0aW9uOiAkY3J1bWItbGluay1kZWNvcjsgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIEN1cnJlbnQgaXMgZm9yIHRoZSBsaW5rIG9mIHRoZSBjdXJyZW50IHBhZ2VcbiAgJi5jdXJyZW50IHtcbiAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci1jdXJyZW50O1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgfVxuXG4gICAgJjpob3ZlciwgJjpob3ZlciBhLFxuICAgICY6Zm9jdXMsICY6Zm9jdXMgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICB9XG5cbiAgLy8gVW5hdmFpbGFibGUgcmVtb3ZlZCBjb2xvciBhbmQgbGluayBzdHlsZXMgc28gaXQgbG9va3MgaW5hY3RpdmUuXG4gICYudW5hdmFpbGFibGUge1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTtcbiAgICBhIHsgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOyB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6aG92ZXIgYSxcbiAgICAmOmZvY3VzLFxuICAgIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkLXZhbHVlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogJGNydW1iLXNsYXNoLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiI3skY3J1bWItc2xhc2h9XCI7XG4gICAgbWFyZ2luOiAwICRjcnVtYi1zaWRlLXBhZGRpbmc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogJGNydW1iLXNsYXNoLXBvc2l0aW9uO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYnJlYWRjcnVtYnNcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlcyB7XG4gICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgIEBpbmNsdWRlIGNydW1iLWNvbnRhaW5lcjtcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygkY3J1bWItcmFkaXVzKTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgY3J1bWJzO1xuICAgICAgfVxuICAgIH1cbiAgICAvKiBBY2Nlc3NpYmlsaXR5IC0gaGlkZXMgdGhlIGZvcndhcmQgc2xhc2ggKi9cbiAgICBbYXJpYS1sYWJlbD1cImJyZWFkY3J1bWJzXCJdIFthcmlhLWhpZGRlbj1cInRydWVcIl06YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGJ1aWxkIHBhZGRpbmcgZm9yIGJ1dHRvbnMuXG4kYnV0dG9uLXRueTogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWw6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRidXR0b24tbWVkOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYnV0dG9uLWxyZzogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBkaXNwbGF5IHByb3BlcnR5LlxuJGJ1dHRvbi1kaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWRlZmF1bHQ7XG4kYnV0dG9uLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIHRleHQgc3R5bGVzLlxuJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1jb2xvci1hbHQ6ICRvaWwgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtdG55OiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtc21sOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbWVkOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbHJnOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZhcmlvdXMgaG92ZXIgZWZmZWN0cy5cbiRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAtMjAlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gYm9yZGVyIHN0eWxlcy5cbiRidXR0b24tYm9yZGVyLXdpZHRoOiAwICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGJ1dHRvbi1iZy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kYnV0dG9uLWJvcmRlci1jb2xvcjogJGJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYnV0dG9uLWJnLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHNlY29uZGFyeS1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1idXR0b24tYmctY29sb3I6ICRzdWNjZXNzLWNvbG9yICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcjogJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyICFkZWZhdWx0O1xuJGFsZXJ0LWJ1dHRvbi1iZy1jb2xvcjogJGFsZXJ0LWNvbG9yICFkZWZhdWx0O1xuJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcjogJGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiR3YXJuaW5nLWJ1dHRvbi1iZy1jb2xvcjogJHdhcm5pbmctY29sb3IgIWRlZmF1bHQ7XG4kd2FybmluZy1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCR3YXJuaW5nLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kd2FybmluZy1idXR0b24tYm9yZGVyLWNvbG9yOiAkd2FybmluZy1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG4kaW5mby1idXR0b24tYmctY29sb3I6ICRpbmZvLWNvbG9yICFkZWZhdWx0O1xuJGluZm8tYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkaW5mby1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcjogJGluZm8tYnV0dG9uLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS5cbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiRidXR0b24tcm91bmQ6ICRnbG9iYWwtcm91bmRlZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBidXR0b25zLlxuJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAuNyAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWUgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGRlZmF1bHQgYnV0dG9uIGJhc2UuXG4vL1xuLy8gJHN0eWxlIC0gU2V0cyBiYXNlIHN0eWxlcy4gQ2FuIGJlIHNldCB0byBmYWxzZS4gRGVmYXVsdDogdHJ1ZS5cbi8vICRkaXNwbGF5IC0gVXNlZCB0byBjb250cm9sIGRpc3BsYXkgcHJvcGVydHkuIERlZmF1bHQ6ICRidXR0b24tZGlzcGxheSB8fCBpbmxpbmUtYmxvY2tcblxuQG1peGluIGJ1dHRvbi1iYXNlKCRzdHlsZTp0cnVlLCAkZGlzcGxheTokYnV0dG9uLWRpc3BsYXkpIHtcbiAgQGlmICRzdHlsZSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOjA7XG4gICAgYm9yZGVyLXN0eWxlOiAkYnV0dG9uLWJvcmRlci1zdHlsZTtcbiAgICBib3JkZXItd2lkdGg6ICRidXR0b24tYm9yZGVyLXdpZHRoO1xuICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xuICAgIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwIDAgJGJ1dHRvbi1tYXJnaW4tYm90dG9tO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiAkYnV0dG9uLWZvbnQtYWxpZ247XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIEBpZiAkZGlzcGxheSB7IGRpc3BsYXk6ICRkaXNwbGF5OyB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBidXR0b24gc2l6ZSBzdHlsZXNcbi8vXG4vLyAkcGFkZGluZyAtIFVzZWQgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucyBEZWZhdWx0OiAkYnV0dG9uLW1lZCB8fD0gcmVtLWNhbGMoMTIpXG4vLyAkZnVsbC13aWR0aCAtIFdlIGNhbiBzZXQgJGZ1bGwtd2lkdGg6dHJ1ZSB0byByZW1vdmUgc2lkZSBwYWRkaW5nIGV4dGVuZCB3aWR0aCAtIERlZmF1bHQ6IGZhbHNlXG5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLW1lZCwgJGZ1bGwtd2lkdGg6ZmFsc2UpIHtcblxuICAvLyBXZSBjb250cm9sIHdoaWNoIHBhZGRpbmcgc3R5bGVzIGNvbWUgdGhyb3VnaCxcbiAgLy8gdGhlc2UgY2FuIGJlIHR1cm5lZCBvZmYgYnkgc2V0dGluZyAkcGFkZGluZzpmYWxzZVxuICBAaWYgJHBhZGRpbmcge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nICgkcGFkZGluZyAqIDIpICgkcGFkZGluZyArIHJlbS1jYWxjKDEpKSAoJHBhZGRpbmcgKiAyKTtcbiAgICAvLyBXZSBjb250cm9sIHRoZSBmb250LXNpemUgYmFzZWQgb24gbWl4aW4gaW5wdXQuXG4gICAgQGlmICAgICAgJHBhZGRpbmcgPT0gJGJ1dHRvbi1tZWQgeyBmb250LXNpemU6ICRidXR0b24tZm9udC1tZWQ7IH1cbiAgICBAZWxzZSBpZiAkcGFkZGluZyA9PSAkYnV0dG9uLXRueSB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXRueTsgfVxuICAgIEBlbHNlIGlmICRwYWRkaW5nID09ICRidXR0b24tc21sIHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc21sOyB9XG4gICAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gJGJ1dHRvbi1scmcgeyBmb250LXNpemU6ICRidXR0b24tZm9udC1scmc7IH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBzZXQgJGZ1bGwtd2lkdGg6dHJ1ZSB0byByZW1vdmUgc2lkZSBwYWRkaW5nIGV4dGVuZCB3aWR0aC5cbiAgQGlmICRmdWxsLXdpZHRoIHtcbiAgICAvLyBXZSBzdGlsbCBuZWVkIHRvIGNoZWNrIGlmICRwYWRkaW5nIGlzIHNldC5cbiAgICBAaWYgJHBhZGRpbmcge1xuICAgICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nICsgcmVtLWNhbGMoMSk7XG4gICAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gICAgfSBAZWxzZSBpZiAkcGFkZGluZyA9PSBmYWxzZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgICAgcGFkZGluZy10b3A6MDtcbiAgICB9XG4gICAgcGFkZGluZy1sZWZ0OiAkYnV0dG9uLW1lZDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYnV0dG9uLW1lZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyB3ZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIGJ1dHRvbiBob3ZlciBhbmQgYm9yZGVyIGNvbG9yc1xuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgYnV0dG9uIGNvbG9yIHN0eWxlc1xuLy9cbi8vICRiZyAtIEJhY2tncm91bmQgY29sb3IuIFdlIGNhbiBzZXQgJGJnOmZhbHNlIGZvciBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQuIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yLlxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBidXR0b24gcmFkaXVzIHdoaWNoIGlzICRidXR0b24tcmFkaXVzIHx8IGV4cGxpY2l0bHkgc2V0IHJhZGl1cyBhbW91bnQgaW4gcHggKGV4LiAkcmFkaXVzOjEwcHgpLiBEZWZhdWx0OiBmYWxzZVxuLy8gJGRpc2FibGVkIC0gV2UgY2FuIHNldCAkZGlzYWJsZWQ6dHJ1ZSB0byBjcmVhdGUgYSBkaXNhYmxlZCB0cmFuc3BhcmVudCBidXR0b24uIERlZmF1bHQ6IGZhbHNlXG4vLyAkYmctaG92ZXIgLSBCdXR0b24gSG92ZXIgQmFja2dyb3VuZCBDb2xvci4gRGVmYXVsdDogJGJ1dHRvbi1iZy1ob3ZlclxuLy8gJGJvcmRlci1jb2xvciAtIEJ1dHRvbiBCb3JkZXIgQ29sb3IuIERlZmF1bHQ6ICRidXR0b24tYm9yZGVyLWNvbG9yXG5AbWl4aW4gYnV0dG9uLXN0eWxlKCRiZzokYnV0dG9uLWJnLWNvbG9yLCAkcmFkaXVzOmZhbHNlLCAkZGlzYWJsZWQ6ZmFsc2UsICRiZy1ob3ZlcjpudWxsLCAkYm9yZGVyLWNvbG9yOm51bGwpIHtcblxuICAvLyBXZSBjb250cm9sIHdoaWNoIGJhY2tncm91bmQgc3R5bGVzIGFyZSB1c2VkLFxuICAvLyB0aGVzZSBjYW4gYmUgcmVtb3ZlZCBieSBzZXR0aW5nICRiZzpmYWxzZVxuICBAaWYgJGJnIHtcblxuICAgIEBpZiAkYmctaG92ZXIgPT0gbnVsbCB7XG4gICAgICAkYmctaG92ZXI6IGlmKCRiZyA9PSAkYnV0dG9uLWJnLWNvbG9yLCAkYnV0dG9uLWJnLWhvdmVyLCBzY2FsZS1jb2xvcigkYmcsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSk7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXItY29sb3IgPT0gbnVsbCB7XG4gICAgICAkYm9yZGVyLWNvbG9yOiBpZigkYmcgPT0gJGJ1dHRvbi1iZy1jb2xvciwgJGJ1dHRvbi1ib3JkZXItY29sb3IsIHNjYWxlLWNvbG9yKCRiZywgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpKTtcbiAgICB9XG5cbiAgICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuICAgICRiZy1ob3Zlci1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmctaG92ZXIpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaG92ZXI7IH1cblxuICAgIC8vIFdlIGNvbnRyb2wgdGhlIHRleHQgY29sb3IgZm9yIHlvdSBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgICBjb2xvcjogaWYoJGJnLWxpZ2h0bmVzcyA+IDcwJSwgJGJ1dHRvbi1mb250LWNvbG9yLWFsdCwgJGJ1dHRvbi1mb250LWNvbG9yKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogaWYoJGJnLWhvdmVyLWxpZ2h0bmVzcyA+IDcwJSwgJGJ1dHRvbi1mb250LWNvbG9yLWFsdCwgJGJ1dHRvbi1mb250LWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi5cbiAgQGlmICRkaXNhYmxlZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6ICRidXR0b24tZGlzYWJsZWQtY3Vyc29yO1xuICAgIG9wYWNpdHk6ICRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7IH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBjb250cm9sIGhvdyBtdWNoIGJ1dHRvbiByYWRpdXMgaXMgdXNlZC5cbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkYnV0dG9uLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIHF1aWNrbHkgY3JlYXRlIGJ1dHRvbnMgd2l0aCBhIHNpbmdsZSBtaXhpbi4gQXMgQGphcmVkaGFyZHkgcHV0cyBpdCwgXCJ0aGUga2l0Y2hlbiBzaW5rIG1peGluXCJcbi8vXG4vLyAkcGFkZGluZyAtIFVzZWQgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucyBEZWZhdWx0OiAkYnV0dG9uLW1lZCB8fD0gcmVtLWNhbGMoMTIpXG4vLyAkYmcgLSBQcmltYXJ5IGNvbG9yIHNldCBpbiBzZXR0aW5ncyBmaWxlLiBEZWZhdWx0OiAkYnV0dG9uLWJnLlxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBidXR0b24gcmFkaXVzIHdoaWNoIGlzICRnbG9iYWwtcmFkaXVzIHx8IGV4cGxpY2l0bHkgc2V0IHJhZGl1cyBhbW91bnQgaW4gcHggKGV4LiAkcmFkaXVzOjEwcHgpLiBEZWZhdWx0OmZhbHNlLlxuLy8gJGZ1bGwtd2lkdGggLSBXZSBjYW4gc2V0ICRmdWxsLXdpZHRoOnRydWUgdG8gcmVtb3ZlIHNpZGUgcGFkZGluZyBleHRlbmQgd2lkdGguIERlZmF1bHQ6ZmFsc2UuXG4vLyAkZGlzYWJsZWQgLSBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi4gRGVmYXVsdDpmYWxzZS5cbi8vICRpcy1wcmVmaXggLSBOb3QgdXNlZD8gRGVmYXVsdDpmYWxzZS5cbi8vICRiZy1ob3ZlciAtIEJ1dHRvbiBIb3ZlciBDb2xvciAtIERlZmF1bHQgbnVsbCAtIHNlZSBidXR0b24tc3R5bGUgbWl4aW5cbi8vICRib3JkZXItY29sb3IgLSBCdXR0b24gQm9yZGVyIENvbG9yIC0gRGVmYXVsdCBudWxsIC0gc2VlIGJ1dHRvbi1zdHlsZSBtaXhpblxuLy8gJHRyYW5zaXRpb24gLSBXZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIHRoZSBiYWNrZ3JvdW5kLWNvbG9yIHRyYW5zaXRpb24gcHJvcGVydHkgLSBEZWZhdWx0OnRydWUuXG5AbWl4aW4gYnV0dG9uKCRwYWRkaW5nOiRidXR0b24tbWVkLCAkYmc6JGJ1dHRvbi1iZy1jb2xvciwgJHJhZGl1czpmYWxzZSwgJGZ1bGwtd2lkdGg6ZmFsc2UsICRkaXNhYmxlZDpmYWxzZSwgJGlzLXByZWZpeDpmYWxzZSwgJGJnLWhvdmVyOm51bGwsICRib3JkZXItY29sb3I6bnVsbCwgJHRyYW5zaXRpb246IHRydWUpIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLCAkZnVsbC13aWR0aCk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmcsICRyYWRpdXMsICRkaXNhYmxlZCwgJGJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yKTtcblxuICBAaWYgJHRyYW5zaXRpb24ge1xuICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xuICB9XG59XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJ1dHRvblwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzIHtcblxuICAgIC8vIERlZmF1bHQgc3R5bGVzIGFwcGxpZWQgb3V0c2lkZSBvZiBtZWRpYSBxdWVyeVxuICAgIGJ1dHRvbiwgLmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlO1xuXG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktYnV0dG9uLWJnLWNvbG9yLCAkYmctaG92ZXI6JHNlY29uZGFyeS1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHNlY29uZGFyeS1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi5zdWNjZXNzICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWJ1dHRvbi1iZy1jb2xvciwgJGJnLWhvdmVyOiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi5hbGVydCAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1idXR0b24tYmctY29sb3IsICRiZy1ob3ZlcjokYWxlcnQtYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRhbGVydC1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiR3YXJuaW5nLWJ1dHRvbi1iZy1jb2xvciwgJGJnLWhvdmVyOiR3YXJuaW5nLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokd2FybmluZy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi5pbmZvICAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRpbmZvLWJ1dHRvbi1iZy1jb2xvciwgJGJnLWhvdmVyOiRpbmZvLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokaW5mby1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuXG4gICAgICAmLmxhcmdlICB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tbHJnKTsgfVxuICAgICAgJi5zbWFsbCAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLXNtbCk7IH1cbiAgICAgICYudGlueSAgIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi10bnkpOyB9XG4gICAgICAmLmV4cGFuZCB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRmdWxsLXdpZHRoOnRydWUpOyB9XG5cbiAgICAgICYubGVmdC1hbGlnbiAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB0ZXh0LWluZGVudDogcmVtLWNhbGMoMTIpOyB9XG4gICAgICAmLnJpZ2h0LWFsaWduIHsgdGV4dC1hbGlnbjogcmlnaHQ7IHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEyKTsgfVxuXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6ZmFsc2UsICRyYWRpdXM6dHJ1ZSk7IH1cbiAgICAgICYucm91bmQgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzpmYWxzZSwgJHJhZGl1czokYnV0dG9uLXJvdW5kKTsgfVxuXG4gICAgICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGJ1dHRvbi1iZy1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3ZlcjokYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRidXR0b24tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktYnV0dG9uLWJnLWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi5zdWNjZXNzIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc3VjY2Vzcy1idXR0b24tYmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRzdWNjZXNzLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1idXR0b24tYmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi53YXJuaW5nIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokd2FybmluZy1idXR0b24tYmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAgICYuaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tYnV0dG9uLWJnLWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRpbmZvLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokaW5mby1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vZmlyZWZveCAycHggZml4XG4gICAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtib3JkZXI6MDsgcGFkZGluZzowO31cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIGJ1dHRvbiwgLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlKCRzdHlsZTpmYWxzZSwgJGRpc3BsYXk6aW5saW5lLWJsb2NrKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6ZmFsc2UsICRmdWxsLXdpZHRoOmZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuJGJ1dHRvbi10bnk6IHJlbS1jYWxjKDEwKTtcbiRidXR0b24tc21sOiByZW0tY2FsYygxNCk7XG4kYnV0dG9uLW1lZDogcmVtLWNhbGMoMTYpO1xuJGJ1dHRvbi1scmc6IHJlbS1jYWxjKDE4KTtcblxuJGJ1dHRvbi1kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4kYnV0dG9uLW1hcmdpbi1ib3R0b206IDA7IC8vJHNpdGUtcDtcblxuJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDA7XG4kYnV0dG9uLWJvcmRlci1zdHlsZTogc29saWQ7XG4kYnV0dG9uLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuJGJ1dHRvbi1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuJGJ1dHRvbi1yb3VuZDogJGdsb2JhbC1yb3VuZGVkO1xuXG4kYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogLTIwJTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIHRleHQgc3R5bGVzLlxuLy8gJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkYnV0dG9uLWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRidXR0b24tZm9udC1jb2xvci1hbHQ6ICRvaWw7XG4vLyAkYnV0dG9uLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXI7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZhcmlvdXMgaG92ZXIgZWZmZWN0cy5cbi8vICRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAtMjAlO1xuXG4vLyAkYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkYnV0dG9uLWJvcmRlci1jb2xvcjogJGJ1dHRvbi1iZy1ob3Zlcjtcbi8vICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyO1xuLy8gJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcjogJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyO1xuLy8gJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcjogJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjtcbi8vICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHdhcm5pbmctY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3I6ICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3Zlcjtcbi8vICRpbmZvLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGluZm8tY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRpbmZvLWJ1dHRvbi1ib3JkZXItY29sb3I6ICRpbmZvLWJ1dHRvbi1iZy1ob3ZlcjtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBidXR0b25zLlxuLy8gJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAuNztcbi8vICRidXR0b24tZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG5cbi8vIDA2LiBCdXR0b24gR3JvdXBzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gU2V0cyB0aGUgbWFyZ2luIGZvciB0aGUgcmlnaHQgc2lkZSBieSBkZWZhdWx0LCBhbmQgdGhlIGxlZnQgbWFyZ2luIGlmIHJpZ2h0LXRvLWxlZnQgZGlyZWN0aW9uIGlzIHVzZWRcbi8vICRidXR0b24tYmFyLW1hcmdpbi1vcHBvc2l0ZTogcmVtLWNhbGMoMTApO1xuLy8gJGJ1dHRvbi1ncm91cC1ib3JkZXItd2lkdGg6IDFweDsiLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnYnV0dG9ucyc7XG5cbi8vXG4vLyBCdXR0b24gR3JvdXAgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBTZXRzIHRoZSBtYXJnaW4gZm9yIHRoZSByaWdodCBzaWRlIGJ5IGRlZmF1bHQsIGFuZCB0aGUgbGVmdCBtYXJnaW4gaWYgcmlnaHQtdG8tbGVmdCBkaXJlY3Rpb24gaXMgdXNlZFxuJGJ1dHRvbi1iYXItbWFyZ2luLW9wcG9zaXRlOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWdyb3VwLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gQnV0dG9uIEdyb3VwIE1peGluc1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWNvbnRhaW5lcigkc3R5bGVzOnRydWUsICRmbG9hdDpmYWxzZSkge1xuICBAaWYgJHN0eWxlcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgfVxuICBAaWYgJGZsb2F0IHtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1mbG9hdH07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRidXR0b24tYmFyLW1hcmdpbi1vcHBvc2l0ZTtcbiAgICAmIGRpdiB7IG92ZXJmbG93OiBoaWRkZW47IH1cbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHN0eWxlcyBmb3IgYnV0dG9uIGdyb3Vwc1xuQG1peGluIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOmZhbHNlLCAkZXZlbjpmYWxzZSwgJGZsb2F0OmZhbHNlLCAkb3JpZW50YXRpb246aG9yaXpvbnRhbCkge1xuXG4gID4gYnV0dG9uLCAuYnV0dG9uIHtcbiAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH06ICRidXR0b24tZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBidXR0b24sIC5idXR0b24ge1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIH1cbiAgfVxuXG4gICRidXR0b24tZ3JvdXAtZGlzcGxheTogbGlzdC1pdGVtO1xuICAkYnV0dG9uLWdyb3VwLW1hcmdpbjogMDtcblxuICAvLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBmbG93LCBvciByZW1vdmUgdGhvc2Ugc3R5bGVzIGNvbXBsZXRlbHkuXG4gIEBpZiAkZmxvYXQge1xuICAgICRidXR0b24tZ3JvdXAtZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICRidXR0b24tZ3JvdXAtbWFyZ2luOiAwO1xuICAgIGZsb2F0OiAkZmxvYXQ7XG4gICAgLy8gTWFrZSBzdXJlIHRoZSBmaXJzdCBjaGlsZCBkb2Vzbid0IGdldCB0aGUgbmVnYXRpdmUgbWFyZ2luLlxuICAgICY6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJGJ1dHRvbi1ncm91cC1kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgJGJ1dHRvbi1ncm91cC1tYXJnaW46IDAgLTJweDtcbiAgfVxuXG4gIEBpZiAkb3JpZW50YXRpb24gPT0gdmVydGljYWwge1xuICAgICRidXR0b24tZ3JvdXAtZGlzcGxheTogYmxvY2s7XG4gICAgJGJ1dHRvbi1ncm91cC1tYXJnaW46IDA7XG4gICAgPiBidXR0b24sIC5idXR0b24ge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KTtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcDogJGJ1dHRvbi1ncm91cC1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjowO1xuICAgIH1cbiAgICA+IGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkaXNwbGF5OiAkYnV0dG9uLWdyb3VwLWRpc3BsYXk7XG4gIG1hcmdpbjogJGJ1dHRvbi1ncm91cC1tYXJnaW47XG5cblxuICAvLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsZWZ0IGFuZCByaWdodCByYWRpdXMgb24gZmlyc3QvbGFzdCBidXR0b25zIGluIHRoZSBncm91cC5cbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7XG4gICAgJixcbiAgICA+IGEsXG4gICAgPiBidXR0b24sXG4gICAgPiAuYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyB9XG4gICAgJjpmaXJzdC1jaGlsZCxcbiAgICAmOmZpcnN0LWNoaWxkID4gYSxcbiAgICAmOmZpcnN0LWNoaWxkID4gYnV0dG9uLFxuICAgICY6Zmlyc3QtY2hpbGQgPiAuYnV0dG9uIHtcbiAgICAgIEBpZiAkb3JpZW50YXRpb24gPT0gdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBzaWRlLXJhZGl1cyh0b3AsICRidXR0b24tcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkLFxuICAgICY6bGFzdC1jaGlsZCA+IGEsXG4gICAgJjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgICY6bGFzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgQGlmICRvcmllbnRhdGlvbiA9PSB2ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIHNpZGUtcmFkaXVzKGJvdHRvbSwgJGJ1dHRvbi1yYWRpdXMpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyYWRpdXMge1xuICAgICYsXG4gICAgPiBhLFxuICAgID4gYnV0dG9uLFxuICAgID4gLmJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgfVxuICAgICY6Zmlyc3QtY2hpbGQsXG4gICAgJjpmaXJzdC1jaGlsZCA+IGEsXG4gICAgJjpmaXJzdC1jaGlsZCA+IGJ1dHRvbixcbiAgICAmOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICBAaWYgJG9yaWVudGF0aW9uID09IHZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgc2lkZS1yYWRpdXModG9wLCAkcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRyYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQsXG4gICAgJjpsYXN0LWNoaWxkID4gYSxcbiAgICAmOmxhc3QtY2hpbGQgPiBidXR0b24sXG4gICAgJjpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICBAaWYgJG9yaWVudGF0aW9uID09IHZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgc2lkZS1yYWRpdXMoYm90dG9tLCAkcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJHJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gV2UgdXNlIHRoaXMgdG8gbWFrZSB0aGUgYnV0dG9ucyBldmVuIHdpZHRoIGFjcm9zcyB0aGVpciBjb250YWluZXJcbiAgQGlmICRldmVuIHtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoMTAwLyRldmVuKSAvIDEwMCk7XG4gICAgYnV0dG9uLCAuYnV0dG9uIHsgd2lkdGg6IDEwMCU7IH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYnV0dG9uLWdyb3VwXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXMge1xuICAgIC5idXR0b24tZ3JvdXAgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtY29udGFpbmVyO1xuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDgge1xuICAgICAgICAmLmV2ZW4tI3skaX0gbGkgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJGV2ZW46JGksICRmbG9hdDpudWxsKTsgfVxuICAgICAgfVxuXG4gICAgICA+IGxpIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKCk7IH1cblxuICAgICAgJi5zdGFjayB7XG4gICAgICAgID4gbGkgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJG9yaWVudGF0aW9uOnZlcnRpY2FsKTsgZmxvYXQ6IG5vbmU7IH1cbiAgICAgIH1cblxuICAgICAgJi5zdGFjay1mb3Itc21hbGwge1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJG9yaWVudGF0aW9uOmhvcml6b250YWwpO1xuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJG9yaWVudGF0aW9uOnZlcnRpY2FsKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnJhZGl1cyA+ICogeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJHJhZGl1czokYnV0dG9uLXJhZGl1cywgJGZsb2F0Om51bGwpOyB9XG4gICAgICAmLnJhZGl1cy5zdGFjayA+ICogeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJHJhZGl1czokYnV0dG9uLXJhZGl1cywgJGZsb2F0Om51bGwsICRvcmllbnRhdGlvbjp2ZXJ0aWNhbCk7IH1cbiAgICAgICYucmFkaXVzLnN0YWNrLWZvci1zbWFsbCA+ICoge1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKCRyYWRpdXM6JGJ1dHRvbi1yYWRpdXMsICRvcmllbnRhdGlvbjpob3Jpem9udGFsKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOiRidXR0b24tcmFkaXVzLCAkb3JpZW50YXRpb246dmVydGljYWwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucm91bmQgPiAqIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKCRyYWRpdXM6JGJ1dHRvbi1yb3VuZCwgJGZsb2F0Om51bGwpOyB9XG4gICAgICAmLnJvdW5kLnN0YWNrID4gKiB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOiRidXR0b24tbWVkLCAkZmxvYXQ6bnVsbCwgJG9yaWVudGF0aW9uOnZlcnRpY2FsKTsgfVxuICAgICAgJi5yb3VuZC5zdGFjay1mb3Itc21hbGwgPiAqIHtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOiRidXR0b24tcm91bmQsICRvcmllbnRhdGlvbjpob3Jpem9udGFsKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOiRidXR0b24tbWVkLCAkb3JpZW50YXRpb246dmVydGljYWwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1iYXIge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAuYnV0dG9uLWdyb3VwIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWNvbnRhaW5lcigkc3R5bGVzOmZhbHNlLCAkZmxvYXQ6dHJ1ZSk7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1jbGVhcmluZy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIGJhY2tncm91bmQgY29sb3JzIGZvciBwYXJ0cyBvZiBDbGVhcmluZy5cbiRjbGVhcmluZy1iZzogJG9pbCAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXB0aW9uLWJnOiAkY2xlYXJpbmctYmcgIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2Fyb3VzZWwtYmc6IHJnYmEoNTEsNTEsNTEsMC44KSAhZGVmYXVsdDtcbiRjbGVhcmluZy1pbWctYmc6ICRjbGVhcmluZy1iZyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25cbiRjbGVhcmluZy1jbG9zZS1jb2xvcjogJGlyb24gIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2xvc2Utc2l6ZTogMzBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBhcnJvd3NcbiRjbGVhcmluZy1hcnJvdy1zaXplOiAxMnB4ICFkZWZhdWx0O1xuJGNsZWFyaW5nLWFycm93LWNvbG9yOiAkY2xlYXJpbmctY2xvc2UtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBjYXB0aW9uc1xuJGNsZWFyaW5nLWNhcHRpb24tZm9udC1jb2xvcjogJGlyb24gIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2FwdGlvbi1mb250LXNpemU6IC44NzVlbSAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXB0aW9uLXBhZGRpbmc6IDEwcHggMzBweCAyMHB4ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gbWFrZSB0aGUgaW1hZ2UgYW5kIGNhcm91c2VsIGhlaWdodCBhbmQgc3R5bGVcbiRjbGVhcmluZy1hY3RpdmUtaW1nLWhlaWdodDogODUlICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcm91c2VsLWhlaWdodDogMTIwcHggIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2Fyb3VzZWwtdGh1bWItd2lkdGg6IDEyMHB4ICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLWFjdGl2ZS1ib3JkZXI6IDFweCBzb2xpZCByZ2IoMjU1LDI1NSwyNTUpICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwiY2xlYXJpbmdcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1jbGVhcmluZy1jbGFzc2VzIHtcbiAgICAvLyBXZSBkZWNpZGVkIHRvIG5vdCBjcmVhdGUgYSBtaXhpbiBmb3IgQ2xlYXJpbmcgYmVjYXVzZSBpdCByZWxpZXNcbiAgICAvLyBvbiBwcmVkZWZpbmVkIGNsYXNzZXMgYW5kIHN0cnVjdHVyZSB0byB3b3JrIHByb3Blcmx5LlxuICAgIC8vIFRoZSB2YXJpYWJsZXMgYWJvdmUgc2hvdWxkIGdpdmUgZW5vdWdoIGNvbnRyb2wuXG5cbiAgICAvKiBDbGVhcmluZyBTdHlsZXMgKi9cbiAgICAuY2xlYXJpbmctdGh1bWJzLCAje2RhdGEoJ2NsZWFyaW5nJyl9IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgIH1cblxuICAgICAgJltjbGFzcyo9XCJibG9jay1ncmlkLVwiXSBsaSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jbGVhcmluZy1ibGFja291dCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xlYXJpbmctYmc7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDk5ODtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuXG4gICAgICAuY2xlYXJpbmctY2xvc2UgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIH1cblxuICAgIC5jbGVhcmluZy1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDk5ODtcbiAgICB9XG5cbiAgICAuY2xlYXJpbmctdG91Y2gtbGFiZWwge1xuICAgICAgY29sb3I6ICRiYXNlO1xuICAgICAgZm9udC1zaXplOiAuNmVtO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgfVxuXG4gICAgLnZpc2libGUtaW1nIHtcbiAgICAgIGhlaWdodDogOTUlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBAaWYgJGRlZmF1bHQtZmxvYXQgPT0gbGVmdCB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgIH07XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctY2FwdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xlYXJpbmctY2FwdGlvbi1iZztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAkY2xlYXJpbmctY2FwdGlvbi1mb250LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkY2xlYXJpbmctY2FwdGlvbi1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6ICRjbGVhcmluZy1jYXB0aW9uLXBhZGRpbmc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIH1cblxuICAgIC5jbGVhcmluZy1jbG9zZSB7XG4gICAgICBjb2xvcjogJGNsZWFyaW5nLWNsb3NlLWNvbG9yO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogJGNsZWFyaW5nLWNsb3NlLXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHotaW5kZXg6IDk5OTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMgeyBjb2xvcjogJGlyb247IH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIgeyBoZWlnaHQ6IDEwMCU7XG4gICAgICAuY2Fyb3VzZWwgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG5cbiAgICAvLyBJZiB5b3Ugd2FudCB0byBzaG93IGEgbGlnaHRib3gsIGJ1dCBvbmx5IGhhdmUgYSBzaW5nbGUgaW1hZ2UgY29tZSB0aHJvdWdoIGFzIHRoZSB0aHVtYm5haWxcbiAgICAuY2xlYXJpbmctZmVhdHVyZSBsaSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgJi5jbGVhcmluZy1mZWF0dXJlZC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMYXJnZSBzY3JlZW4gb3ZlcnJpZGVzXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldixcbiAgICAgIC5jbGVhcmluZy1tYWluLW5leHQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXI6IHNvbGlkICRjbGVhcmluZy1hcnJvdy1zaXplO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgJjpob3ZlciB7IG9wYWNpdHk6IC44OyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jbGVhcmluZy1tYWluLXByZXYge1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNXB4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tY29sb3I6ICRjbGVhcmluZy1hcnJvdy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNsZWFyaW5nLW1haW4tbmV4dCB7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6ICRjbGVhcmluZy1hcnJvdy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2xlYXJpbmctbWFpbi1wcmV2LmRpc2FibGVkLFxuICAgICAgLmNsZWFyaW5nLW1haW4tbmV4dC5kaXNhYmxlZCB7IG9wYWNpdHk6IC4zOyB9XG5cbiAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciB7XG5cbiAgICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2xlYXJpbmctY2Fyb3VzZWwtYmc7XG4gICAgICAgICAgaGVpZ2h0OiAkY2xlYXJpbmctY2Fyb3VzZWwtaGVpZ2h0O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB3aWR0aDogJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoO1xuXG4gICAgICAgICAgICAgICYuZml4LWhlaWdodCB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhLnRoIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi52aXNpYmxlIHsgb3BhY2l0eTogMTsgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudmlzaWJsZS1pbWcge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjbGVhcmluZy1pbWctYmc7XG4gICAgICAgICAgaGVpZ2h0OiAkY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2xlYXJpbmctY2xvc2Uge1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1kcm9wZG93bi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyBoZWlnaHQgYW5kIHdpZHRoIHN0eWxlcy5cbiRmLWRyb3Bkb3duLW1heC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1oZWlnaHQ6IGF1dG8gIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1tYXgtaGVpZ2h0OiBub25lICFkZWZhdWx0O1xuXG4vLyBVc2VkIGZvciBib3R0b20gcG9zaXRpb25cbiRmLWRyb3Bkb3duLW1hcmdpbi10b3A6IDJweCAhZGVmYXVsdDtcblxuLy8gVXNlZCBmb3IgcmlnaHQgcG9zaXRpb25cbiRmLWRyb3Bkb3duLW1hcmdpbi1sZWZ0OiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wICFkZWZhdWx0O1xuXG4vLyBVc2VkIGZvciBsZWZ0IHBvc2l0aW9uXG4kZi1kcm9wZG93bi1tYXJnaW4tcmlnaHQ6ICRmLWRyb3Bkb3duLW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbi8vIFVzZWQgZm9yIHRvcCBwb3NpdGlvblxuJGYtZHJvcGRvd24tbWFyZ2luLWJvdHRvbTogJGYtZHJvcGRvd24tbWFyZ2luLXRvcCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYmFja2dyb3VuZCBjb2xvclxuJGYtZHJvcGRvd24tYmc6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBib3JkZXIgc3R5bGVzIGZvciBkcm9wZG93bnMuXG4kZi1kcm9wZG93bi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgdHJpYW5nbGUgcGlwLlxuJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0OiAxMHB4ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBzdHlsZXMgZm9yIHRoZSBsaXN0IGVsZW1lbnRzLlxuJGYtZHJvcGRvd24tbGlzdC1zdHlsZTogbm9uZSAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWZvbnQtY29sb3I6ICRjaGFyY29hbCAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbGlzdC1wYWRkaW5nOiByZW0tY2FsYyg1LCAxMCkgIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbGlzdC1ob3Zlci1iZzogJHNtb2tlICFkZWZhdWx0O1xuJGRyb3Bkb3duLW1vYmlsZS1kZWZhdWx0LWZsb2F0OiAwICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGhhcyBjdXN0b20gY29udGVudC5cbiRmLWRyb3Bkb3duLWNvbnRlbnQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBEZWZhdWx0IHJhZGl1cyBmb3IgZHJvcGRvd24uXG4kZi1kcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cbi8vXG4vLyBOT1RFOiBNYWtlIGRlZmF1bHQgbWF4LXdpZHRoIGNoYW5nZSBiZXR3ZWVuIGxpc3QgYW5kIGNvbnRlbnQgdHlwZXMuIENhbiBhZGQgbW9yZSB3aWR0aCB3aXRoIGNsYXNzZXMsIG1heWJlIC5zbWFsbCwgLm1lZGl1bSwgLmxhcmdlLCBldGMuO1xuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIGRyb3Bkb3duIGNvbnRhaW5lciBlbGVtZW50LlxuLy8gJGNvbnRlbnQtbGlzdCAtIFNldHMgbGlzdC1zdHlsZS4gRGVmYXVsdDogbGlzdC4gT3B0aW9uczogW2xpc3QsIGNvbnRlbnRdXG4vLyAkdHJpYW5nbGUgLSBTZXRzIGlmIGRyb3Bkb3duIGhhcyB0cmlhbmdsZS4gRGVmYXVsdDp0cnVlLlxuLy8gJG1heC13aWR0aCAtIERlZmF1bHQ6ICRmLWRyb3Bkb3duLW1heC13aWR0aCB8fCAyMDBweC5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIoJGNvbnRlbnQ6bGlzdCwgJHRyaWFuZ2xlOnRydWUsICRtYXgtd2lkdGg6JGYtZHJvcGRvd24tbWF4LXdpZHRoKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIGxpc3Qtc3R5bGU6ICRmLWRyb3Bkb3duLWxpc3Qtc3R5bGU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICA+ICo6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG4gID4gKjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4gIEBpZiAkY29udGVudCA9PSBsaXN0IHtcbiAgICBiYWNrZ3JvdW5kOiAkZi1kcm9wZG93bi1iZztcbiAgICBib3JkZXI6ICRmLWRyb3Bkb3duLWJvcmRlci1zdHlsZSAkZi1kcm9wZG93bi1ib3JkZXItd2lkdGggJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGYtZHJvcGRvd24tZm9udC1zaXplO1xuICAgIGhlaWdodDogJGYtZHJvcGRvd24taGVpZ2h0O1xuICAgIG1heC1oZWlnaHQ6ICRmLWRyb3Bkb3duLW1heC1oZWlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogODk7XG4gIH1cbiAgQGVsc2UgaWYgJGNvbnRlbnQgPT0gY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJGYtZHJvcGRvd24tYmc7XG4gICAgYm9yZGVyOiAkZi1kcm9wZG93bi1ib3JkZXItc3R5bGUgJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgICBoZWlnaHQ6ICRmLWRyb3Bkb3duLWhlaWdodDtcbiAgICBtYXgtaGVpZ2h0OiAkZi1kcm9wZG93bi1tYXgtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRmLWRyb3Bkb3duLWNvbnRlbnQtcGFkZGluZztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiA4OTtcbiAgfVxuXG4gIEBpZiAkdHJpYW5nbGUgPT0gYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wO1xuXG4gICAgQGlmICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgIT0gMHB4IHtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSwgJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3IsIGJvdHRvbSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKTtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgICB6LWluZGV4OiA4OTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSArIDEsICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvciwgYm90dG9tKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0oKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxKSAqIDIpO1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQgLSAxO1xuICAgICAgICB6LWluZGV4OiA4ODtcbiAgICAgIH1cblxuICAgICAgJi5yaWdodDpiZWZvcmUge1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ7XG4gICAgICB9XG4gICAgICAmLnJpZ2h0OmFmdGVyIHtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0IC0gMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHRyaWFuZ2xlID09ICRkZWZhdWx0LWZsb2F0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGYtZHJvcGRvd24tbWFyZ2luLXJpZ2h0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUsICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yLCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMik7XG4gICAgICB6LWluZGV4OiA4OTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSArIDEsICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvciwgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0IC0gMTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKSAtIDI7XG4gICAgICB6LWluZGV4OiA4ODtcbiAgICB9XG5cbiAgfVxuXG4gIEBpZiAkdHJpYW5nbGUgPT0gJG9wcG9zaXRlLWRpcmVjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC0kZi1kcm9wZG93bi1tYXJnaW4tcmlnaHQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSwgJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3IsICN7JGRlZmF1bHQtZmxvYXR9KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xuICAgICAgei1pbmRleDogODk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsICN7JGRlZmF1bHQtZmxvYXR9KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQgLSAxO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMikgLSAyO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgICB6LWluZGV4OiA4ODtcbiAgICB9XG5cbiAgfVxuXG4gIEBpZiAkdHJpYW5nbGUgPT0gdG9wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJGYtZHJvcGRvd24tbWFyZ2luLWJvdHRvbTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplLCAkZi1kcm9wZG93bi10cmlhbmdsZS1jb2xvciwgdG9wKTtcbiAgICAgIGJvdHRvbTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgei1pbmRleDogODk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsIHRvcCk7XG4gICAgICBib3R0b206IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpIC0gMjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldCAtIDE7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgei1pbmRleDogODg7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJG1heC13aWR0aCB7IG1heC13aWR0aDogJG1heC13aWR0aDsgfVxuICBAZWxzZSB7IG1heC13aWR0aDogJGYtZHJvcGRvd24tbWF4LXdpZHRoOyB9XG5cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIGxpc3QgZWxlbWVudHMgb3IgY29udGVudCBpbnNpZGUgdGhlIGRyb3Bkb3duLlxuXG5AbWl4aW4gZHJvcGRvd24tc3R5bGUge1xuICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcbiAgZm9udC1zaXplOiAkZi1kcm9wZG93bi1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkZi1kcm9wZG93bi1saW5lLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkZi1kcm9wZG93bi1saXN0LWhvdmVyLWJnOyB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJGYtZHJvcGRvd24tbGlzdC1wYWRkaW5nO1xuICAgIGNvbG9yOiAkZi1kcm9wZG93bi1mb250LWNvbG9yO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJkcm9wZG93blwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWRyb3Bkb3duLWNsYXNzZXMge1xuXG4gICAgLyogRm91bmRhdGlvbiBEcm9wZG93bnMgKi9cbiAgICAuZi1kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIobGlzdCwgYm90dG9tKTtcblxuICAgICAgJi5kcm9wLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIobGlzdCwgI3skZGVmYXVsdC1mbG9hdH0pO1xuICAgICAgfVxuXG4gICAgICAmLmRyb3AtI3skZGVmYXVsdC1mbG9hdH0ge1xuICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIobGlzdCwgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSk7XG4gICAgICB9XG5cbiAgICAgICYuZHJvcC10b3Age1xuICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIobGlzdCwgdG9wKTtcbiAgICAgIH1cbiAgICAgIC8vIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgbGkgeyBAaW5jbHVkZSBkcm9wZG93bi1zdHlsZTsgfVxuXG4gICAgICAvLyBZb3UgY2FuIGFsc28gcHV0IGN1c3RvbSBjb250ZW50IGluIHRoZXNlIGRyb3Bkb3duc1xuICAgICAgJi5jb250ZW50IHsgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyKGNvbnRlbnQsICR0cmlhbmdsZTpmYWxzZSk7IH1cblxuICAgICAgLy8gUmFkaXVzIG9mIERyb3Bkb3duXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkZi1kcm9wZG93bi1yYWRpdXMpOyB9XG5cbiAgICAgIC8vIFNpemVzXG4gICAgICAmLnRpbnkgICAgeyBtYXgtd2lkdGg6IDIwMHB4OyB9XG4gICAgICAmLnNtYWxsICAgeyBtYXgtd2lkdGg6IDMwMHB4OyB9XG4gICAgICAmLm1lZGl1bSAgeyBtYXgtd2lkdGg6IDUwMHB4OyB9XG4gICAgICAmLmxhcmdlICAgeyBtYXgtd2lkdGg6IDgwMHB4OyB9XG4gICAgICAmLm1lZ2EgICAge1xuICAgICAgICB3aWR0aDoxMDAlIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O1xuXG4gICAgICAgICYub3BlbntcbiAgICAgICAgICBsZWZ0OjAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBjb2xvciBvZiB0aGUgcGlwIGluIGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1jb2xvci1hbHQ6ICRvaWwgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIHNpemUgb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXG4kYnV0dG9uLXBpcC10bnk6IHJlbS1jYWxjKDYpICFkZWZhdWx0O1xuJGJ1dHRvbi1waXAtc21sOiByZW0tY2FsYyg3KSAhZGVmYXVsdDtcbiRidXR0b24tcGlwLW1lZDogcmVtLWNhbGMoOSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXBpcC1scmc6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRpbnkgZHJvcGRvd24gYnV0dG9uc1xuJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXRueTogJGJ1dHRvbi1waXAtdG55ICogNyAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS10bnk6ICRidXR0b24tcGlwLXRueSAqIDMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtdG55OiAoLSRidXR0b24tcGlwLXRueSAvIDIpICsgcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBzbWFsbCBkcm9wZG93biBidXR0b25zXG4kZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA3ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXNtbDogJGJ1dHRvbi1waXAtc21sICogMyAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1zbWw6ICgtJGJ1dHRvbi1waXAtc21sIC8gMikgKyByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIG1lZGl1bSBkcm9wZG93biBidXR0b25zXG4kZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA2ICsgcmVtLWNhbGMoMykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLW1lZDogJGJ1dHRvbi1waXAtbWVkIC0gcmVtLWNhbGMoMykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDIuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1tZWQ6ICgtJGJ1dHRvbi1waXAtbWVkIC8gMikgKyByZW0tY2FsYygyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxhcmdlIGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGFkZGluZy1scmc6ICRidXR0b24tcGlwLWxyZyAqIDUgKyByZW0tY2FsYygzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbHJnOiAkYnV0dG9uLXBpcC1scmcgLSByZW0tY2FsYyg2KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLWxyZzogJGJ1dHRvbi1waXAtbHJnICogMi41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLWxyZzogKC0kYnV0dG9uLXBpcC1scmcgLyAyKSArIHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gRHJvcGRvd24gQnV0dG9uIE1peGluXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYnVpbGQgb2ZmIG9mIHRoZSBidXR0b24gbWl4aW4gYW5kIGFkZCBkcm9wZG93biBidXR0b24gc3R5bGVzXG4vL1xuLy8gJHBhZGRpbmcgLSBEZXRlcm1pbmVzIHRoZSBzaXplIG9mIGJ1dHRvbiB5b3UncmUgd29ya2luZyB3aXRoLiBEZWZhdWx0OiBtZWRpdW0uIE9wdGlvbnMgW3RpbnksIHNtYWxsLCBtZWRpdW0sIGxhcmdlXVxuLy8gJHBpcC1jb2xvciAtIENvbG9yIG9mIHRoZSBsaXR0bGUgdHJpYW5nbGUgdGhhdCBwb2ludHMgdG8gdGhlIGRyb3Bkb3duLiBEZWZhdWx0OiAkd2hpdGUuXG4vLyAkYmFzZS1zdHlsZSAtIEFkZCBpbiBiYXNlLXN0eWxlcy4gVGhpcyBjYW4gYmUgc2V0IHRvIGZhbHNlLiBEZWZhdWx0OnRydWVcblxuQG1peGluIGRyb3Bkb3duLWJ1dHRvbigkcGFkZGluZzptZWRpdW0sICRwaXAtY29sb3I6JGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3IsICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICAvLyBXZSBhZGQgaW4gYmFzZSBzdHlsZXMsIGJ1dCB0aGV5IGNhbiBiZSBuZWdhdGVkIGJ5IHNldHRpbmcgdG8gJ2ZhbHNlJy5cbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBUaGlzIGNyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciB0aGUgdHJpYW5nbGUgcGlwXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tYnV0dG9uLXBpcC1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHdlJ3JlIGRlYWxpbmcgd2l0aCB0aW55IGJ1dHRvbnMsIHVzZSB0aGVzZSBzdHlsZXNcbiAgQGlmICRwYWRkaW5nID09IHRpbnkge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXRueTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS10bnk7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS10bnk7XG4gICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtdG55O1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHdlJ3JlIGRlYWxpbmcgd2l0aCBzbWFsbCBidXR0b25zLCB1c2UgdGhlc2Ugc3R5bGVzXG4gIEBpZiAkcGFkZGluZyA9PSBzbWFsbCB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctc21sO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1zbWw7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1zbWw7XG4gICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3Atc21sO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHdlJ3JlIGRlYWxpbmcgd2l0aCBkZWZhdWx0IChtZWRpdW0pIGJ1dHRvbnMsIHVzZSB0aGVzZSBzdHlsZXNcbiAgQGlmICRwYWRkaW5nID09IG1lZGl1bSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbWVkO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1tZWQ7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1tZWQ7XG4gICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtbWVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHdlJ3JlIGRlYWxpbmcgd2l0aCBsYXJnZSBidXR0b25zLCB1c2UgdGhlc2Ugc3R5bGVzXG4gIEBpZiAkcGFkZGluZyA9PSBsYXJnZSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbHJnO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1scmc7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1scmc7XG4gICAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtbHJnO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBjb250cm9sIHRoZSBwaXAgY29sb3IuIFdlIGRpZG4ndCB1c2UgbG9naWMgaW4gdGhpcyBjYXNlLCBqdXN0IHNldCBpdCBhbmQgZm9yZ2V0IGl0LlxuICBAaWYgJHBpcC1jb2xvciB7XG4gICAgJjo6YWZ0ZXIgeyBib3JkZXItY29sb3I6ICRwaXAtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiZHJvcGRvd24tYnV0dG9uXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXMge1xuICAgIC5kcm9wZG93bi5idXR0b24sIGJ1dHRvbi5kcm9wZG93biB7IEBpbmNsdWRlIGRyb3Bkb3duLWJ1dHRvbjtcbiAgICAgICYudGlueSB7IEBpbmNsdWRlIGRyb3Bkb3duLWJ1dHRvbih0aW55LCAkYmFzZS1zdHlsZTpmYWxzZSk7IH1cbiAgICAgICYuc21hbGwgeyBAaW5jbHVkZSBkcm9wZG93bi1idXR0b24oc21hbGwsICRiYXNlLXN0eWxlOmZhbHNlKTsgfVxuICAgICAgJi5sYXJnZSB7IEBpbmNsdWRlIGRyb3Bkb3duLWJ1dHRvbihsYXJnZSwgJGJhc2Utc3R5bGU6ZmFsc2UpOyB9XG4gICAgICAmLnNlY29uZGFyeTphZnRlciB7IGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3ItYWx0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2aWRlbyBjb250YWluZXIgcGFkZGluZyBhbmQgbWFyZ2luc1xuJGZsZXgtdmlkZW8tcGFkZGluZy10b3A6IHJlbS1jYWxjKDI1KSAhZGVmYXVsdDtcbiRmbGV4LXZpZGVvLXBhZGRpbmctYm90dG9tOiA2Ny41JSAhZGVmYXVsdDtcbiRmbGV4LXZpZGVvLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB3aWRlc2NyZWVuIGJvdHRvbSBwYWRkaW5nXG4kZmxleC12aWRlby13aWRlc2NyZWVuLXBhZGRpbmctYm90dG9tOiA1Ni4zNCUgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuXG5AbWl4aW4gZmxleC12aWRlby1jb250YWluZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRmbGV4LXZpZGVvLW1hcmdpbi1ib3R0b207XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiAkZmxleC12aWRlby1wYWRkaW5nLWJvdHRvbTtcbiAgcGFkZGluZy10b3A6ICRmbGV4LXZpZGVvLXBhZGRpbmctdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi53aWRlc2NyZWVuIHsgcGFkZGluZy1ib3R0b206ICRmbGV4LXZpZGVvLXdpZGVzY3JlZW4tcGFkZGluZy1ib3R0b207IH1cbiAgJi52aW1lbyB7IHBhZGRpbmctdG9wOiAwOyB9XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImZsZXgtdmlkZW9cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzIHtcbiAgICAuZmxleC12aWRlbyB7IEBpbmNsdWRlIGZsZXgtdmlkZW8tY29udGFpbmVyOyB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdidXR0b25zJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhc2UgZm9yIGxvdHMgb2YgZm9ybSBzcGFjaW5nIGFuZCBwb3NpdGlvbmluZyBzdHlsZXNcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHMgaW4gZGlmZmVyZW50IHdheXNcbiRmb3JtLWxhYmVsLXBvaW50ZXI6IHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRibGFjaywgJGxpZ2h0bmVzczogMzAlKSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWJvdHRvbS1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFjZWhvbGRlci1mb250LWNvbG9yOiAkc3RlZWwgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kaW5wdXQtYmctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMiUpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTQwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZSAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuJGlucHV0LWluY2x1ZGUtZ2xvd2luZy1lZmZlY3Q6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cbiRmaWVsZHNldC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsZWdlbmRzIHdoZW4geW91IHVzZSB0aGVtXG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcbiRpbnB1dC1wcmVmaXgtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1ib3JkZXItdHlwZTogc29saWQgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LW92ZXJmbG93OiB2aXNpYmxlICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyBzZXR0aW5nIHRvIHR1cm4gb24vb2ZmIEhUTUw1IG51bWJlciBzcGlubmVycyAodGhlIHVwL2Rvd24gYXJyb3dzKVxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBlcnJvciBzdGF0ZXMgZm9yIGlucHV0cyBhbmQgbGFiZWxzXG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1wYWRkaW5nOiByZW0tY2FsYyg2IDkgOSkgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A6IC0xcHggIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtYmctY29sb3I6ICRhbGVydC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgZ2xvd2luZyBlZmZlY3Qgb2YgaW5wdXRzIHdoZW4gZm9jdXNlZFxuJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogLjQ1cyAhZGVmYXVsdDtcbiRnbG93aW5nLWVmZmVjdC1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHRyYW5zaXRpb24gd2hlbiBpbnB1dHMgYXJlIGZvY3VzZWQgYW5kIHdoZW4gdGhlIGdsb3dpbmcgZWZmZWN0IGlzIGRpc2FibGVkLlxuJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lOiAwLjE1cyAhZGVmYXVsdDtcbiRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vIFNlbGVjdCB2YXJpYWJsZXNcbiRzZWxlY3QtYmctY29sb3I6ICRnaG9zdCAhZGVmYXVsdDtcbiRzZWxlY3QtaG92ZXItYmctY29sb3I6IHNjYWxlLWNvbG9yKCRzZWxlY3QtYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSkgIWRlZmF1bHQ7XG5cbi8vXG4vLyBATUlYSU5TXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnaXZlIHVzIGZvcm0gc3R5bGVzIGZvciByb3dzIGluc2lkZSBvZiBmb3Jtc1xuQG1peGluIGZvcm0tcm93LWJhc2Uge1xuICAucm93IHsgbWFyZ2luOiAwICgoLSRmb3JtLXNwYWNpbmcpIC8gMik7XG5cbiAgICAuY29sdW1uLFxuICAgIC5jb2x1bW5zIHsgcGFkZGluZzogMCAoJGZvcm0tc3BhY2luZyAvIDIpOyB9XG5cbiAgICAvLyBVc2UgdGhpcyB0byBjb2xsYXBzZSB0aGUgbWFyZ2lucyBvZiBhIGZvcm0gcm93XG4gICAgJi5jb2xsYXBzZSB7IG1hcmdpbjogMDtcblxuICAgICAgLmNvbHVtbixcbiAgICAgIC5jb2x1bW5zIHsgcGFkZGluZzogMDsgfVxuICAgICAgaW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAwKTtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuICBpbnB1dC5jb2x1bW4sXG4gIGlucHV0LmNvbHVtbnMsXG4gIHRleHRhcmVhLmNvbHVtbixcbiAgdGV4dGFyZWEuY29sdW1ucyB7IHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICgkZm9ybS1zcGFjaW5nIC8gMik7IH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gZ2l2ZSBhbGwgYmFzaWMgZm9ybSBlbGVtZW50cyB0aGVpciBzdHlsZVxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1jb2xvcjtcbiAgYm9yZGVyOiB7XG4gICAgc3R5bGU6ICRpbnB1dC1ib3JkZXItc3R5bGU7XG4gICAgd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIH1cbiAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3c7XG4gIGNvbG9yOiAkaW5wdXQtZm9udC1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gIEBpZiAkaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdCB7XG4gICAgQGluY2x1ZGUgYmxvY2stZ2xvd2luZy1lZmZlY3QoZm9jdXMsICRnbG93aW5nLWVmZmVjdC1mYWRlLXRpbWUsICRnbG93aW5nLWVmZmVjdC1jb2xvcik7XG4gIH1cbiAgLy8gQmFzaWMgZm9jdXMgc3R5bGVzXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1mb2N1cy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAvLyBEaXNhYmxlZCBTdHlsZXNcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGN1cnNvcjogJGlucHV0LWRpc2FibGVkLWN1cnNvcjtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGJhY2tncm91bmQgaW5wdXQgYmFja2dyb3VuZCBjb2xvclxuICAmW2Rpc2FibGVkXSxcbiAgJltyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xuICB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBmb3JtIGxhYmVsc1xuLy9cbi8vICRhbGlnbm1lbnQgLSBBbGlnbm1lbnQgb3B0aW9ucy4gRGVmYXVsdDogZmFsc2UuIE9wdGlvbnM6IFtyaWdodCwgaW5saW5lLCBmYWxzZV1cbi8vICRiYXNlLXN0eWxlIC0gQ29udHJvbCB3aGV0aGVyIG9yIG5vdCB0aGUgYmFzZSBzdHlsZXMgY29tZSB0aHJvdWdoLiBEZWZhdWx0OiB0cnVlLlxuQG1peGluIGZvcm0tbGFiZWwoJGFsaWdubWVudDpmYWxzZSwgJGJhc2Utc3R5bGU6dHJ1ZSkge1xuXG4gIC8vIENvbnRyb2wgd2hldGhlciBvciBub3QgdGhlIGJhc2Ugc3R5bGVzIGNvbWUgdGhyb3VnaC5cbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBjb2xvcjogJGZvcm0tbGFiZWwtZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6ICRmb3JtLWxhYmVsLXBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1ib3R0b20tbWFyZ2luO1xuICB9XG5cbiAgLy8gQWxpZ25tZW50IG9wdGlvbnNcbiAgQGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBpbmxpbmUge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmcgMDtcbiAgICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpIDA7XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHBvc3RmaXgvcHJlZml4IGZvcm0gTGFiZWxzXG5AbWl4aW4gcHJlZml4LXBvc3RmaXgtYmFzZSB7XG4gIGJvcmRlci1zdHlsZTogJGlucHV0LXByZWZpeC1ib3JkZXItdHlwZTtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtcHJlZml4LWJvcmRlci1zaXplO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG4gIGxpbmUtaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcbiAgb3ZlcmZsb3c6ICRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyO1xufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcHJlZml4IGxhYmVsIHN0eWxlc1xuLy8gJGJnIC0gRGVmYXVsdDokaW5wdXQtcHJlZml4LWJnIHx8IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbi8vICRpcy1idXR0b24gLSBUb2dnbGUgcG9zaXRpb24gc2V0dGluZ3MgaWYgcHJlZml4IGlzIGEgYnV0dG9uLiBEZWZhdWx0OmZhbHNlXG4vL1xuQG1peGluIHByZWZpeCgkYmc6JGlucHV0LXByZWZpeC1iZywgJGJvcmRlcjokaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvciwgJGlzLWJ1dHRvbjpmYWxzZSkge1xuXG4gIEBpZiAkYmcge1xuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogbm9uZTtcblxuICAgIC8vIENvbnRyb2wgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gYmFja2dyb3VuZCBicmlnaHRuZXNzXG4gICAgQGlmICRiZy1saWdodG5lc3MgPiA3MCUgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3I7IH1cbiAgICBAZWxzZSB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OyB9XG4gIH1cblxuICBAaWYgJGJvcmRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICB9XG5cbiAgQGlmICRpcy1idXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcG9zdGZpeCBsYWJlbCBzdHlsZXNcbi8vICRiZyAtIERlZmF1bHQ6JGlucHV0LXByZWZpeC1iZyB8fCBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4vLyAkaXMtYnV0dG9uIC0gVG9nZ2xlIHBvc2l0aW9uIHNldHRpbmdzIGlmIHByZWZpeCBpcyBhIGJ1dHRvbi4gRGVmYXVsdDogZmFsc2VcbkBtaXhpbiBwb3N0Zml4KCRiZzokaW5wdXQtcHJlZml4LWJnLCAkYm9yZGVyLWxlZnQtaGlkZGVuOnRydWUsICRib3JkZXI6JGlucHV0LXByZWZpeC1ib3JkZXItY29sb3IsICRpcy1idXR0b246ZmFsc2UpIHtcblxuICBAaWYgJGJnIHtcbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgQGlmICRib3JkZXItbGVmdC1oaWRkZW4ge1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiBub25lO1xuICAgIH1cblxuICAgIC8vIENvbnRyb2wgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gYmFja2dyb3VuZCBicmlnaHRuZXNzXG4gICAgQGlmICRiZy1saWdodG5lc3MgPiA3MCUgIG9yICRiZyA9PSB5ZWxsb3cgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yOyB9XG4gICAgQGVsc2UgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDsgfVxuICB9XG5cbiAgQGlmICRib3JkZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gIEBpZiAkaXMtYnV0dG9uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgZmllbGRzZXRzXG5AbWl4aW4gZmllbGRzZXQge1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXItd2lkdGggJGZpZWxkc2V0LWJvcmRlci1zdHlsZSAkZmllbGRzZXQtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuXG4gIC8vIGFuZCBsZWdlbmQgc3R5bGVzXG4gIGxlZ2VuZCB7XG4gICAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjb250cm9sIGJvcmRlciBhbmQgYmFja2dyb3VuZCBjb2xvciBvZiBlcnJvciBpbnB1dHNcbi8vICRjb2xvciAtIERlZmF1bHQ6ICRhbGVydC1jb2xvciAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbkBtaXhpbiBmb3JtLWVycm9yLWNvbG9yKCRjb2xvcjokYWxlcnQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIC4xKTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gR28gYmFjayB0byBub3JtYWwgb24gZm9jdXNcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWZvY3VzLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBzaW1wbGUgbWl4aW4gdG8gc3R5bGUgbGFiZWxzIGZvciBlcnJvciBpbnB1dHNcbi8vICRjb2xvciAtIERlZmF1bHQ6JGFsZXJ0LWNvbG9yLiBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXG5AbWl4aW4gZm9ybS1sYWJlbC1lcnJvci1jb2xvcigkY29sb3I6JGFsZXJ0LWNvbG9yKSB7IGNvbG9yOiAkY29sb3I7IH1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGVycm9yIG1lc3NhZ2Ugc3R5bGVzXG4vLyAkYmcgLSBEZWZhdWx0OiAkYWxlcnQtY29sb3IgKEZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gZm9ybS1lcnJvci1tZXNzYWdlKCRiZzokaW5wdXQtZXJyb3ItbWVzc2FnZS1iZy1jb2xvcikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU7XG4gIGZvbnQtc3R5bGU6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcbiAgbWFyZ2luLXRvcDogJGlucHV0LWVycm9yLW1lc3NhZ2UtdG9wO1xuICBwYWRkaW5nOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1wYWRkaW5nO1xuXG4gIC8vIFdlIGNhbiBjb250cm9sIHRoZSB0ZXh0IGNvbG9yIGJhc2VkIG9uIHRoZSBicmlnaHRuZXNzIG9mIHRoZSBiYWNrZ3JvdW5kLlxuICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcbiAgYmFja2dyb3VuZDogJGJnO1xuICBAaWYgJGJnLWxpZ2h0bmVzcyA8IDcwJSBvciAkYmcgPT0geWVsbG93IHsgY29sb3I6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3I7IH1cbiAgQGVsc2UgeyBjb2xvcjogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvci1hbHQ7IH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgc2VsZWN0IGVsZW1lbnRzXG5AbWl4aW4gZm9ybS1zZWxlY3QgIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJnLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBUaGUgY3VzdG9tIGFycm93IGhhcyBzb21lIGZha2UgaG9yaXpvbnRhbCBwYWRkaW5nIHNvIHdlIGNhbiBhbGlnbiBpdFxuICAvLyBmcm9tIHRoZSByaWdodCBzaWRlIG9mIHRoZSBlbGVtZW50IHdpdGhvdXQgcmVseWluZyBvbiBDU1MzXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRDBpTVRKd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU1qUndlQ0lnYUdWcFoyaDBQU0l6Y0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0EySURNaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lEWWdNeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BIQnZiSGxuYjI0Z2NHOXBiblJ6UFNJMUxqazVNaXd3SURJdU9Ua3lMRE1nTFRBdU1EQTRMREFnSWk4K1BDOXpkbWMrJyk7XG5cbiAgLy8gV2UgY2FuIHNhZmVseSB1c2UgbGVmdG1vc3QgYW5kIHJpZ2h0bW9zdCBub3dcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogaWYoJHRleHQtZGlyZWN0aW9uID09ICdydGwnLCAwJSwgMTAwJSkgY2VudGVyO1xuXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlcjoge1xuICAgIHN0eWxlOiAkaW5wdXQtYm9yZGVyLXN0eWxlO1xuICAgIHdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICB9XG4gIGNvbG9yOiAkaW5wdXQtZm9udC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIpO1xuICBAaW5jbHVkZSByYWRpdXMoMCk7XG4gICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRnbG9iYWwtcmFkaXVzKTsgfVxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWhvdmVyLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBEaXNhYmxlZCBTdHlsZXNcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGN1cnNvcjogJGlucHV0LWRpc2FibGVkLWN1cnNvcjtcbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byB0dXJuIG9uL29mZiBIVE1MNSBudW1iZXIgc3Bpbm5lcnNcbkBtaXhpbiBodG1sNW51bWJlcigkYnJvd3NlciwgJG9uOiB0cnVlKSB7XG4gIEBpZiAkb24gPT0gZmFsc2Uge1xuICAgICAgQGlmICRicm93c2VyID09IHdlYmtpdCB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfSBAZWxzZSBpZiAkYnJvd3NlciA9PSBtb3oge1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiZm9ybVwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlcyB7XG4gICAgLyogU3RhbmRhcmQgRm9ybXMgKi9cbiAgICBmb3JtIHsgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZzsgfVxuXG4gICAgLyogVXNpbmcgZm9ybXMgd2l0aGluIHJvd3MsIHdlIG5lZWQgdG8gc2V0IHNvbWUgZGVmYXVsdHMgKi9cbiAgICBmb3JtIC5yb3cgeyBAaW5jbHVkZSBmb3JtLXJvdy1iYXNlOyB9XG5cbiAgICAvKiBMYWJlbCBTdHlsZXMgKi9cbiAgICBsYWJlbCB7IEBpbmNsdWRlIGZvcm0tbGFiZWw7XG4gICAgICAmLnJpZ2h0IHsgQGluY2x1ZGUgZm9ybS1sYWJlbChyaWdodCwgZmFsc2UpOyB9XG4gICAgICAmLmlubGluZSB7IEBpbmNsdWRlIGZvcm0tbGFiZWwoaW5saW5lLCBmYWxzZSk7IH1cbiAgICAgIC8qIFN0eWxlcyBmb3IgcmVxdWlyZWQgaW5wdXRzICovXG4gICAgICBzbWFsbCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm07XG4gICAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkZm9ybS1sYWJlbC1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAxNSUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIEF0dGFjaCBlbGVtZW50cyB0byB0aGUgYmVnaW5uaW5nIG9yIGVuZCBvZiBhbiBpbnB1dCAqL1xuICAgIC5wcmVmaXgsXG4gICAgLnBvc3RmaXggeyBAaW5jbHVkZSBwcmVmaXgtcG9zdGZpeC1iYXNlOyB9XG5cbiAgICAvKiBBZGp1c3QgcGFkZGluZywgYWxpZ25tZW50IGFuZCByYWRpdXMgaWYgcHJlL3Bvc3QgZWxlbWVudCBpcyBhIGJ1dHRvbiAqL1xuICAgIC5wb3N0Zml4LmJ1dHRvbiB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKGZhbHNlLCBmYWxzZSk7IEBpbmNsdWRlIHBvc3RmaXgoZmFsc2UsIGZhbHNlLCBmYWxzZSwgdHJ1ZSk7IH1cbiAgICAucHJlZml4LmJ1dHRvbiB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKGZhbHNlLCBmYWxzZSk7IEBpbmNsdWRlIHByZWZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XG5cbiAgICAucHJlZml4LmJ1dHRvbi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucG9zdGZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucHJlZml4LmJ1dHRvbi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcm91bmQpOyB9XG4gICAgLnBvc3RmaXguYnV0dG9uLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuXG4gICAgLyogU2VwYXJhdGUgcHJlZml4IGFuZCBwb3N0Zml4IHN0eWxlcyB3aGVuIG9uIHNwYW4gb3IgbGFiZWwgc28gYnV0dG9ucyBrZWVwIHRoZWlyIG93biAqL1xuICAgIHNwYW4ucHJlZml4LCBsYWJlbC5wcmVmaXggeyBAaW5jbHVkZSBwcmVmaXgoKTsgfVxuICAgIHNwYW4ucG9zdGZpeCwgbGFiZWwucG9zdGZpeCB7IEBpbmNsdWRlIHBvc3RmaXgoKTsgfVxuXG4gICAgLyogV2UgdXNlIHRoaXMgdG8gZ2V0IGJhc2ljIHN0eWxpbmcgb24gYWxsIGJhc2ljIGZvcm0gZWxlbWVudHMgKi9cbiAgICBpbnB1dDpub3QoW3R5cGVdKSwgI3t0ZXh0LWlucHV0cyhhbGwsICdpbnB1dCcpfSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgICAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0ID09IGZhbHNlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWUgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb24sIGJhY2tncm91bmQgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbiwgYmFja2dyb3VuZCAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWUgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb247XG4gICAgICB9XG4gICAgICAmLnJhZGl1cyB7XG4gICAgICAgIEBpbmNsdWRlIHJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICAucm93IHtcbiAgICAgICAgLnByZWZpeC1yYWRpdXMucm93LmNvbGxhcHNlIHtcbiAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICBzZWxlY3QsXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAgICAgICAucHJlZml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgICAgIH1cbiAgICAgICAgLnBvc3RmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSB7XG4gICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgIGJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcmFkaXVzKTsgfVxuICAgICAgICAgIC5wb3N0Zml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgICAucHJlZml4LXJvdW5kLnJvdy5jb2xsYXBzZSB7XG4gICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgIGJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yb3VuZCk7IH1cbiAgICAgICAgICAucHJlZml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yb3VuZCk7IH1cbiAgICAgICAgfVxuICAgICAgICAucG9zdGZpeC1yb3VuZC5yb3cuY29sbGFwc2Uge1xuICAgICAgICAgIGlucHV0LFxuICAgICAgICAgIHRleHRhcmVhLFxuICAgICAgICAgIHNlbGVjdCxcbiAgICAgICAgICBidXR0b24geyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICAgIC5wb3N0Zml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8qIFJlc3BlY3QgZW5mb3JjZWQgYW1vdW50IG9mIHJvd3MgZm9yIHRleHRhcmVhICovXG4gICAgdGV4dGFyZWFbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8qIE5vdCBhbGxvdyByZXNpemUgb3V0IG9mIHBhcmVudCAqL1xuICAgIHRleHRhcmVhIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBzdHlsZSBwbGFjZWhvbGRlciB0ZXh0IGNyb3NzIGJyb3dzZXJcbiAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1mb250LWNvbG9yO1xuICAgIH1cblxuICAgIDotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cbiAgICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgOjotbW96LXBsYWNlaG9sZGVyIHsgIC8qIEZpcmVmb3ggMTkrICovXG4gICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1mb250LWNvbG9yO1xuICAgIH1cblxuICAgIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItZm9udC1jb2xvcjtcbiAgICB9XG5cblxuICAgIC8qIEFkZCBoZWlnaHQgdmFsdWUgZm9yIHNlbGVjdCBlbGVtZW50cyB0byBtYXRjaCB0ZXh0IGlucHV0IGhlaWdodCAqL1xuICAgIHNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgICAgIGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG4gICAgICAmW211bHRpcGxlXSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBBZGp1c3QgbWFyZ2luIGZvciBmb3JtIGVsZW1lbnRzIGJlbG93ICovXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBzZWxlY3Qge1xuICAgICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGZvcm0tc3BhY2luZyAqIC41O1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRmb3JtLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIC8qIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoICovXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG5cbiAgICAvKiBIVE1MNSBOdW1iZXIgc3Bpbm5lcnMgc2V0dGluZ3MgKi9cbiAgICBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAgICAgQGluY2x1ZGUgaHRtbDVudW1iZXIobW96LCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzKVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgaHRtbDVudW1iZXIod2Via2l0LCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzKTtcbiAgICB9XG5cbiAgICAvKiBXZSBhZGQgYmFzaWMgZmllbGRzZXQgc3R5bGluZyAqL1xuICAgIGZpZWxkc2V0IHtcbiAgICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICAgIH1cblxuICAgIC8qIEVycm9yIEhhbmRsaW5nICovXG5cbiAgICAje2RhdGEoJ2FiaWRlJyl9IHtcbiAgICAgIC5lcnJvciBzbWFsbC5lcnJvciwgLmVycm9yIHNwYW4uZXJyb3IsIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgICAgfVxuICAgICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3IgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG4gICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3Ige1xuICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgIH1cblxuICAgIC5lcnJvciB7XG4gICAgICBpbnB1dCxcbiAgICAgIHRleHRhcmVhLFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZ1xuICAgICAgfVxuXG4gICAgICBsYWJlbCxcbiAgICAgIGxhYmVsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgc21hbGwuZXJyb3Ige1xuICAgICAgICBAaW5jbHVkZSBmb3JtLWVycm9yLW1lc3NhZ2U7XG4gICAgICB9XG5cbiAgICAgID4gbGFiZWwge1xuICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgZm9udC1zaXplOiA2MCU7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3Bhbi5lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQuZXJyb3IsXG4gICAgdGV4dGFyZWEuZXJyb3IsXG4gICAgc2VsZWN0LmVycm9yIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGxhYmVsLmVycm9yIHsgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjsgfVxuICB9XG59XG4iLCJcbiRmb3JtLXNwYWNpbmc6ICRzaXRlLXA7XG5cbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS41O1xuJGZvcm0tbGFiZWwtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGJsYWNrLCAkbGlnaHRuZXNzOiAzMCUpO1xuJGZvcm0tbGFiZWwtc21hbGwtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuJGZvcm0tbGFiZWwtYm90dG9tLW1hcmdpbjogMDtcblxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kaW5wdXQtcGxhY2Vob2xkZXItZm9udC1jb2xvcjogI2NjY2NjYztcbiRpbnB1dC1iZy1jb2xvcjogJHdoaXRlO1xuJGlucHV0LWZvY3VzLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yJSk7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpO1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNDAlKTtcbiRpbnB1dC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuJGlucHV0LWJvcmRlci13aWR0aDogMXB4O1xuJGlucHV0LWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGlucHV0LWRpc2FibGVkLWJnOiAkZ2FpbnNib3JvO1xuJGlucHV0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7XG4kaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdDogZmFsc2U7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZmllbGRzZXQgYm9yZGVyIGFuZCBzcGFjaW5nLlxuLy8gJGZpZWxkc2V0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkZmllbGRzZXQtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkZmllbGRzZXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvO1xuLy8gJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbi8vICRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxlZ2VuZHMgd2hlbiB5b3UgdXNlIHRoZW1cbi8vICRsZWdlbmQtYmc6ICR3aGl0ZTtcbi8vICRsZWdlbmQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHByZWZpeCBhbmQgcG9zdGZpeCBpbnB1dCBlbGVtZW50c1xuLy8gJGlucHV0LXByZWZpeC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpO1xuLy8gJGlucHV0LXByZWZpeC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSk7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci1zaXplOiAxcHg7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZDtcbi8vICRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjogJG9pbDtcbi8vICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcblxuLy8gV2UgdXNlIHRoaXMgc2V0dGluZyB0byB0dXJuIG9uL29mZiBIVE1MNSBudW1iZXIgc3Bpbm5lcnMgKHRoZSB1cC9kb3duIGFycm93cylcbi8vICRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZXJyb3Igc3RhdGVzIGZvciBpbnB1dHMgYW5kIGxhYmVsc1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZzogcmVtLWNhbGMoNiA5IDkpO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtdG9wOiAtMXB4O1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWJnLWNvbG9yOiAkYWxlcnQtY29sb3I7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yLWFsdDogJG9pbDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIGdsb3dpbmcgZWZmZWN0IG9mIGlucHV0cyB3aGVuIGZvY3VzZWRcbi8vICRnbG93aW5nLWVmZmVjdC1mYWRlLXRpbWU6IC40NXM7XG4vLyAkZ2xvd2luZy1lZmZlY3QtY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSB0cmFuc2l0aW9uIHdoZW4gaW5wdXRzIGFyZSBmb2N1c2VkIGFuZCB3aGVuIHRoZSBnbG93aW5nIGVmZmVjdCBpcyBkaXNhYmxlZC5cbi8vICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZTogMC4xNXM7XG4vLyAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG4vLyBTZWxlY3QgdmFyaWFibGVzXG4vLyAkc2VsZWN0LWJnLWNvbG9yOiAkZ2hvc3Q7XG4vLyAkc2VsZWN0LWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkc2VsZWN0LWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpOyIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcbiRpbmNsdWRlLXhsLWh0bWwtZ3JpZC1jbGFzc2VzOiBmYWxzZSAhZGVmYXVsdDtcblxuJHJvdy13aWR0aDogcmVtLWNhbGMoMTAwMCkgIWRlZmF1bHQ7XG4kdG90YWwtY29sdW1uczogMTIgIWRlZmF1bHQ7XG5cbiRsYXN0LWNoaWxkLWZsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uICFkZWZhdWx0O1xuXG4vL1xuLy8gR3JpZCBGdW5jdGlvbnNcbi8vXG5cbi8vIERlcHJlY2F0ZWQ6IFdlJ2xsIGRyb3Agc3VwcG9ydCBmb3IgdGhpcyBpbiA1LjEsIHVzZSBncmlkLWNhbGMoKVxuQGZ1bmN0aW9uIGdyaWRDYWxjKCRjb2xOdW1iZXIsICR0b3RhbENvbHVtbnMpIHtcbiAgQHdhcm4gXCJncmlkQ2FsYygpIGlzIGRlcHJlY2F0ZWQsIHVzZSBncmlkLWNhbGMoKVwiO1xuICBAcmV0dXJuIGdyaWQtY2FsYygkY29sTnVtYmVyLCAkdG90YWxDb2x1bW5zKTtcbn1cblxuLy8gQEZVTkNUSU9OXG4vLyAkY29sTnVtYmVyIC0gRm91bmQgaW4gc2V0dGluZ3MgZmlsZVxuLy8gJHRvdGFsQ29sdW1ucyAtIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcbkBmdW5jdGlvbiBncmlkLWNhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucykge1xuICAkcmVzdWx0OiBwZXJjZW50YWdlKCgkY29sTnVtYmVyIC8gJHRvdGFsQ29sdW1ucykpO1xuICBAaWYgJHJlc3VsdCA9PSAwJSB7ICRyZXN1bHQ6IDA7IH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuLy8gRm9yIGNyZWF0aW5nIGNvbnRhaW5lciwgbmVzdGVkLCBhbmQgY29sbGFwc2VkIHJvd3MuXG4vL1xuLy9cbi8vICRiZWhhdmlvciAtIEFueSBzcGVjaWFsIGJlaGF2aW9yIGZvciB0aGlzIHJvdz8gRGVmYXVsdDogZmFsc2UuIE9wdGlvbnM6IG5lc3QsIGNvbGxhcHNlLCBuZXN0LWNvbGxhcHNlLCBmYWxzZS5cbkBtaXhpbiBncmlkLXJvdygkYmVoYXZpb3I6IGZhbHNlKSB7XG5cbiAgLy8gdXNlIEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpOyB0byBpbmNsdWRlIGEgbmVzdGVkIHJvd1xuICBAaWYgJGJlaGF2aW9yID09IG5lc3Qge1xuICAgIG1hcmdpbjogMCAoLSgkY29sdW1uLWd1dHRlci8yKSk7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gdXNlIEBpbmNsdWRlIGdyaWQtcm93KGNvbGxhcHNlKTsgdG8gY29sbGFwc2VkIGEgY29udGFpbmVyIHJvdyBtYXJnaW5zXG4gIEBlbHNlIGlmICRiZWhhdmlvciA9PSBjb2xsYXBzZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogJHJvdy13aWR0aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhuZXN0LWNvbGxhcHNlKTsgdG8gY29sbGFwc2Ugb3V0ZXIgbWFyZ2lucyBvbiBhIG5lc3RlZCByb3dcbiAgQGVsc2UgaWYgJGJlaGF2aW9yID09IG5lc3QtY29sbGFwc2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyB1c2UgQGluY2x1ZGUgZ3JpZC1yb3c7IHRvIHVzZSBhIGNvbnRhaW5lciByb3dcbiAgQGVsc2Uge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogJHJvdy13aWR0aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIENsZWFyZml4IGZvciBhbGwgcm93c1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4vLyBDcmVhdGVzIGEgY29sdW1uLCBzaG91bGQgYmUgdXNlZCBpbnNpZGUgb2YgYSBtZWRpYSBxdWVyeSB0byBjb250cm9sIGxheW91dHNcbi8vXG4vLyAkY29sdW1ucyAtIFRoZSBudW1iZXIgb2YgY29sdW1ucyB0aGlzIHNob3VsZCBiZVxuLy8gJGxhc3QtY29sdW1uIC0gSXMgdGhpcyB0aGUgbGFzdCBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxuLy8gJGNlbnRlciAtIENlbnRlciB0aGVzZSBjb2x1bW5zPyBEZWZhdWx0OiBmYWxzZS5cbi8vICRvZmZzZXQgLSAjIG9mIGNvbHVtbnMgdG8gb2Zmc2V0LiBEZWZhdWx0OiBmYWxzZS5cbi8vICRwdXNoIC0gIyBvZiBjb2x1bW5zIHRvIHB1c2guIERlZmF1bHQ6IGZhbHNlLlxuLy8gJHB1bGwgLSAjIG9mIGNvbHVtbnMgdG8gcHVsbC4gRGVmYXVsdDogZmFsc2UuXG4vLyAkY29sbGFwc2UgLSBHZXQgcmlkIG9mIGd1dHRlciBwYWRkaW5nIG9uIGNvbHVtbj8gRGVmYXVsdDogZmFsc2UuXG4vLyAkZmxvYXQgLSBTaG91bGQgdGhpcyBmbG9hdD8gRGVmYXVsdDogdHJ1ZS4gT3B0aW9uczogdHJ1ZSwgZmFsc2UsIGxlZnQsIHJpZ2h0LlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczpmYWxzZSxcbiAgJGxhc3QtY29sdW1uOmZhbHNlLFxuICAkY2VudGVyOmZhbHNlLFxuICAkb2Zmc2V0OmZhbHNlLFxuICAkcHVzaDpmYWxzZSxcbiAgJHB1bGw6ZmFsc2UsXG4gICRjb2xsYXBzZTpmYWxzZSxcbiAgJGZsb2F0OnRydWUsXG4gICRwb3NpdGlvbjpmYWxzZSkge1xuXG4gIC8vIElmIHBvc2l0aW9uZWQgZm9yIGRlZmF1bHQgLmNvbHVtbiwgaW5jbHVkZSByZWxhdGl2ZSBwb3NpdGlvblxuICAvLyBwdXNoIGFuZCBwdWxsIHJlcXVpcmUgcG9zaXRpb24gc2V0XG4gIEBpZiAkcG9zaXRpb24gb3IgJHB1c2ggb3IgJHB1bGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC8vIElmIGNvbGxhcHNlZCwgZ2V0IHJpZCBvZiBndXR0ZXIgcGFkZGluZ1xuICBAaWYgJGNvbGxhcHNlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC8vIEd1dHRlciBwYWRkaW5nIHdoZW5ldmVyIGEgY29sdW1uIGlzbid0IHNldCB0byBjb2xsYXBzZVxuICAvLyAodXNlICRjb2xsYXBzZTpudWxsIHRvIGRvIG5vdGhpbmcpXG4gIEBlbHNlIGlmICRjb2xsYXBzZSA9PSBmYWxzZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGNvbHVtbi1ndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGNvbHVtbi1ndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC8vIElmIGEgY29sdW1uIG51bWJlciBpcyBnaXZlbiwgY2FsY3VsYXRlIHdpZHRoXG4gIEBpZiAkY29sdW1ucyB7XG4gICAgd2lkdGg6IGdyaWQtY2FsYygkY29sdW1ucywgJHRvdGFsLWNvbHVtbnMpO1xuXG4gICAgLy8gSWYgbGFzdCBjb2x1bW4sIGZsb2F0IG5hdHVyYWxseSBpbnN0ZWFkIG9mIHRvIHRoZSByaWdodFxuICAgIEBpZiAkbGFzdC1jb2x1bW4geyBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjsgfVxuICB9XG5cbiAgLy8gU291cmNlIE9yZGVyaW5nLCBhZGRzIGxlZnQvcmlnaHQgZGVwZW5kaW5nIG9uIHdoaWNoIHlvdSB1c2UuXG4gIEBpZiAkcHVzaCB7ICN7JGRlZmF1bHQtZmxvYXR9OiBncmlkLWNhbGMoJHB1c2gsICR0b3RhbC1jb2x1bW5zKTsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bzsgfVxuICBAaWYgJHB1bGwgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBncmlkLWNhbGMoJHB1bGwsICR0b3RhbC1jb2x1bW5zKTsgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87IH1cblxuICBAaWYgJGZsb2F0IGFuZCAkbGFzdC1jb2x1bW4gPT0gZmFsc2Uge1xuICAgIEBpZiAkZmxvYXQgPT0gbGVmdCBvciAkZmxvYXQgPT0gdHJ1ZSB7IGZsb2F0OiAkZGVmYXVsdC1mbG9hdDsgfVxuICAgIEBlbHNlIGlmICRmbG9hdCA9PSByaWdodCB7IGZsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uOyB9XG4gICAgQGVsc2UgeyBmbG9hdDogbm9uZTsgfVxuICB9XG5cbiAgLy8gSWYgY2VudGVyZWQsIGdldCByaWQgb2YgZmxvYXQgYW5kIGFkZCBhcHByb3ByaWF0ZSBtYXJnaW5zXG4gIEBpZiAkY2VudGVyIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBJZiBvZmZzZXQsIGNhbGN1bGF0ZSBhcHByb3ByaWF0ZSBtYXJnaW5zXG4gIEBpZiAkb2Zmc2V0IHsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiBncmlkLWNhbGMoJG9mZnNldCwgJHRvdGFsLWNvbHVtbnMpICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vLyBDcmVhdGUgcHJlc2VudGF0aW9uYWwgY2xhc3NlcyBmb3IgZ3JpZFxuLy9cbi8vICRzaXplIC0gTmFtZSBvZiBjbGFzcyB0byB1c2UsIGkuZS4gXCJsYXJnZVwiIHdpbGwgZ2VuZXJhdGUgLmxhcmdlLTEsIC5sYXJnZS0yLCBldGMuXG5AbWl4aW4gZ3JpZC1odG1sLWNsYXNzZXMoJHNpemUpIHtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgLiN7JHNpemV9LXB1c2gtI3skaX0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1c2g6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgIH1cbiAgICAuI3skc2l6ZX0tcHVsbC0jeyRpfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVsbDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczpmYWxzZSwgJHBvc2l0aW9uOnRydWUpOyB9XG5cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIHtcbiAgICAuI3skc2l6ZX0tI3skaX0geyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7IH1cbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMgLSAxIHtcbiAgICAuI3skc2l6ZX0tb2Zmc2V0LSN7JGl9IHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJG9mZnNldDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7IH1cbiAgfVxuXG4gIC4jeyRzaXplfS1yZXNldC1vcmRlciB7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmNvbHVtbi4jeyRzaXplfS1jZW50ZXJlZCxcbiAgLmNvbHVtbnMuI3skc2l6ZX0tY2VudGVyZWQgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY2VudGVyOnRydWUsICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpOyB9XG5cbiAgLmNvbHVtbi4jeyRzaXplfS11bmNlbnRlcmVkLFxuICAuY29sdW1ucy4jeyRzaXplfS11bmNlbnRlcmVkIHtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICB9XG5cbiAgLy8gRmlnaHRpbmcgW2NsYXNzKj1cImNvbHVtblwiXSArIFtjbGFzcyo9XCJjb2x1bW5cIl06bGFzdC1jaGlsZFxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkOmxhc3QtY2hpbGQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LWNlbnRlcmVkOmxhc3QtY2hpbGR7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBGaWdodGluZyAuY29sdW1uLjxwcmV2aW91cy1zaXplPi1jZW50ZXJlZDpsYXN0LWNoaWxkXG4gIC5jb2x1bW4uI3skc2l6ZX0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkLFxuICAuY29sdW1ucy4jeyRzaXplfS11bmNlbnRlcmVkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgfVxuXG4gIC5jb2x1bW4uI3skc2l6ZX0tdW5jZW50ZXJlZC5vcHBvc2l0ZSxcbiAgLmNvbHVtbnMuI3skc2l6ZX0tdW5jZW50ZXJlZC5vcHBvc2l0ZSB7XG4gICAgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG4gIH1cblxuICAucm93IHtcbiAgICAmLiN7JHNpemV9LWNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbixcbiAgICAgID4gLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sbGFwc2U6dHJ1ZSwgJGZsb2F0OmZhbHNlKTsgfVxuXG4gICAgICAucm93IHttYXJnaW4tbGVmdDowOyBtYXJnaW4tcmlnaHQ6MDt9XG4gICAgfVxuICAgICYuI3skc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4sXG4gICAgICA+IC5jb2x1bW5zIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJncmlkXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzIHtcbiAgICAucm93IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgICAmLmNvbGxhcHNlIHtcbiAgICAgICAgID4gLmNvbHVtbixcbiAgICAgICAgID4gLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sbGFwc2U6dHJ1ZSwgJGZsb2F0OmZhbHNlKTsgfVxuXG4gICAgICAgIC5yb3cge21hcmdpbi1sZWZ0OjA7IG1hcmdpbi1yaWdodDowO31cbiAgICAgIH1cblxuICAgICAgLnJvdyB7IEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjpuZXN0KTtcbiAgICAgICAgJi5jb2xsYXBzZSB7IEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjpuZXN0LWNvbGxhcHNlKTsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2x1bW4sXG4gICAgLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczokdG90YWwtY29sdW1ucyk7IH1cblxuICAgIC5jb2x1bW4sXG4gICAgLmNvbHVtbnMge1xuICAgICAgJiArICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiAkbGFzdC1jaGlsZC1mbG9hdDtcbiAgICAgIH1cbiAgICAgICYgKyAmLmVuZCB7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnNtYWxsKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTptZWRpdW0pO1xuICAgICAgLy8gT2xkIHB1c2ggYW5kIHB1bGwgY2xhc3Nlc1xuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xuICAgICAgICAucHVzaC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1c2g6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIC5wdWxsLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVsbDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpsYXJnZSk7XG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgICAgIC5wdXNoLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgLnB1bGwtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJGluY2x1ZGUteGwtaHRtbC1ncmlkLWNsYXNzZXMge1xuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnhsYXJnZSk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTp4eGxhcmdlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1pbmxpbmUtbGlzdC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1hcmdpbnMgYW5kIHBhZGRpbmcgb2YgdGhlIGlubGluZSBsaXN0LlxuJGlubGluZS1saXN0LXRvcC1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luOiAwICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDE3KSAhZGVmYXVsdDtcbiRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LW1hcmdpbjogcmVtLWNhbGMoLTIyKSAhZGVmYXVsdDtcbiRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LWxpc3QtbWFyZ2luOiByZW0tY2FsYygyMikgIWRlZmF1bHQ7XG5cbiRpbmxpbmUtbGlzdC1wYWRkaW5nOiAwICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBvdmVyZmxvdyBvZiB0aGUgaW5saW5lIGxpc3QuXG4kaW5saW5lLWxpc3Qtb3ZlcmZsb3c6IGhpZGRlbiAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbGlzdCBpdGVtc1xuJGlubGluZS1saXN0LWRpc3BsYXk6IGJsb2NrICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFueSBlbGVtZW50cyB3aXRoaW4gbGlzdCBpdGVtc1xuJGlubGluZS1saXN0LWNoaWxkcmVuLWRpc3BsYXk6IGJsb2NrICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBpbmxpbmUgbGlzdHNcbkBtaXhpbiBpbmxpbmUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRpbmxpbmUtbGlzdC10b3AtbWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiAkaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW47XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luO1xuICBvdmVyZmxvdzogJGlubGluZS1saXN0LW92ZXJmbG93O1xuICBwYWRkaW5nOiAkaW5saW5lLWxpc3QtcGFkZGluZztcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiAkaW5saW5lLWxpc3QtZGlzcGxheTtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LWxpc3QtbWFyZ2luO1xuICAgID4gKiB7IGRpc3BsYXk6ICRpbmxpbmUtbGlzdC1jaGlsZHJlbi1kaXNwbGF5OyB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImlubGluZS1saXN0XCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtaW5saW5lLWxpc3QtY2xhc3NlcyB7XG4gICAgLmlubGluZS1saXN0IHtcbiAgICAgIEBpbmNsdWRlIGlubGluZS1saXN0KCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2xsaW5nIGRlZmF1bHQgSm95cmlkZSBzdHlsZXNcbiRqb3lyaWRlLXRpcC1iZzogJG9pbCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1wYWRkaW5nOiByZW0tY2FsYygxOCAyMCAyNCkgIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggJGNoYXJjb2FsICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLXJhZGl1czogNHB4ICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLXBvc2l0aW9uLW9mZnNldDogMjJweCAhZGVmYXVsdDtcblxuLy8gSGVyZSwgd2UncmUgc2V0dGluZyB0aGUgdGlwIGZvbnQgc3R5bGVzXG4kam95cmlkZS10aXAtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLyBUaGlzIGNoYW5nZXMgdGhlIG51YiBzaXplXG4kam95cmlkZS10aXAtbnViLXNpemU6IDEwcHggIWRlZmF1bHQ7XG5cbi8vIFRoaXMgYWRqdXN0cyB0aGUgc3R5bGVzIGZvciB0aGUgdGltZXIgd2hlbiBpdHMgZW5hYmxlZFxuJGpveXJpZGUtdGlwLXRpbWVyLXdpZHRoOiA1MHB4ICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLXRpbWVyLWhlaWdodDogM3B4ICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yOiAkc3RlZWwgIWRlZmF1bHQ7XG5cbi8vIFRoaXMgY2hhbmdlcyB1cCB0aGUgc3R5bGVzIGZvciB0aGUgY2xvc2UgYnV0dG9uXG4kam95cmlkZS10aXAtY2xvc2UtY29sb3I6ICRtb25zb29uICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWNsb3NlLXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLyBXaGVuIEpveXJpZGUgaXMgZmlsbGluZyB0aGUgc2NyZWVuLCB3ZSB1c2UgdGhpcyBzdHlsZSBmb3IgdGhlIGJnXG4kam95cmlkZS1zY3JlZW5maWxsOiByZ2JhKDAsMCwwLDAuNSkgIWRlZmF1bHQ7XG5cblxuLy8gV2UgZGVjaWRlZCBub3QgdG8gbWFrZSBhIG1peGluIGZvciB0aGlzIGJlY2F1c2UgaXQgcmVsaWVzIG9uXG4vLyBwcmVkZWZpbmVkIGNsYXNzZXMgdG8gd29yayBwcm9wZXJseS5cbkBpbmNsdWRlIGV4cG9ydHMoXCJqb3lyaWRlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzIHtcblxuICAgIC8qIEZvdW5kYXRpb24gSm95cmlkZSAqL1xuICAgIC5qb3lyaWRlLWxpc3QgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAvKiBEZWZhdWx0IHN0eWxlcyBmb3IgdGhlIGNvbnRhaW5lciAqL1xuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkam95cmlkZS10aXAtYmc7XG4gICAgICBjb2xvcjogJGpveXJpZGUtdGlwLWZvbnQtY29sb3I7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgICB6LWluZGV4OiAxMDM7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMi41JTtcbiAgICB9XG5cbiAgICAubHQtaWU5IC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC00MDBweDtcbiAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAkam95cmlkZS10aXAtcGFkZGluZztcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbiAgICAgIC5qb3lyaWRlLXByZXYtdGlwIHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgfVxuXG4gICAgLyogQWRkIGEgbGl0dGxlIGNzcyB0cmlhbmdsZSBwaXAsIG9sZGVyIGJyb3dzZXIganVzdCBtaXNzIG91dCBvbiB0aGUgZmFuY2luZXNzIG9mIGl0ICovXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIHtcbiAgICAgIC5qb3lyaWRlLW51YiB7XG4gICAgICAgIGJvcmRlcjogJGpveXJpZGUtdGlwLW51Yi1zaXplIHNvbGlkICRqb3lyaWRlLXRpcC1iZztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ7XG5cbiAgICAgICAgJi50b3Age1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGpveXJpZGUtdGlwLWJnO1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRvcDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgIH1cbiAgICAgICAgJi5ib3R0b20ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGpveXJpZGUtdGlwLWJnICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm90dG9tOiAtKCRqb3lyaWRlLXRpcC1udWItc2l6ZSoyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmlnaHQgeyByaWdodDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7IH1cbiAgICAgICAgJi5sZWZ0IHsgbGVmdDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBUeXBvZ3JhcGh5ICovXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGgxLFxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoMixcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDMsXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGg0LFxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoNSxcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDYge1xuICAgICAgY29sb3I6ICRqb3lyaWRlLXRpcC1mb250LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6ICRqb3lyaWRlLXRpcC1oZWFkZXItd2VpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogJGpveXJpZGUtdGlwLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxOCAwKTtcbiAgICB9XG5cbiAgICAuam95cmlkZS10aW1lci1pbmRpY2F0b3Itd3JhcCB7XG4gICAgICBib3JkZXI6ICRqb3lyaWRlLXRpcC1ib3JkZXI7XG4gICAgICBib3R0b206IHJlbS1jYWxjKDE2KTtcbiAgICAgIGhlaWdodDogJGpveXJpZGUtdGlwLXRpbWVyLWhlaWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAkam95cmlkZS10aXAtdGltZXItd2lkdGg7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiByZW0tY2FsYygxNyk7XG4gICAgfVxuICAgIC5qb3lyaWRlLXRpbWVyLWluZGljYXRvciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkam95cmlkZS10aXAtdGltZXItY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWNsb3NlLXRpcCB7XG4gICAgICBjb2xvcjogJGpveXJpZGUtdGlwLWNsb3NlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6ICRqb3lyaWRlLXRpcC1jbG9zZS1zaXplO1xuICAgICAgZm9udC13ZWlnaHQ6ICRqb3lyaWRlLXRpcC1jbG9zZS13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogLjUgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEycHg7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICRzbW9rZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgLmpveXJpZGUtbW9kYWwtYmcge1xuICAgICAgYmFja2dyb3VuZDogJGpveXJpZGUtc2NyZWVuZmlsbDtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgfVxuXG4gICAgLmpveXJpZGUtZXhwb3NlLXdyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDE1cHggJHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTAyO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWV4cG9zZS1jb3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiA5OTk5O1xuICAgIH1cblxuXG4gICAgLyogU3R5bGVzIGZvciBzY3JlZW5zIHRoYXQgYXJlIGF0IGxlYXN0IDc2OHB4OyAqL1xuICAgIEBtZWRpYSAjeyRzbWFsbH0ge1xuICAgICAgLmpveXJpZGUtdGlwLWd1aWRlIHsgd2lkdGg6ICRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOyAjeyRkZWZhdWx0LWZsb2F0fTogaW5oZXJpdDtcbiAgICAgICAgLmpveXJpZGUtbnViIHtcbiAgICAgICAgICAmLmJvdHRvbSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAtKCRqb3lyaWRlLXRpcC1udWItc2l6ZSoyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgICAgICB0b3A6ICRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGVmdCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB0b3A6ICRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwta2V5c3Ryb2tlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZXMuXG4ka2V5c3Ryb2tlLWZvbnQ6IFwiQ29uc29sYXNcIiwgXCJNZW5sb1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGtleXN0cm9rZS1mb250LXNpemU6IGluaGVyaXQgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3RvcjogLTclICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGtleXN0cm9rZSBwYWRkaW5nLlxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXMuXG4ka2V5c3Ryb2tlLWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRrZXlzdHJva2UtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRrZXlzdHJva2UtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGtleXN0cm9rZS1iZywgJGxpZ2h0bmVzczogJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBrZXlzdHJva2Ugc3R5bGVzLlxuLy8gJGJnIC0gRGVmYXVsdDogJGtleXN0cm9rZS1iZyB8fCBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbkBtaXhpbiBrZXlzdHJva2UoJGJnOiRrZXlzdHJva2UtYmcpIHtcbiAgLy8gVGhpcyBmaW5kIHRoZSBsaWdodG5lc3MgcGVyY2VudGFnZSBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkYmcsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKTtcblxuICAvLyBXZSBhZGp1c3QgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gdGhlIGJyaWdodG5lc3Mgb2YgdGhlIGJhY2tncm91bmQuXG4gIEBpZiAkYmctbGlnaHRuZXNzID4gNzAlIHsgY29sb3I6ICRrZXlzdHJva2UtZm9udC1jb2xvcjsgfVxuICBAZWxzZSB7IGNvbG9yOiAka2V5c3Ryb2tlLWZvbnQtY29sb3ItYWx0OyB9XG5cbiAgYm9yZGVyLXN0eWxlOiAka2V5c3Ryb2tlLWJvcmRlci1zdHlsZTtcbiAgYm9yZGVyLXdpZHRoOiAka2V5c3Ryb2tlLWJvcmRlci13aWR0aDtcbiAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgZm9udC1zaXplOiAka2V5c3Ryb2tlLWZvbnQtc2l6ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJrZXlzdHJva2VcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1rZXlzdHJva2UtY2xhc3NlcyAge1xuICAgIC5rZXlzdHJva2UsXG4gICAga2JkIHtcbiAgICAgIEBpbmNsdWRlIGtleXN0cm9rZTtcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygka2V5c3Ryb2tlLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsc1xuJGxhYmVsLXBhZGRpbmc6IHJlbS1jYWxjKDQgOCA0KSAhZGVmYXVsdDtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsIHRleHRcbiRsYWJlbC1mb250LXNpemluZzogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiRsYWJlbC1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBsYWJlbCBiYXNlLlxuQG1peGluIGxhYmVsLWJhc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkbGFiZWwtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGxhYmVsIHNpemUgc3R5bGVzLlxuLy8gJHBhZGRpbmcgLSBVc2VkIHRvIGRldGVybWluZSBsYWJlbCBwYWRkaW5nLiBEZWZhdWx0OiAkbGFiZWwtcGFkZGluZyB8fCByZW0tY2FsYyg0IDggNCkgIWRlZmF1bHRcbi8vICR0ZXh0LXNpemUgLSBVc2VkIHRvIGRldGVybWluZSBsYWJlbCB0ZXh0LXNpemUuIERlZmF1bHQ6ICR0ZXh0LXNpemUgZm91bmQgaW4gc2V0dGluZ3NcbkBtaXhpbiBsYWJlbC1zaXplKCRwYWRkaW5nOiRsYWJlbC1wYWRkaW5nLCAkdGV4dC1zaXplOiRsYWJlbC1mb250LXNpemluZykge1xuICBAaWYgJHBhZGRpbmcgeyBwYWRkaW5nOiAkcGFkZGluZzsgfVxuICBAaWYgJHRleHQtc2l6ZSB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZTsgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGxhYmVsIHN0eWxlcy5cbi8vICRiZyAtIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxuLy8gJHJhZGl1cyAtIERlZmF1bHQ6IGZhbHNlLCBPcHRpb25zOiB0cnVlLCBzZXRzIHJhZGl1cyB0byAkZ2xvYmFsLXJhZGl1cyAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbkBtaXhpbiBsYWJlbC1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IsICRyYWRpdXM6ZmFsc2UpIHtcblxuICAvLyBXZSBjb250cm9sIHdoaWNoIGJhY2tncm91bmQgY29sb3IgY29tZXMgdGhyb3VnaFxuICBAaWYgJGJnIHtcblxuICAgIC8vIFRoaXMgZmluZCB0aGUgbGlnaHRuZXNzIHBlcmNlbnRhZ2Ugb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG4gICAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgICAvLyBXZSBjb250cm9sIHRoZSB0ZXh0IGNvbG9yIGZvciB5b3UgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4gICAgQGlmICRiZy1saWdodG5lc3MgPCA3MCUgeyBjb2xvcjogJGxhYmVsLWZvbnQtY29sb3ItYWx0OyB9XG4gICAgQGVsc2UgeyBjb2xvcjogJGxhYmVsLWZvbnQtY29sb3I7IH1cbiAgfVxuXG4gIC8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHJhZGl1cyBvbiBsYWJlbHMuXG4gIEBpZiAkcmFkaXVzID09IHRydWUgeyBAaW5jbHVkZSByYWRpdXMoJGxhYmVsLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBhZGQgY2xvc2UgYnV0dG9ucyB0byBhbGVydHNcbi8vICRwYWRkaW5nIC0gRGVmYXVsdDogJGxhYmVsLXBhZGRpbmcsXG4vLyAkdGV4dC1zaXplIC0gRGVmYXVsdDogJGxhYmVsLWZvbnQtc2l6aW5nLFxuLy8gJGJnIC0gRGVmYXVsdDogJHByaW1hcnktY29sb3IoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbi8vICRyYWRpdXMgLSBEZWZhdWx0OiBmYWxzZSwgT3B0aW9uczogdHJ1ZSB3aGljaCBzZXRzIHJhZGl1cyB0byAkZ2xvYmFsLXJhZGl1cyAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbkBtaXhpbiBsYWJlbCgkcGFkZGluZzokbGFiZWwtcGFkZGluZywgJHRleHQtc2l6ZTokbGFiZWwtZm9udC1zaXppbmcsICRiZzokcHJpbWFyeS1jb2xvciwgJHJhZGl1czpmYWxzZSkge1xuXG4gIEBpbmNsdWRlIGxhYmVsLWJhc2U7XG4gIEBpbmNsdWRlIGxhYmVsLXNpemUoJHBhZGRpbmcsICR0ZXh0LXNpemUpO1xuICBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkYmcsICRyYWRpdXMpO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwibGFiZWxcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1sYWJlbC1jbGFzc2VzIHtcbiAgICAubGFiZWwge1xuICAgICAgQGluY2x1ZGUgbGFiZWwtYmFzZTtcbiAgICAgIEBpbmNsdWRlIGxhYmVsLXNpemU7XG4gICAgICBAaW5jbHVkZSBsYWJlbC1zdHlsZTtcblxuICAgICAgJi5yYWRpdXMgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZShmYWxzZSwgdHJ1ZSk7IH1cbiAgICAgICYucm91bmQgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZShmYWxzZSwgJHJhZGl1czoxMDAwcHgpOyB9XG5cbiAgICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJGFsZXJ0LWNvbG9yKTsgfVxuICAgICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkd2FybmluZy1jb2xvcik7IH1cbiAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJHN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRzZWNvbmRhcnktY29sb3IpOyB9XG4gICAgICAmLmluZm8gICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRpbmZvLWNvbG9yKTsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW1hZ2VsbGFuLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJG1hZ2VsbGFuLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbWFnZWxsYW4tcGFkZGluZzogMTBweCAhZGVmYXVsdDtcblxuQGluY2x1ZGUgZXhwb3J0cyhcIm1hZ2VsbGFuXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbWFnZWxsYW4tY2xhc3NlcyB7XG5cbiAgICAje2RhdGEoJ21hZ2VsbGFuLWV4cGVkaXRpb24nKX0sICN7ZGF0YSgnbWFnZWxsYW4tZXhwZWRpdGlvbi1jbG9uZScpfSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWFnZWxsYW4tYmc7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAkbWFnZWxsYW4tcGFkZGluZztcbiAgICAgIHotaW5kZXg6IDUwO1xuXG4gICAgICAuc3ViLW5hdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGRkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtb3JiaXQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgY2FwdGlvbiBzdHlsZXNcbiRvcmJpdC1jb250YWluZXItYmc6IG5vbmUgIWRlZmF1bHQ7XG4kb3JiaXQtY2FwdGlvbi1iZzogcmdiYSg1MSw1MSw1MSwgLjgpICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kb3JiaXQtY2FwdGlvbi1wb3NpdGlvbjogXCJib3R0b21cIiAhZGVmYXVsdDsgLy8gU3VwcG9ydGVkIHZhbHVlczogXCJib3R0b21cIiwgXCJ1bmRlclwiXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiByZW0tY2FsYygxMCAxNCkgIWRlZmF1bHQ7XG4kb3JiaXQtY2FwdGlvbi1oZWlnaHQ6IGF1dG8gIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBsZWZ0L3JpZ2h0IG5hdiBzdHlsZXNcbiRvcmJpdC1uYXYtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG9yYml0LW5hdi1iZy1ob3ZlcjogcmdiYSgwLDAsMCwwLjMpICFkZWZhdWx0O1xuJG9yYml0LW5hdi1hcnJvdy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgdGltZXIgc3R5bGVzXG4kb3JiaXQtdGltZXItYmc6IHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAhZGVmYXVsdDtcbiRvcmJpdC10aW1lci1zaG93LXByb2dyZXNzLWJhcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJ1bGxldCBuYXYgc3R5bGVzXG4kb3JiaXQtYnVsbGV0LW5hdi1jb2xvcjogJGlyb24gIWRlZmF1bHQ7XG4kb3JiaXQtYnVsbGV0LW5hdi1jb2xvci1hY3RpdmU6ICRhbHVtaW51bSAhZGVmYXVsdDtcbiRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYyg5KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2xzIHRoZSBzdHlsZSBvZiBzbGlkZSBudW1iZXJzXG4kb3JiaXQtc2xpZGUtbnVtYmVyLWJnOiByZ2JhKDAsMCwwLDApICFkZWZhdWx0O1xuJG9yYml0LXNsaWRlLW51bWJlci1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kb3JiaXQtc2xpZGUtbnVtYmVyLXBhZGRpbmc6IHJlbS1jYWxjKDUpICFkZWZhdWx0O1xuXG4vLyBHcmFjZWZ1bCBMb2FkaW5nIFdyYXBwZXIgYW5kIHByZWxvYWRlclxuJHdyYXBwZXItY2xhc3M6IFwic2xpZGVzaG93LXdyYXBwZXJcIiAhZGVmYXVsdDtcbiRwcmVsb2FkZXItY2xhc3M6IFwicHJlbG9hZGVyXCIgIWRlZmF1bHQ7XG5cbi8vIEhpZGUgY29udHJvbHMgb24gc21hbGxcbiRvcmJpdC1uYXYtaGlkZS1mb3Itc21hbGw6IHRydWUgIWRlZmF1bHQ7XG4kb3JiaXQtYnVsbGV0LWhpZGUtZm9yLXNtYWxsOiB0cnVlICFkZWZhdWx0O1xuJG9yYml0LXRpbWVyLWhpZGUtZm9yLXNtYWxsOiB0cnVlICFkZWZhdWx0O1xuXG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJvcmJpdFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXMge1xuXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZSB7XG4gICAgICBmcm9tIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gICAgICBmcm9tIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBPcmJpdCBHcmFjZWZ1bCBMb2FkaW5nICovXG4gICAgLiN7JHdyYXBwZXItY2xhc3N9IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgdWwge1xuICAgICAgICAvLyBQcmV2ZW50IGJ1bGxldHMgc2hvd2luZyBiZWZvcmUgLm9yYml0LWNvbnRhaW5lciBpcyBsb2FkZWRcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgLy8gSGlkZSBhbGwgbGlzdCBpdGVtc1xuICAgICAgICBsaSxcbiAgICAgICAgbGkgLm9yYml0LWNhcHRpb24geyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgLy8gLi4uZXhjZXB0IGZvciB0aGUgZmlyc3Qgb25lXG4gICAgICAgIGxpOmZpcnN0LWNoaWxkIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIH1cblxuICAgICAgLm9yYml0LWNvbnRhaW5lciB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC8vIFNob3cgaW1hZ2VzIHdoZW4gLm9yYml0LWNvbnRhaW5lciBpcyBsb2FkZWRcbiAgICAgICAgbGkgeyBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgfVxuICAgICAgICAub3JiaXQtYnVsbGV0cyBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9yYml0IHByZWxvYWRlclxuICAgICAgLiN7JHByZWxvYWRlci1jbGFzc30ge1xuICAgICAgICBAaW5jbHVkZSByYWRpdXMoMTAwMHB4KTtcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjaGFyY29hbCAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogc29saWQgM3B4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb3JiaXQtY29udGFpbmVyLWJnO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC8vIFByZXZlbnRzIGltYWdlcyAoYW5kIGNhcHRpb25zKSBmcm9tIGRpc2FwcGVhcmluZyBhZnRlciBmaXJzdCByb3RhdGlvbiBvbiBDaHJvbWUgZm9yIEFuZHJvaWRcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblxuICAgICAgICBpbWcgeyBkaXNwbGF5OiBibG9jazsgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9yYml0LWNhcHRpb24ge1xuICAgICAgICAgICAgQGlmICRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgJG9yYml0LWNhcHRpb24tcG9zaXRpb24gPT0gXCJ1bmRlclwiIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkb3JiaXQtY2FwdGlvbi1mb250LWNvbG9yO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkb3JiaXQtY2FwdGlvbi1mb250LXNpemU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkb3JiaXQtY2FwdGlvbi1wYWRkaW5nO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmJpdC1zbGlkZS1udW1iZXIge1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJG9yYml0LXNsaWRlLW51bWJlci1iZztcbiAgICAgICAgY29sb3I6ICRvcmJpdC1zbGlkZS1udW1iZXItZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHNwYW4geyBmb250LXdlaWdodDogNzAwOyBwYWRkaW5nOiAkb3JiaXQtc2xpZGUtbnVtYmVyLXBhZGRpbmc7fVxuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgfVxuXG4gICAgICAub3JiaXQtdGltZXIge1xuICAgICAgICBcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBcblxuICAgICAgICAub3JiaXQtcHJvZ3Jlc3Mge1xuICAgICAgICAgIEBpZiAkb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtdGltZXItYmc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBsYXkgYnV0dG9uXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBhdXNlIGJ1dHRvblxuICAgICAgICAmLnBhdXNlZCB7XG4gICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBib3JkZXI6IGluc2V0IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTRweDtcblxuICAgICAgICAgICAgJi5kYXJrIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRvaWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuXG4gICAgICAmOmhvdmVyIC5vcmJpdC10aW1lciA+IHNwYW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgICAvLyBMZXQncyBnZXQgdGhvc2UgY29udHJvbHMgdG8gYmUgcmlnaHQgaW4gdGhlIGNlbnRlciBvbiBlYWNoIHNpZGVcbiAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgLm9yYml0LW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtbmF2LWJnO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogNDUlO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LW5hdi1iZy1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXI6IGluc2V0IDEwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LXByZXYgeyAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LW5leHQgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvcjtcbiAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLTRweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9yYml0LWJ1bGxldHMtY29udGFpbmVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm9yYml0LWJ1bGxldHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0b3A6IDEwcHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJG9yYml0LWJ1bGxldC1uYXYtY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvLyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtcmFkaXVzO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNnB4O1xuICAgICAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1yYWRpdXM7XG5cbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1idWxsZXQtbmF2LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvdWNoIHtcbiAgICAgIC5vcmJpdC1jb250YWluZXIge1xuICAgICAgICAub3JiaXQtcHJldixcbiAgICAgICAgLm9yYml0LW5leHQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG5cbiAgICAgIC5vcmJpdC1idWxsZXRzIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cblxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuXG4gICAgICAudG91Y2gge1xuICAgICAgICAub3JiaXQtY29udGFpbmVyIHtcbiAgICAgICAgICAub3JiaXQtcHJldixcbiAgICAgICAgICAub3JiaXQtbmV4dCB7IGRpc3BsYXk6IGluaGVyaXQ7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmJpdC1idWxsZXRzIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAub3JiaXQtc3RhY2stb24tc21hbGwge1xuICAgICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7fVxuICAgICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciA+ICoge1xuICAgICAgICAgIG1hcmdpbjowICAhaW1wb3J0YW50O1xuICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkb3JiaXQtdGltZXItaGlkZS1mb3Itc21hbGwge1xuICAgICAgICAgLm9yYml0LXRpbWVye2Rpc3BsYXk6IG5vbmU7fVxuICAgICAgfVxuICAgICAgQGlmICRvcmJpdC1uYXYtaGlkZS1mb3Itc21hbGwge1xuICAgICAgICAgLm9yYml0LW5leHQsLm9yYml0LXByZXZ7ZGlzcGxheTogbm9uZTt9XG4gICAgICB9XG4gICAgICBAaWYgJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbCB7XG4gICAgICAgICAub3JiaXQtYnVsbGV0c3tkaXNwbGF5OiBub25lO31cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtcGFnaW5hdGlvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwYWdpbmF0aW9uIGNvbnRhaW5lclxuJHBhZ2luYXRpb24taGVpZ2h0OiByZW0tY2FsYygyNCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW46IHJlbS1jYWxjKC01KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbGlzdC1pdGVtIHByb3BlcnRpZXNcbiRwYWdpbmF0aW9uLWxpLWZsb2F0OiAkZGVmYXVsdC1mbG9hdCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpLWhlaWdodDogcmVtLWNhbGMoMjQpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGktZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGktbWFyZ2luOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciB0aGUgcGFnaW5hdGlvbiBhbmNob3IgbGlua3NcbiRwYWdpbmF0aW9uLWxpbmstcGFkOiByZW0tY2FsYygxIDEwIDEpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMTAlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciBkaXNhYmxlZCBhbmNob3IgbGlua3NcbiRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtY3Vyc29yOiBkZWZhdWx0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1mb250LWNvbG9yOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgY3VycmVudGx5IHNlbGVjdGVkIGFuY2hvciBsaW5rc1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtY3Vyc29yOiBkZWZhdWx0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBTdHlsZSB0aGUgcGFnaW5hdGlvbiBjb250YWluZXIuIEN1cnJlbnRseSBvbmx5IHVzZWQgd2hlbiBjZW50ZXJpbmcgZWxlbWVudHMuXG4vLyAkY2VudGVyIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWVcbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lcigkY2VudGVyOmZhbHNlKSB7XG4gIEBpZiAkY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG59XG5cbi8vIEBtaXhpbnNcbi8vIFN0eWxlIHVuYXZhaWxhYmxlIGxpc3QgaXRlbXNcbkBtaXhpbiBwYWdpbmF0aW9uLXVuYXZhaWxhYmxlLWl0ZW0ge1xuICBhLCBidXR0b24ge1xuICAgIGN1cnNvcjogJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1jdXJzb3I7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtZm9udC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAmOmhvdmVyIGEsXG4gICYgYTpmb2N1cyxcblxuICAmOmhvdmVyIGJ1dHRvbixcbiAgJiBidXR0b246Zm9jdXNcbiAgeyBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTsgfVxufVxuLy8gQG1peGluc1xuLy8gU3R5bGUgdGhlIGN1cnJlbnQgbGlzdCBpdGVtLiBEbyBub3QgYXNzdW1lIHRoYXQgdGhlIGN1cnJlbnQgaXRlbSBoYXNcbi8vIGFuIGFuY2hvciA8YT4gZWxlbWVudC5cbi8vICRoYXMtYW5jaG9yIC0gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2VcbkBtaXhpbiBwYWdpbmF0aW9uLWN1cnJlbnQtaXRlbSgkaGFzLWFuY2hvcjogdHJ1ZSkge1xuICBAaWYgJGhhcy1hbmNob3Ige1xuICAgIGEsIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC1jb2xvcjtcbiAgICAgIGN1cnNvcjogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWN1cnNvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC13ZWlnaHQ7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzsgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWN1cnNvcjtcbiAgICBmb250LXdlaWdodDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtd2VpZ2h0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1saW5rLXBhZDtcbiAgICBAaW5jbHVkZSByYWRpdXM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYWN0aXZlLWJnOyB9XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHNldCB0aGUgcHJvcGVydGllcyBmb3IgdGhlIGNyZWF0aW5nIEZvdW5kYXRpb24gcGFnaW5hdGlvblxuLy8gJGNlbnRlciAtIExlZnQgb3IgY2VudGVyIGFsaWduIHRoZSBsaSBlbGVtZW50cy4gRGVmYXVsdDogZmFsc2Vcbi8vICRiYXNlLXN0eWxlIC0gU2V0cyBiYXNlIHN0eWxlcyBmb3IgcGFnaW5hdGlvbi4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICR1c2UtZGVmYXVsdC1jbGFzc2VzIC0gTWFrZXMgdW5hdmFpbGFibGUgJiBjdXJyZW50IGNsYXNzZXMgYXZhaWxhYmxlIGZvciB1c2UuIERlZmF1bHQ6IHRydWVcbkBtaXhpbiBwYWdpbmF0aW9uKCRjZW50ZXI6ZmFsc2UsICRiYXNlLXN0eWxlOnRydWUsICR1c2UtZGVmYXVsdC1jbGFzc2VzOnRydWUpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHBhZ2luYXRpb24tbWFyZ2luO1xuICAgIG1pbi1oZWlnaHQ6ICRwYWdpbmF0aW9uLWhlaWdodDtcblxuICAgIGxpIHtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1saS1mb250LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkcGFnaW5hdGlvbi1saS1mb250LXNpemU7XG4gICAgICBoZWlnaHQ6ICRwYWdpbmF0aW9uLWxpLWhlaWdodDtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHBhZ2luYXRpb24tbGktbWFyZ2luO1xuXG4gICAgICBhLCBidXR0b24ge1xuICAgICAgICBAaW5jbHVkZSByYWRpdXM7XG4gICAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1saW5rLXBhZDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciBhLFxuICAgICAgYTpmb2N1cyxcbiAgICAgICY6aG92ZXIgYnV0dG9uLFxuICAgICAgYnV0dG9uOmZvY3VzXG4gICAgICB7IGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWxpbmstYWN0aXZlLWJnOyB9XG5cbiAgICAgIEBpZiAkdXNlLWRlZmF1bHQtY2xhc3NlcyB7XG4gICAgICAgICYudW5hdmFpbGFibGUgeyBAaW5jbHVkZSBwYWdpbmF0aW9uLXVuYXZhaWxhYmxlLWl0ZW0oKTsgfVxuICAgICAgICAmLmN1cnJlbnQgeyBAaW5jbHVkZSBwYWdpbmF0aW9uLWN1cnJlbnQtaXRlbSgpOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGVmdCBvciBjZW50ZXIgYWxpZ24gdGhlIGxpIGVsZW1lbnRzXG4gIGxpIHtcbiAgICBAaWYgJGNlbnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6ICRwYWdpbmF0aW9uLWxpLWZsb2F0O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwicGFnaW5hdGlvblwiKSB7XG4gIEBpZiAkaW5jbHVkZS1wYWdpbmF0aW9uLWNsYXNzZXMge1xuICAgIHVsLnBhZ2luYXRpb24ge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbjtcbiAgICB9XG5cbiAgICAvKiBQYWdpbmF0aW9uIGNlbnRyZWQgd3JhcHBlciAqL1xuICAgIC5wYWdpbmF0aW9uLWNlbnRlcmVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyKHRydWUpO1xuXG4gICAgICB1bC5wYWdpbmF0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbih0cnVlLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtcGFuZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHN0eWxlc1xuJHBhbmVsLWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJGNhbGxvdXQtcGFuZWwtYmc6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA5NCUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyAlIHRvIGNvbnRyb2wgaG93IG11Y2ggd2UgZGFya2VuIHRoaW5ncyBvbiBob3ZlclxuJHBhbmVsLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHBhbmVsLWJnLCAkbGlnaHRuZXNzOiAtMTElKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCBkZWZhdWx0IGlubmVyIHBhZGRpbmcgYW5kIGJvdHRvbSBtYXJnaW5cbiRwYW5lbC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kcGFuZWwtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgZm9udCBjb2xvcnNcbiRwYW5lbC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJHBhbmVsLWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1oZWFkZXItYWRqdXN0OiB0cnVlICFkZWZhdWx0O1xuJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHBhbmVscy5cbi8vICRiZyAtIFNldHMgdGhlIHBhbmVsIGJhY2tncm91bmQgY29sb3IuIERlZmF1bHQ6ICRwYW5lbC1wZyB8fCBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHRcbi8vICRwYWRkaW5nIC0gU2V0cyB0aGUgcGFuZWwgcGFkZGluZyBhbW91bnQuIERlZmF1bHQ6ICRwYW5lbC1wYWRkaW5nIHx8IHJlbS1jYWxjKDIwKVxuLy8gJGFkanVzdCAtIFNldHMgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gdGhlIGRhcmtuZXNzIG9mIHRoZSBiZyAmIHJlc2V0cyBoZWFkZXIgbGluZS1oZWlnaHRzIGZvciBwYW5lbHMuIERlZmF1bHQ6ICRwYW5lbC1oZWFkZXItYWRqdXN0IHx8IHRydWVcbkBtaXhpbiBwYW5lbCgkYmc6JHBhbmVsLWJnLCAkcGFkZGluZzokcGFuZWwtcGFkZGluZywgJGFkanVzdDokcGFuZWwtaGVhZGVyLWFkanVzdCwgJGJvcmRlcjp0cnVlKSB7XG5cbiAgQGlmICRiZyB7XG4gICAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG5cbiAgICBAaWYgJGJvcmRlciB7XG4gICAgICBib3JkZXItc3R5bGU6ICRwYW5lbC1ib3JkZXItc3R5bGU7XG4gICAgICBib3JkZXItd2lkdGg6ICRwYW5lbC1ib3JkZXItc2l6ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhbmVsLWJvcmRlci1jb2xvcjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG5cbiAgICBtYXJnaW4tYm90dG9tOiAkcGFuZWwtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA+PSA1MCUgeyBjb2xvcjogJHBhbmVsLWZvbnQtY29sb3I7IH1cbiAgICBAZWxzZSB7IGNvbG9yOiAkcGFuZWwtZm9udC1jb2xvci1hbHQ7IH1cblxuICAgIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gICAgPiA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG4gICAgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAgIEBpZiAkYWRqdXN0IHtcbiAgICAgIC8vIFdlIHNldCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiB0aGUgZGFya25lc3Mgb2YgdGhlIGJnLlxuICAgICAgQGlmICRiZy1saWdodG5lc3MgPj0gNTAlIHtcbiAgICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgbGksIGRsIHsgY29sb3I6ICRwYW5lbC1mb250LWNvbG9yOyB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGxpLCBkbCB7IGNvbG9yOiAkcGFuZWwtZm9udC1jb2xvci1hbHQ7IH1cbiAgICAgIH1cblxuICAgICAgLy8gcmVzZXQgaGVhZGVyIGxpbmUtaGVpZ2h0cyBmb3IgcGFuZWxzXG4gICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAvIDI7XG4gICAgICAgICYuc3ViaGVhZGVyIHsgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwicGFuZWxcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1wYW5lbC1jbGFzc2VzIHtcblxuICAgIC8qIFBhbmVscyAqL1xuICAgIC5wYW5lbCB7IEBpbmNsdWRlIHBhbmVsO1xuXG4gICAgICAmLmNhbGxvdXQge1xuICAgICAgICBAaW5jbHVkZSBwYW5lbCgkY2FsbG91dC1wYW5lbC1iZyk7XG4gICAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICBjb2xvcjogJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvcjtcblxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5yYWRpdXMge1xuICAgICAgICBAaW5jbHVkZSByYWRpdXM7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLXByaWNpbmctY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBib3JkZXIgY29sb3JcbiRwcmljZS10YWJsZS1ib3JkZXI6IHNvbGlkIDFweCAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBib3R0b20gbWFyZ2luIG9mIHRoZSBwcmljaW5nIHRhYmxlXG4kcHJpY2UtdGFibGUtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgdGl0bGUgc3R5bGVzXG4kcHJpY2UtdGl0bGUtYmc6ICRvaWwgIWRlZmF1bHQ7XG4kcHJpY2UtdGl0bGUtcGFkZGluZzogcmVtLWNhbGMoMTUgMjApICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG4kcHJpY2UtdGl0bGUtY29sb3I6ICRzbW9rZSAhZGVmYXVsdDtcbiRwcmljZS10aXRsZS13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kcHJpY2UtdGl0bGUtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHByaWNlIHN0eWxlc1xuJHByaWNlLW1vbmV5LWJnOiAkdmFwb3IgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktcGFkZGluZzogcmVtLWNhbGMoMTUgMjApICFkZWZhdWx0O1xuJHByaWNlLW1vbmV5LWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHByaWNlLW1vbmV5LXNpemU6IHJlbS1jYWxjKDMyKSAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGRlc2NyaXB0aW9uIHN0eWxlc1xuJHByaWNlLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy1jb2xvcjogJG1vbnNvb24gIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy1wYWRkaW5nOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtYm90dG9tLWJvcmRlcjogZG90dGVkIDFweCAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGlzdCBpdGVtIHN0eWxlc1xuJHByaWNlLWl0ZW0tY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS1wYWRkaW5nOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS1ib3R0b20tYm9yZGVyOiBkb3R0ZWQgMXB4ICRnYWluc2Jvcm8gIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBDVEEgYXJlYSBzdHlsZXNcbiRwcmljZS1jdGEtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiRwcmljZS1jdGEtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1jdGEtcGFkZGluZzogcmVtLWNhbGMoMjAgMjAgMCkgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgdGhlIGNvbnRhaW5lciBlbGVtZW50IGZvciB0aGUgcHJpY2luZyB0YWJsZXNcbkBtaXhpbiBwcmljaW5nLXRhYmxlLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogJHByaWNlLXRhYmxlLWJvcmRlcjtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcHJpY2UtdGFibGUtbWFyZ2luLWJvdHRvbTtcblxuICAmICoge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIHByaWNpbmcgdGFibGUgdGl0bGUgc3R5bGVzXG5AbWl4aW4gcHJpY2luZy10YWJsZS10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS10aXRsZS1iZztcbiAgY29sb3I6ICRwcmljZS10aXRsZS1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRwcmljZS10aXRsZS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkcHJpY2UtdGl0bGUtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRwcmljZS10aXRsZS13ZWlnaHQ7XG4gIHBhZGRpbmc6ICRwcmljZS10aXRsZS1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiAkcHJpY2UtdGl0bGUtYWxpZ247XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjb250cm9sIHRoZSBwcmljaW5nIHRhYmxlIHByaWNlIHN0eWxlc1xuQG1peGluIHByaWNpbmctdGFibGUtcHJpY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtbW9uZXktYmc7XG4gIGNvbG9yOiAkcHJpY2UtbW9uZXktY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkcHJpY2UtbW9uZXktZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJHByaWNlLW1vbmV5LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtbW9uZXktd2VpZ2h0O1xuICBwYWRkaW5nOiAkcHJpY2UtbW9uZXktcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLW1vbmV5LWFsaWduO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXMgZm9yIHRoZSBwcmljaW5nIHRhYmxlXG5AbWl4aW4gcHJpY2luZy10YWJsZS1kZXNjcmlwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHByaWNlLWRlc2MtYm90dG9tLWJvcmRlcjtcbiAgY29sb3I6ICRwcmljZS1kZXNjLWNvbG9yO1xuICBmb250LXNpemU6ICRwcmljZS1kZXNjLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRwcmljZS1kZXNjLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRwcmljZS1kZXNjLWxpbmUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkcHJpY2UtZGVzYy1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiAkcHJpY2UtZGVzYy1hbGlnbjtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHN0eWxlIHRoZSBidWxsZXQgaXRlbXMgaW4gdGhlIHByaWNpbmcgdGFibGVcbkBtaXhpbiBwcmljaW5nLXRhYmxlLWJ1bGxldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHByaWNlLWl0ZW0tYm90dG9tLWJvcmRlcjtcbiAgY29sb3I6ICRwcmljZS1pdGVtLWNvbG9yO1xuICBmb250LXNpemU6ICRwcmljZS1pdGVtLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRwcmljZS1pdGVtLXdlaWdodDtcbiAgcGFkZGluZzogJHByaWNlLWl0ZW0tcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLWl0ZW0tYWxpZ247XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzdHlsZSB0aGUgQ1RBIGFyZWEgb2YgdGhlIHByaWNpbmcgdGFibGVzXG5AbWl4aW4gcHJpY2luZy10YWJsZS1jdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtY3RhLWJnO1xuICBwYWRkaW5nOiAkcHJpY2UtY3RhLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246ICRwcmljZS1jdGEtYWxpZ247XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJwcmljaW5nLXRhYmxlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtcHJpY2luZy1jbGFzc2VzIHtcblxuICAgIC8qIFByaWNpbmcgVGFibGVzICovXG4gICAgLnByaWNpbmctdGFibGUge1xuICAgICAgQGluY2x1ZGUgcHJpY2luZy10YWJsZS1jb250YWluZXI7XG5cbiAgICAgIC50aXRsZSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtdGl0bGU7IH1cbiAgICAgIC5wcmljZSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtcHJpY2U7IH1cbiAgICAgIC5kZXNjcmlwdGlvbiB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtZGVzY3JpcHRpb247IH1cbiAgICAgIC5idWxsZXQtaXRlbSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtYnVsbGV0OyB9XG4gICAgICAuY3RhLWJ1dHRvbiB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtY3RhOyB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgcHJvZ3Jlc3MgYmFyIGhlaWdodFxuJHByb2dyZXNzLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDI1KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICR2YXBvciAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcbiRwcm9ncmVzcy1iYXItYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IDIwJSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbWFyZ2luICYgcGFkZGluZ1xuJHByb2dyZXNzLWJhci1wYWQ6IHJlbS1jYWxjKDIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIG1ldGVyIGNvbG9yc1xuJHByb2dyZXNzLW1ldGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1tZXRlci1zZWNvbmRhcnktY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtbWV0ZXItc3VjY2Vzcy1jb2xvcjogJHN1Y2Nlc3MtY29sb3IgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtbWV0ZXItYWxlcnQtY29sb3I6ICRhbGVydC1jb2xvciAhZGVmYXVsdDtcblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB1cCB0aGUgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lclxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIGJvcmRlcjogJHByb2dyZXNzLWJhci1ib3JkZXItc2l6ZSAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1zdHlsZSAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcjtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtYmFyLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLWJhci1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nOiAkcHJvZ3Jlc3MtYmFyLXBhZDtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vICRiZyAtIERlZmF1bHQ6ICRwcm9ncmVzcy1tZXRlci1jb2xvciB8fCAkcHJpbWFyeS1jb2xvclxuQG1peGluIHByb2dyZXNzLW1ldGVyKCRiZzokcHJvZ3Jlc3MtbWV0ZXItY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDAlO1xufVxuXG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJwcm9ncmVzcy1iYXJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzIHtcblxuICAgIC8qIFByb2dyZXNzIEJhciAqL1xuICAgIC5wcm9ncmVzcyB7XG4gICAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICAgIC8vIE1ldGVyXG4gICAgICAubWV0ZXIge1xuICAgICAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcblxuICAgICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyKCRiZzokcHJvZ3Jlc3MtbWV0ZXItc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgICAmLnN1Y2Nlc3MgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLXN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yKTsgfVxuICAgICAgfVxuICAgICAgJi5zZWNvbmRhcnkgLm1ldGVyIHsgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXIoJGJnOiRwcm9ncmVzcy1tZXRlci1zZWNvbmRhcnktY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgLm1ldGVyIHsgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXIoJGJnOiRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgJi5hbGVydCAubWV0ZXIgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yKTsgfVxuXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcHJvZ3Jlc3MtYmFyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAubWV0ZXIgeyBAaW5jbHVkZSByYWRpdXMoJHByb2dyZXNzLWJhci1ib3JkZXItcmFkaXVzIC0gMSk7IH1cbiAgICAgIH1cblxuICAgICAgJi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygxMDAwcHgpO1xuICAgICAgICAubWV0ZXIgeyBAaW5jbHVkZSByYWRpdXMoOTk5cHgpOyB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2dyaWQnO1xuXG4vL1xuLy8gQG5hbWUgX3JldmVhbC5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1yZXZlYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3R5bGUgb2YgdGhlIHJldmVhbCBvdmVybGF5LlxuJHJldmVhbC1vdmVybGF5LWJnOiByZ2JhKCRibGFjaywgLjQ1KSAhZGVmYXVsdDtcbiRyZXZlYWwtb3ZlcmxheS1iZy1vbGQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN0eWxlIG9mIHRoZSBtb2RhbCBpdHNlbGYuXG4kcmV2ZWFsLW1vZGFsLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcmV2ZWFsLXBvc2l0aW9uLXRvcDogcmVtLWNhbGMoMTAwKSAhZGVmYXVsdDtcbiRyZXZlYWwtZGVmYXVsdC13aWR0aDogODAlICFkZWZhdWx0O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRyb3ctd2lkdGggIWRlZmF1bHQ7XG4kcmV2ZWFsLW1vZGFsLXBhZGRpbmc6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcbiRyZXZlYWwtYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssLjQpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHJldmVhbCBjbG9zZSBidXR0b25cbiRyZXZlYWwtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYyg0MCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXRvcDogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJHJldmVhbC1jbG9zZS1zaWRlOiByZW0tY2FsYygyMikgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLWNvbG9yOiAkYmFzZSAhZGVmYXVsdDtcbiRyZXZlYWwtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kcmV2ZWFsLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtb2RhbCBib3JkZXJcbiRyZXZlYWwtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRyZXZlYWwtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kcmV2ZWFsLWJvcmRlci1jb2xvcjogJHN0ZWVsICFkZWZhdWx0O1xuXG4kcmV2ZWFsLW1vZGFsLWNsYXNzOiBcInJldmVhbC1tb2RhbFwiICFkZWZhdWx0O1xuJGNsb3NlLXJldmVhbC1tb2RhbC1jbGFzczogXCJjbG9zZS1yZXZlYWwtbW9kYWxcIiAhZGVmYXVsdDtcblxuLy8gU2V0IGJhc2Ugei1pbmRleFxuJHotaW5kZXgtYmFzZTogMTAwNTtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgcmV2ZWFsIGJhY2tncm91bmQgb3ZlcmxheSBzdHlsZXNcbkBtaXhpbiByZXZlYWwtYmcoICRpbmNsdWRlLXotaW5kZXgtdmFsdWU6IHRydWUgKSB7XG4gIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLy8gYWxsb3dzIG1vZGFsIGJhY2tncm91bmQgdG8gZXh0ZW5kIGJleW9uZCB3aW5kb3cgcG9zaXRpb25cbiAgYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJnLW9sZDsgLy8gQXV0b3ByZWZpeGVyIHNob3VsZCBiZSB1c2VkIHRvIGF2b2lkIHN1Y2ggdmFyaWFibGVzIG5lZWRlZCB3aGVuIEZvdW5kYXRpb24gZm9yIFNpdGVzIGNhbiBkbyBzbyBpbiB0aGUgbmVhciBmdXR1cmUuXG4gIGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iZztcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IGlmKCAkaW5jbHVkZS16LWluZGV4LXZhbHVlLCAkei1pbmRleC1iYXNlIC0gMSwgYXV0byApO1xuICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBzdHJ1Y3R1cmUgb2YgYSByZXZlYWwgbW9kYWxcbi8vXG4vLyAkYmFzZS1zdHlsZSAtIFByb3ZpZGVzIHJldmVhbCBiYXNlIHN0eWxlcywgY2FuIGJlIHNldCB0byBmYWxzZSB0byBvdmVycmlkZS4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICR3aWR0aCAtIFNldHMgcmV2ZWFsIHdpZHRoIERlZmF1bHQ6ICRyZXZlYWwtZGVmYXVsdC13aWR0aCB8fCA4MCVcbi8vXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2UoICRiYXNlLXN0eWxlOiB0cnVlLCAkd2lkdGg6JHJldmVhbC1kZWZhdWx0LXdpZHRoLCAkbWF4LXdpZHRoOiRyZXZlYWwtbWF4LXdpZHRoLCAkYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXMpIHtcbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogJHotaW5kZXgtYmFzZTtcbiAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICBtaW4taGVpZ2h0OjEwMHZoO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHsgbWluLXdpZHRoOiAwOyB9XG5cbiAgICAvLyBHZXQgcmlkIG9mIG1hcmdpbiBmcm9tIGZpcnN0IGFuZCBsYXN0IGVsZW1lbnQgaW5zaWRlIG1vZGFsXG4gICAgPiA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG5cbiAgQGlmICR3aWR0aCB7XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogJHdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgcmV2ZWFsIG1vZGFsIGRlZmF1bHRzXG4vL1xuLy8gJGJnIC0gU2V0cyBiYWNrZ3JvdW5kIGNvbG9yIG9mIHJldmVhbCBtb2RhbC4gRGVmYXVsdDogJHJldmVhbC1tb2RhbC1iZyB8fCAkd2hpdGVcbi8vICRwYWRkaW5nIC0gUGFkZGluZyB0byBhcHBseSB0byByZXZlYWwgbW9kYWwuIERlZmF1bHQ6ICRyZXZlYWwtbW9kYWwtcGFkZGluZy5cbi8vICRib3JkZXIgLSBDaG9vc2Ugd2hldGhlciByZXZlYWwgdXNlcyBhIGJvcmRlci4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICRib3JkZXItc3R5bGUgLSBTZXQgcmV2ZWFsIGJvcmRlciBzdHlsZS4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItc3R5bGUgfHwgc29saWRcbi8vICRib3JkZXItd2lkdGggLSBXaWR0aCBvZiBib3JkZXIgKGkuZS4gMXB4KS4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItd2lkdGguXG4vLyAkYm9yZGVyLWNvbG9yIC0gQ29sb3Igb2YgYm9yZGVyLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci1jb2xvci5cbi8vICRib3gtc2hhZG93IC0gQ2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICRyYWRpdXMgLSBJZiB0cnVlLCBzZXQgdG8gbW9kYWwgcmFkaXVzIHdoaWNoIGlzICRnbG9iYWwtcmFkaXVzIHx8IGV4cGxpY2l0bHkgc2V0IHJhZGl1cyBhbW91bnQgaW4gcHggKGV4LiAkcmFkaXVzOjEwcHgpLiBEZWZhdWx0OiBmYWxzZVxuLy8gJHRvcC1vZmZzZXQgLSBEZWZhdWx0OiAkcmV2ZWFsLXBvc2l0aW9uLXRvcCB8fCA1MHB4XG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXN0eWxlKFxuICAkYmc6ZmFsc2UsXG4gICRwYWRkaW5nOmZhbHNlLFxuICAkYm9yZGVyOmZhbHNlLFxuICAkYm9yZGVyLXN0eWxlOiRyZXZlYWwtYm9yZGVyLXN0eWxlLFxuICAkYm9yZGVyLXdpZHRoOiRyZXZlYWwtYm9yZGVyLXdpZHRoLFxuICAkYm9yZGVyLWNvbG9yOiRyZXZlYWwtYm9yZGVyLWNvbG9yLFxuICAkYm94LXNoYWRvdzpmYWxzZSxcbiAgJHJhZGl1czpmYWxzZSxcbiAgJHRvcC1vZmZzZXQ6ZmFsc2UpIHtcblxuICBAaWYgJGJnIHsgYmFja2dyb3VuZC1jb2xvcjogJGJnOyB9XG4gIEBpZiAkcGFkZGluZyAhPSBmYWxzZSB7IHBhZGRpbmc6ICRwYWRkaW5nOyB9XG5cbiAgQGlmICRib3JkZXIgeyBib3JkZXI6ICRib3JkZXItc3R5bGUgJGJvcmRlci13aWR0aCAkYm9yZGVyLWNvbG9yOyB9XG5cbiAgLy8gV2UgY2FuIGNob29zZSB3aGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIHRoZSBkZWZhdWx0IGJveC1zaGFkb3cuXG4gIEBpZiAkYm94LXNoYWRvdyB7XG4gICAgYm94LXNoYWRvdzogJHJldmVhbC1ib3gtc2hhZG93O1xuICB9XG4gIEBlbHNle1xuICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvLyBXZSBjYW4gY29udHJvbCBob3cgbXVjaCByYWRpdXMgaXMgdXNlZCBvbiB0aGUgbW9kYWxcbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkcmV2ZWFsLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG4gIEBpZiAkdG9wLW9mZnNldCB7XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgdG9wOiAkdG9wLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIGEgY2xvc2UgYnV0dG9uIGZvciB0aGUgcmV2ZWFsIG1vZGFsXG4vL1xuLy8gJGNvbG9yIC0gRGVmYXVsdDogJHJldmVhbC1jbG9zZS1jb2xvciB8fCAkYmFzZVxuQG1peGluIHJldmVhbC1jbG9zZSgkY29sb3I6JHJldmVhbC1jbG9zZS1jb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcbiAgZm9udC1zaXplOiAkcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRyZXZlYWwtY2xvc2Utd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRyZXZlYWwtY2xvc2UtdG9wO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkcmV2ZWFsLWNsb3NlLXNpZGU7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJyZXZlYWxcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1yZXZlYWwtY2xhc3NlcyB7XG5cbiAgICAvLyBSZXZlYWwgTW9kYWxzXG4gICAgLnJldmVhbC1tb2RhbC1iZyB7IEBpbmNsdWRlIHJldmVhbC1iZzsgfVxuXG4gICAgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoXG4gICAgICAgICRiZzokcmV2ZWFsLW1vZGFsLWJnLFxuICAgICAgICAkcGFkZGluZzokcmV2ZWFsLW1vZGFsLXBhZGRpbmcsXG4gICAgICAgICRib3JkZXI6dHJ1ZSxcbiAgICAgICAgJGJveC1zaGFkb3c6dHJ1ZSxcbiAgICAgICAgJHJhZGl1czpmYWxzZSxcbiAgICAgICAgJHRvcC1vZmZzZXQ6JHJldmVhbC1wb3NpdGlvbi10b3BcbiAgICAgICk7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRyYWRpdXM6dHJ1ZSk7IH1cbiAgICAgICYucm91bmQgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRyYWRpdXM6JHJldmVhbC1yb3VuZCk7IH1cbiAgICAgICYuY29sbGFwc2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoJHBhZGRpbmc6MCk7IH1cbiAgICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgMzAlKTsgfVxuICAgICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA0MCUpOyB9XG4gICAgICAmLm1lZGl1bSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgNjAlKTsgfVxuICAgICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA3MCUpOyB9XG4gICAgICAmLnhsYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA5NSUpOyB9XG4gICAgICAmLmZ1bGwge1xuICAgICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgMTAwJSk7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OjEwMHZoO1xuICAgICAgICB0b3A6MDtcbiAgICAgIH1cblxuICAgICAgLy8gTW9kYWxzIHB1c2hlZCB0byBiYWNrXG4gICAgICAmLnRvYmFjayB7XG4gICAgICAgIHotaW5kZXg6ICR6LWluZGV4LWJhc2UgLSAyO1xuICAgICAgfVxuXG4gICAgICAuI3skY2xvc2UtcmV2ZWFsLW1vZGFsLWNsYXNzfSB7IEBpbmNsdWRlIHJldmVhbC1jbG9zZTsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBwYWRkaW5nLlxuJHNpZGUtbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDE0IDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaXN0IHN0eWxlcy5cbiRzaWRlLW5hdi1saXN0LXR5cGU6IG5vbmUgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGlzdC1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDcgMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpbmsgc3R5bGVzLlxuJHNpZGUtbmF2LWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saW5rLWJnLWhvdmVyOiBoc2xhKDAsIDAsIDAsIC4wMjUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstbWFyZ2luOiAwICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstcGFkZGluZzogcmVtLWNhbGMoNyAxNCkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC13ZWlnaHQtYWN0aXZlOiAkc2lkZS1uYXYtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkaW5nIHN0eWxlcy5cbiRzaWRlLW5hdi1oZWFkaW5nLWNvbG9yOiAkc2lkZS1uYXYtbGluay1jb2xvciAhZGVmYXVsdDtcbiRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtc2l6ZTogJHNpZGUtbmF2LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuJHNpZGUtbmF2LWRpdmlkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTEwJSkgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHNpZGUtbmF2XG4vL1xuLy8gJGRpdmlkZXItY29sb3IgLSBCb3JkZXIgY29sb3Igb2YgZGl2aWRlci4gRGVmYXVsdDogJHNpZGUtbmF2LWRpdmlkZXItY29sb3IuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIG5hdiBpdGVtcy4gRGVmYXVsdDogJHNpZGUtbmF2LWZvbnQtc2l6ZS5cbi8vICRsaW5rLWNvbG9yIC0gQ29sb3Igb2YgbmF2aWdhdGlvbiBsaW5rcy4gRGVmYXVsdDogJHNpZGUtbmF2LWxpbmstY29sb3IuXG4vLyAkbGluay1jb2xvci1ob3ZlciAtIENvbG9yIG9mIG5hdmlnYXRpb24gbGlua3Mgd2hlbiBob3ZlcmVkLiBEZWZhdWx0OiAkc2lkZS1uYXYtbGluay1jb2xvci1ob3Zlci5cbkBtaXhpbiBzaWRlLW5hdihcbiAgJGRpdmlkZXItY29sb3I6JHNpZGUtbmF2LWRpdmlkZXItY29sb3IsXG4gICRmb250LXNpemU6JHNpZGUtbmF2LWZvbnQtc2l6ZSxcbiAgJGxpbmstY29sb3I6JHNpZGUtbmF2LWxpbmstY29sb3IsXG4gICRsaW5rLWNvbG9yLWFjdGl2ZTokc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmUsXG4gICRsaW5rLWNvbG9yLWhvdmVyOiRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyLFxuICAkbGluay1iZy1ob3Zlcjokc2lkZS1uYXYtbGluay1iZy1ob3Zlcikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRzaWRlLW5hdi1mb250LWZhbWlseTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJHNpZGUtbmF2LWxpc3QtcG9zaXRpb247XG4gIGxpc3Qtc3R5bGUtdHlwZTogJHNpZGUtbmF2LWxpc3QtdHlwZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAkc2lkZS1uYXYtcGFkZGluZztcblxuICBsaSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkc2lkZS1uYXYtZm9udC13ZWlnaHQ7XG4gICAgbWFyZ2luOiAkc2lkZS1uYXYtbGlzdC1tYXJnaW47XG5cbiAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogJHNpZGUtbmF2LWxpbmstbWFyZ2luO1xuICAgICAgcGFkZGluZzogJHNpZGUtbmF2LWxpbmstcGFkZGluZztcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbmstYmctaG92ZXI7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1ob3ZlcjtcbiAgICAgIH1cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSA+IGE6Zmlyc3QtY2hpbGQ6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAkc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU7XG4gICAgICBmb250LWZhbWlseTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkc2lkZS1uYXYtZm9udC13ZWlnaHQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuZGl2aWRlciB7XG4gICAgICBib3JkZXItdG9wOiAkc2lkZS1uYXYtZGl2aWRlci1zaXplICRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkZGl2aWRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmhlYWRpbmcge1xuICAgICAgY29sb3I6ICRzaWRlLW5hdi1oZWFkaW5nLWNvbG9yO1xuICAgICAgZm9udDoge1xuICAgICAgICBzaXplOiAkc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU7XG4gICAgICAgIHdlaWdodDogJHNpZGUtbmF2LWhlYWRpbmctZm9udC13ZWlnaHQ7XG4gICAgICB9XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzaWRlLW5hdlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcbiAgICAuc2lkZS1uYXYge0BpbmNsdWRlIHNpZGUtbmF2O31cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2J1dHRvbnMnO1xuQGltcG9ydCAnZHJvcGRvd24tYnV0dG9ucyc7XG5cbi8vXG4vLyBAbmFtZSBfc3BsaXQtYnV0dG9ucy5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9idXR0b25zLnNjc3MsIF9nbG9iYWwuc2Nzc1xuLy9cblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZGlmZmVyZW50IHNoYXJlZCBzdHlsZXMgZm9yIFNwbGl0IEJ1dHRvbnNcbiRzcGxpdC1idXR0b24tZnVuY3Rpb24tZmFjdG9yOiAxMCUgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1hY3RpdmUtYmctdGludDogcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1zcGFuLWJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aW55IHNwbGl0IGJ1dHRvbnNcbiRzcGxpdC1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDEwICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTogJGJ1dHRvbi1waXAtdG55ICogNiAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnkgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC10b3AtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAyICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk6IHJlbS1jYWxjKC02KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc21hbGwgc3BsaXQgYnV0dG9uc1xuJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogMTAgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA2ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbCAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLXRvcC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDEuNSAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtc21sOiByZW0tY2FsYygtNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1lZGl1bSBzcGxpdCBidXR0b25zXG4kc3BsaXQtYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA5ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLW1lZDogJGJ1dHRvbi1waXAtbWVkICogNS41ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtdG9wLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMS41ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1tZWQ6IHJlbS1jYWxjKC02KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGFyZ2Ugc3BsaXQgYnV0dG9uc1xuJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogOCAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1scmc6ICRidXR0b24tcGlwLWxyZyAqIDUgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNikgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC10b3AtbHJnOiAkYnV0dG9uLXBpcC1scmcgKyByZW0tY2FsYyg1KSAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbHJnOiByZW0tY2FsYygtNikgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBzcGxpdCBidXR0b25zIHRoYXQgYnVpbGQgdXBvbiB0aGUgYnV0dG9uIG1peGluc1xuLy9cbi8vICRwYWRkaW5nIC0gVHlwZSBvZiBwYWRkaW5nIHRvIGFwcGx5LiBEZWZhdWx0OiBtZWRpdW0uIE9wdGlvbnM6IHRpbnksIHNtYWxsLCBtZWRpdW0sIGxhcmdlLlxuLy8gJHBpcC1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS4gRGVmYXVsdDogJHNwbGl0LWJ1dHRvbi1waXAtY29sb3IuXG4vLyAkc3Bhbi1ib3JkZXIgLSBCb3JkZXIgY29sb3Igb2YgYnV0dG9uIGRpdmlkZXIuIERlZmF1bHQ6ICRzcGxpdC1idXR0b24tc3Bhbi1ib3JkZXItY29sb3IuXG4vLyAkYmFzZS1zdHlsZSAtIEFwcGx5IGJhc2Ugc3R5bGUgdG8gc3BsaXQgYnV0dG9uLiBEZWZhdWx0OiB0cnVlLlxuQG1peGluIHNwbGl0LWJ1dHRvbihcbiAgJHBhZGRpbmc6bWVkaXVtLFxuICAkcGlwLWNvbG9yOiRzcGxpdC1idXR0b24tcGlwLWNvbG9yLCBcbiAgJHNwYW4tYm9yZGVyOiRzcGxpdC1idXR0b24tc3Bhbi1ib3JkZXItY29sb3IsIFxuICAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgLy8gV2l0aCB0aGlzLCB3ZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB0aGUgYmFzZSBzdHlsZXMgY29tZSB0aHJvdWdoLlxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIFN0eWxpbmcgZm9yIHRoZSBzcGxpdCBhcnJvdyBjbGlja2FibGUgYXJlYVxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiBzb2xpZCAxcHg7XG5cbiAgICAgIC8vIEJ1aWxkaW5nIHRoZSB0cmlhbmdsZSBwaXAgaW5kaWNhdG9yXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBpbnNldDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiA1MCU7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogJHNwbGl0LWJ1dHRvbi1hY3RpdmUtYmctdGludDsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbnRyb2wgdGhlIGJvcmRlciBjb2xvciBmb3IgdGhlIHNwYW4gYXJlYSBvZiB0aGUgc3BsaXQgYnV0dG9uXG4gIEBpZiAkc3Bhbi1ib3JkZXIge1xuICAgIHNwYW4ge1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkc3Bhbi1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGUgb2YgdGhlIGJ1dHRvbiBhbmQgY2xpY2thYmxlIGFyZWEgZm9yIHRpbnkgc2l6ZXNcbiAgQGlmICRwYWRkaW5nID09IHRpbnkge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXRueTtcblxuICAgIHNwYW4geyB3aWR0aDogJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLXRueTtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkc3BsaXQtYnV0dG9uLXBpcC1kZWZhdWx0LWZsb2F0LXRueTtcbiAgICAgICAgdG9wOiA0OCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGUgb2YgdGhlIGJ1dHRvbiBhbmQgY2xpY2thYmxlIGFyZWEgZm9yIHNtYWxsIHNpemVzXG4gIEBlbHNlIGlmICRwYWRkaW5nID09IHNtYWxsIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRzcGxpdC1idXR0b24tcGFkZGluZy1zbWw7XG5cbiAgICBzcGFuIHsgd2lkdGg6ICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1zbWw7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1zbWw7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1zbWw7XG4gICAgICAgIHRvcDogNDglO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlIG9mIHRoZSBidXR0b24gYW5kIGNsaWNrYWJsZSBhcmVhIGZvciBkZWZhdWx0IChtZWRpdW0pIHNpemVzXG4gIEBlbHNlIGlmICRwYWRkaW5nID09IG1lZGl1bSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkc3BsaXQtYnV0dG9uLXBhZGRpbmctbWVkO1xuXG4gICAgc3BhbiB7IHdpZHRoOiAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtbWVkO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6ICRzcGxpdC1idXR0b24tcGlwLXNpemUtbWVkO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbWVkO1xuICAgICAgICB0b3A6IDQ4JTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZSBvZiB0aGUgYnV0dG9uIGFuZCBjbGlja2FibGUgYXJlYSBmb3IgbGFyZ2Ugc2l6ZXNcbiAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gbGFyZ2Uge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLWxyZztcblxuICAgIHNwYW4geyB3aWR0aDogJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLWxyZztcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZztcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkc3BsaXQtYnV0dG9uLXBpcC1kZWZhdWx0LWZsb2F0LWxyZztcbiAgICAgICAgdG9wOiA0OCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udHJvbCB0aGUgY29sb3Igb2YgdGhlIHRyaWFuZ2xlIHBpcFxuICBAaWYgJHBpcC1jb2xvciB7XG4gICAgc3BhbjphZnRlciB7IGJvcmRlci1jb2xvcjogJHBpcC1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzcGxpdC1idXR0b25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlcyB7XG5cbiAgICAuc3BsaXQuYnV0dG9uIHsgQGluY2x1ZGUgc3BsaXQtYnV0dG9uO1xuXG4gICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbihmYWxzZSwgJHNwbGl0LWJ1dHRvbi1waXAtY29sb3IsICRzcGxpdC1idXR0b24tc3Bhbi1ib3JkZXItY29sb3IsIGZhbHNlKTsgfVxuICAgICAgJi5hbGVydCB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbihmYWxzZSwgZmFsc2UsICRzcGxpdC1idXR0b24tc3Bhbi1ib3JkZXItY29sb3IsIGZhbHNlKTsgfVxuICAgICAgJi5zdWNjZXNzIHsgQGluY2x1ZGUgc3BsaXQtYnV0dG9uKGZhbHNlLCBmYWxzZSwgJHNwbGl0LWJ1dHRvbi1zcGFuLWJvcmRlci1jb2xvciwgZmFsc2UpOyB9XG5cbiAgICAgICYudGlueSB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbih0aW55LCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsgfVxuICAgICAgJi5zbWFsbCB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbihzbWFsbCwgZmFsc2UsIGZhbHNlLCBmYWxzZSk7IH1cbiAgICAgICYubGFyZ2UgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24obGFyZ2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UpOyB9XG4gICAgICAmLmV4cGFuZCB7IHBhZGRpbmctbGVmdDogMnJlbTsgfVxuXG4gICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbihmYWxzZSwgJHNwbGl0LWJ1dHRvbi1waXAtY29sb3ItYWx0LCBmYWxzZSwgZmFsc2UpOyB9XG5cbiAgICAgICYucmFkaXVzIHNwYW4geyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICAgICYucm91bmQgc3BhbiB7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sIDEwMDBweCk7IH1cbiAgICAgICYubm8tcGlwe1xuICAgICAgICBzcGFuOmJlZm9yZXsgYm9yZGVyLXN0eWxlOm5vbmU7IH1cbiAgICAgICAgc3BhbjphZnRlcnsgYm9yZGVyLXN0eWxlOm5vbmU7IH1cbiAgICAgICAgc3Bhbj5pe1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuMjg4ODllbTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMC40ODg4OWVtO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQG5hbWUgX3N1Yi1uYXYuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1hcmdpbiBhbmQgcGFkZGluZ1xuJHN1Yi1uYXYtbGlzdC1tYXJnaW46IHJlbS1jYWxjKC00IDAgMTgpICFkZWZhdWx0O1xuJHN1Yi1uYXYtbGlzdC1wYWRkaW5nLXRvcDogcmVtLWNhbGMoNCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRlZmluaXRpb25cbiRzdWItbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRzdWItbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC1jb2xvcjogJGFsdW1pbnVtICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kc3ViLW5hdi10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kc3ViLW5hdi1wYWRkaW5nOiByZW0tY2FsYygzIDE2KSAhZGVmYXVsdDtcbiRzdWItbmF2LWJvcmRlci1yYWRpdXM6IDNweCAhZGVmYXVsdDtcbiRzdWItbmF2LWZvbnQtY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRzdWItbmF2LWZvbnQtY29sb3IsICRsaWdodG5lc3M6IC0yNSUpICFkZWZhdWx0O1xuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBhY3RpdmUgaXRlbSBzdHlsZXNcblxuJHN1Yi1uYXYtYWN0aXZlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHN1Yi1uYXYtYWN0aXZlLWJnOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHN1Yi1uYXYtYWN0aXZlLXBhZGRpbmc6ICRzdWItbmF2LXBhZGRpbmcgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtY3Vyc29yOiBkZWZhdWx0ICFkZWZhdWx0O1xuXG4kc3ViLW5hdi1pdGVtLWRpdmlkZXI6IFwiXCIgIWRlZmF1bHQ7XG4kc3ViLW5hdi1pdGVtLWRpdmlkZXItbWFyZ2luOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuXG5cbi8vIENyZWF0ZSBhIHN1Yi1uYXYgaXRlbVxuLy9cbi8vICRmb250LWNvbG9yIC0gRm9udCBjb2xvci4gRGVmYXVsdDogJHN1Yi1uYXYtZm9udC1jb2xvci5cbi8vICRmb250LXNpemUgLSBGb250IHNpemUuIERlZmF1bHQ6ICRzdWItbmF2LWZvbnQtc2l6ZS5cbi8vICRhY3RpdmUtYmcgLSBCYWNrZ3JvdW5kIG9mIGFjdGl2ZSBuYXYgaXRlbS4gRGVmYXVsdDogJHN1Yi1uYXYtYWN0aXZlLWJnLlxuLy8gJGFjdGl2ZS1iZy1ob3ZlciAtIEJhY2tncm91bmQgb2YgYWN0aXZlIG5hdiBpdGVtLCB3aGVuIGhvdmVyZWQuIERlZmF1bHQ6ICRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlci5cbkBtaXhpbiBzdWItbmF2KFxuICAkZm9udC1jb2xvcjogJHN1Yi1uYXYtZm9udC1jb2xvcixcbiAgJGZvbnQtc2l6ZTogJHN1Yi1uYXYtZm9udC1zaXplLFxuICAkYWN0aXZlLWJnOiAkc3ViLW5hdi1hY3RpdmUtYmcsXG4gICRhY3RpdmUtYmctaG92ZXI6ICRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlcikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkc3ViLW5hdi1saXN0LW1hcmdpbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6ICRzdWItbmF2LWxpc3QtcGFkZGluZy10b3A7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIGR0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgZHQsXG4gIGRkLFxuICBsaSB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICBmb250LWZhbWlseTogJHN1Yi1uYXYtZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkc3ViLW5hdi1mb250LXdlaWdodDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKDE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJHN1Yi1uYXYtZm9udC1jb2xvcjtcbiAgICAgIHBhZGRpbmc6ICRzdWItbmF2LXBhZGRpbmc7XG4gICAgICB0ZXh0LWRlY29yYXRpb246ICRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIGEge1xuICAgICAgQGluY2x1ZGUgcmFkaXVzKCRzdWItbmF2LWJvcmRlci1yYWRpdXMpO1xuICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1iZztcbiAgICAgIGNvbG9yOiAkc3ViLW5hdi1hY3RpdmUtY29sb3I7XG4gICAgICBjdXJzb3I6ICRzdWItbmF2LWFjdGl2ZS1jdXJzb3I7XG4gICAgICBmb250LXdlaWdodDogJHN1Yi1uYXYtYWN0aXZlLWZvbnQtd2VpZ2h0O1xuICAgICAgcGFkZGluZzogJHN1Yi1uYXYtYWN0aXZlLXBhZGRpbmc7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWJnLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkc3ViLW5hdi1pdGVtLWRpdmlkZXIgIT0gXCJcIiB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIjeyRzdWItbmF2LWl0ZW0tZGl2aWRlcn1cIjtcbiAgICAgICAgbWFyZ2luOiAwICRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW47XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwic3ViLW5hdlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcbiAgICAuc3ViLW5hdiB7IEBpbmNsdWRlIHN1Yi1uYXY7IH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEBuYW1lXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xuLy9cblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2xsaW5nIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyXG4kc3dpdGNoLWJnOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3dpdGNoIGhlaWdodHMgZm9yIG91ciBkZWZhdWx0IGNsYXNzZXNcbiRzd2l0Y2gtaGVpZ2h0LXRueTogMS41cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQtc21sOiAxLjc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQtbWVkOiAycmVtICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQtbHJnOiAyLjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoLWJvdHRvbS1tYXJnaW46IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBzd2l0Y2gtcGFkZGxlXG4kc3dpdGNoLXBhZGRsZS1iZzogJHdoaXRlICFkZWZhdWx0O1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1zcGVlZDogLjE1cyAhZGVmYXVsdDtcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tZWFzZTogZWFzZS1vdXQgIWRlZmF1bHQ7XG4kc3dpdGNoLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgYmFzZSBzdHlsZXMgZm9yIG91ciBzd2l0Y2ggZWxlbWVudC5cbi8vXG4vLyAkdHJhbnNpdGlvbi1zcGVlZCAtIFRpbWUgaW4gbXMgZm9yIHN3aXRjaCB0byB0b2dnbGUuIERlZmF1bHQ6ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQuXG4vLyAkdHJhbnNpdGlvbi1lYXNlIC0gRWFzaW5nIGZ1bmN0aW9uIHRvIHVzZSBmb3IgYW5pbWF0aW9uIChpLmUuIGVhc2Utb3V0KS4gRGVmYXVsdDogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1lYXNlLlxuQG1peGluIHN3aXRjaC1iYXNlKFxuICAkdHJhbnNpdGlvbi1zcGVlZDokc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLXNwZWVkLFxuICAkdHJhbnNpdGlvbi1lYXNlOiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tZWFzZSkge1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogJHN3aXRjaC1ib3R0b20tbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgLy8gRGVmYXVsdCBsYWJlbCBzdHlsZXMgZm9yIHR5cGUgYW5kIHRyYW5zaXRpb25cbiAgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmc7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAoJHN3aXRjaC1oZWlnaHQtbWVkIC8gMik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodC1tZWQgKiAyOyBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0LW1lZDtcblxuICAgIC8vIFRyYW5zaXRpb24gZm9yIHRoZSBzd2l0Y2ggbGFiZWwgdG8gZm9sbG93IHBhZGRsZVxuICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGxlZnQsICR0cmFuc2l0aW9uLXNwZWVkLCAkdHJhbnNpdGlvbi1lYXNlKTtcbiAgfVxuXG4gIC8vIFNvIHRoYXQgd2UgZG9uJ3QgbmVlZCB0byByZWNyZWF0ZSB0aGUgZm9ybSB3aXRoIGFueSBKUywgd2UgdXNlIHRoZVxuICAvLyBleGlzdGluZyBjaGVja2JveCBvciByYWRpbyBidXR0b24sIGJ1dCB3ZSBjbGV2ZXJseSBwb3NpdGlvbiBhbmQgaGlkZSBpdC5cbiAgaW5wdXQge1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOjA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOXB4O1xuXG4gICAgJiArIGxhYmVsIHsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi1yaWdodDogMDsgfVxuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBmb3IgdGhlIHN3aXRjaCBpcyBjcmVhdGVkIGZyb20gYW4gYWZ0ZXIgcHN1ZWRvY2xhc3NcbiAgLy8gY29udGVudCBlbGVtZW50LiBUaGlzIGlzIHNpemVkIGFuZCBwb3NpdGlvbmVkLCBhbmQgcmVhY3RzIHRvXG4gIC8vIHRoZSBzdGF0ZSBvZiB0aGUgaW5wdXQuXG5cbiAgbGFiZWw6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtcGFkZGxlLWJnO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodC1tZWQgLSAuNXJlbTtcbiAgICBsZWZ0OiAuMjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLjI1cmVtO1xuICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodC1tZWQgLSAuNXJlbTtcblxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAkdHJhbnNpdGlvbi1zcGVlZCAkdHJhbnNpdGlvbi1lYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogbGVmdCAkdHJhbnNpdGlvbi1zcGVlZCAkdHJhbnNpdGlvbi1lYXNlO1xuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0ICR0cmFuc2l0aW9uLXNwZWVkICR0cmFuc2l0aW9uLWVhc2U7XG5cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWFjdGl2ZS1jb2xvcjtcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgbGVmdDogJHN3aXRjaC1oZWlnaHQtbWVkICsgLjI1cmVtO1xuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgc2l6ZSBzdHlsZXMgZm9yIHN3aXRjaGVzLlxuLy9cbi8vICRoZWlnaHQgLSBIZWlnaHQgKGluIHB4KSBvZiB0aGUgc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLWhlaWdodC1tZWQuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIHRleHQgaW4gc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLWZvbnQtc2l6ZS1tZWQuXG4vLyAkbGluZS1oZWlnaHQgLSBMaW5lIGhlaWdodCBvZiBzd2l0Y2guIERlZmF1bHQ6IDIuM3JlbS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZSgkaGVpZ2h0OiAkc3dpdGNoLWhlaWdodC1tZWQpIHtcblxuICBsYWJlbCB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIHdpZHRoOiAkaGVpZ2h0ICogMjtcbiAgfVxuXG4gIGxhYmVsOmFmdGVyIHtcbiAgICBoZWlnaHQ6ICRoZWlnaHQgLSAuNXJlbTtcbiAgICB3aWR0aDogJGhlaWdodCAtIC41cmVtO1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBsZWZ0OiAkaGVpZ2h0ICsgLjI1cmVtO1xuICB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGNvbG9yIGFuZCBvdGhlciBmYW5jaW5lc3MgdG8gdGhlIHN3aXRjaGVzLlxuLy9cbi8vICRwYWRkbGUtYmcgLSBCYWNrZ3JvdW5kIG9mIHN3aXRjaCBwYWRkbGUuIERlZmF1bHQ6ICRzd2l0Y2gtcGFkZGxlLWJnLlxuLy8gJGFjdGl2ZS1jb2xvciAtIEJhY2tncm91bmQgY29sb3Igb2YgcG9zaXRpdmUgc2lkZSBvZiBzd2l0Y2guIERlZmF1bHQ6ICRzd2l0Y2gtcG9zaXRpdmUtY29sb3IuXG4vLyAkbmVnYXRpdmUtY29sb3IgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIG5lZ2F0aXZlIHNpZGUgb2Ygc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLW5lZ2F0aXZlLWNvbG9yLlxuLy8gJHJhZGl1cyAtIFJhZGl1cyB0byBhcHBseSB0byBzd2l0Y2guIERlZmF1bHQ6IGZhbHNlLlxuLy8gJGJhc2Utc3R5bGUgLSBBcHBseSBiYXNlIHN0eWxlcz8gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBzd2l0Y2gtc3R5bGUoXG4gICRwYWRkbGUtYmc6JHN3aXRjaC1wYWRkbGUtYmcsXG4gICRhY3RpdmUtY29sb3I6JHN3aXRjaC1hY3RpdmUtY29sb3IsXG4gICRyYWRpdXM6ZmFsc2UsXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuXG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZDogJHN3aXRjaC1iZztcbiAgICB9XG5cbiAgICBsYWJlbDphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcGFkZGxlLWJnO1xuICAgIH1cblxuICAgIGlucHV0OmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHRpbmcgdXAgdGhlIHJhZGl1cyBmb3Igc3dpdGNoZXNcbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7XG4gICAgbGFiZWwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICB9XG4gICAgbGFiZWw6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7XG4gICAgbGFiZWwge1xuICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICB9XG4gICAgbGFiZWw6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICB9XG4gIH1cblxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBxdWlja2x5IGNyZWF0ZSBzd2l0Y2hlcyB3aXRoIGEgc2luZ2xlIG1peGluXG4vL1xuLy8gJHRyYW5zaXRpb24tc3BlZWQgLSBUaW1lIGluIG1zIGZvciBzd2l0Y2ggdG8gdG9nZ2xlLiBEZWZhdWx0OiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLXNwZWVkLlxuLy8gJHRyYW5zaXRpb24tZWFzZSAtIEVhc2luZyBmdW5jdGlvbiB0byB1c2UgZm9yIGFuaW1hdGlvbiAoaS5lLiBlYXNlLW91dCkuIERlZmF1bHQ6ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tZWFzZS5cbi8vICRoZWlnaHQgLSBIZWlnaHQgKGluIHB4KSBvZiB0aGUgc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLWhlaWdodC1tZWQuXG4vLyAkcGFkZGxlLWJnIC0gQmFja2dyb3VuZCBvZiBzd2l0Y2ggcGFkZGxlLiBEZWZhdWx0OiAkc3dpdGNoLXBhZGRsZS1iZy5cbi8vICRhY3RpdmUtY29sb3IgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBzd2l0Y2guIERlZmF1bHQ6ICRzd2l0Y2gtYWN0aXZlLWNvbG9yLlxuLy8gJHJhZGl1cyAtIFJhZGl1cyB0byBhcHBseSB0byBzd2l0Y2guIERlZmF1bHQ6IGZhbHNlLlxuLy8gJGJhc2Utc3R5bGUgLSBBcHBseSBiYXNlIHN0eWxlcz8gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBzd2l0Y2goXG4gICR0cmFuc2l0aW9uLXNwZWVkOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLXNwZWVkLFxuICAkdHJhbnNpdGlvbi1lYXNlOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLWVhc2UsXG4gICRoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0LW1lZCxcbiAgJHBhZGRsZS1iZzogJHN3aXRjaC1wYWRkbGUtYmcsXG4gICRhY3RpdmUtY29sb3I6ICRzd2l0Y2gtYWN0aXZlLWNvbG9yLFxuICAkcmFkaXVzOmZhbHNlLFxuICAkYmFzZS1zdHlsZTp0cnVlKSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWJhc2UoJHRyYW5zaXRpb24tc3BlZWQsICR0cmFuc2l0aW9uLWVhc2UpO1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRoZWlnaHQpO1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zdHlsZSgkcGFkZGxlLWJnLCAkYWN0aXZlLWNvbG9yLCAkcmFkaXVzLCAkYmFzZS1zdHlsZSk7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzd2l0Y2hcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXMge1xuICAgICAgLnN3aXRjaCB7XG4gICAgICAgIEBpbmNsdWRlIHN3aXRjaDtcblxuICAgICAgICAvLyBMYXJnZSByYWRpbyBzd2l0Y2hlc1xuICAgICAgICAmLmxhcmdlIHsgQGluY2x1ZGUgc3dpdGNoLXNpemUoJHN3aXRjaC1oZWlnaHQtbHJnKTsgfVxuXG4gICAgICAgIC8vIFNtYWxsIHJhZGlvIHN3aXRjaGVzXG4gICAgICAgICYuc21hbGwgeyBAaW5jbHVkZSBzd2l0Y2gtc2l6ZSgkc3dpdGNoLWhlaWdodC1zbWwpOyB9XG5cbiAgICAgICAgLy8gVGlueSByYWRpbyBzd2l0Y2hlc1xuICAgICAgICAmLnRpbnkgeyBAaW5jbHVkZSBzd2l0Y2gtc2l6ZSgkc3dpdGNoLWhlaWdodC10bnkpOyB9XG5cbiAgICAgICAgLy8gQWRkIGEgcmFkaXVzIHRvIHRoZSBzd2l0Y2hcbiAgICAgICAgJi5yYWRpdXMge1xuICAgICAgICAgIGxhYmVsIHsgQGluY2x1ZGUgcmFkaXVzKDRweCk7IH1cbiAgICAgICAgICBsYWJlbDphZnRlciB7IEBpbmNsdWRlIHJhZGl1cygzcHgpOyB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBNYWtlIHRoZSBzd2l0Y2ggY29tcGxldGVseSByb3VuZCwgbGlrZSBhIHBpbGxcbiAgICAgICAgJi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygxMDAwcHgpO1xuICAgICAgICAgIGxhYmVsIHsgQGluY2x1ZGUgcmFkaXVzKDJyZW0pOyB9XG4gICAgICAgICAgbGFiZWw6YWZ0ZXIgeyBAaW5jbHVkZSByYWRpdXMoMnJlbSk7IH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAbmFtZSBfdGFibGVzLnNjc3Ncbi8vIEBkZXBlbmRlbmNpZXMgX2dsb2JhbC5zY3NzXG4vL1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0YWJsZSBhbmQgZXZlbiByb3dzXG4kdGFibGUtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1ldmVuLXJvdy1iZzogJHNub3cgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGNlbGwgYm9yZGVyIHN0eWxlXG4kdGFibGUtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgaGVhZCBzdHlsZXNcbiR0YWJsZS1oZWFkLWJnOiAkd2hpdGUtc21va2UgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgZm9vdCBzdHlsZXNcbiR0YWJsZS1mb290LWJnOiAkdGFibGUtaGVhZC1iZyAhZGVmYXVsdDtcbiR0YWJsZS1mb290LWZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1mb290LWZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiR0YWJsZS1mb290LXBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIGNhcHRpb25cbiR0YWJsZS1jYXB0aW9uLWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSByb3cgcGFkZGluZyBhbmQgZm9udCBzdHlsZXNcbiR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCkgIWRlZmF1bHQ7XG4kdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRhYmxlLXJvdy1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGFyZSBmb3IgY29udHJvbGxpbmcgdGhlIGxheW91dCwgZGlzcGxheSBhbmQgbWFyZ2luIG9mIHRhYmxlc1xuJHRhYmxlLWxheW91dDogYXV0byAhZGVmYXVsdDtcbiR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsICFkZWZhdWx0O1xuJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuQG1peGluIHRhYmxlIHtcbiAgYmFja2dyb3VuZDogJHRhYmxlLWJnO1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItc3R5bGUgJHRhYmxlLWJvcmRlci1zaXplICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIG1hcmdpbi1ib3R0b206ICR0YWJsZS1tYXJnaW4tYm90dG9tO1xuICB0YWJsZS1sYXlvdXQ6ICR0YWJsZS1sYXlvdXQ7XG5cbiAgY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWNhcHRpb24tYmc7XG4gICAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I7XG4gICAgZm9udDoge1xuICAgICAgc2l6ZTogJHRhYmxlLWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgd2VpZ2h0OiAkdGFibGUtY2FwdGlvbi1mb250LXdlaWdodDtcbiAgICB9XG4gIH1cblxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmc7XG5cbiAgICB0ciB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJnO1xuXG4gICAgdHIge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICR0YWJsZS1mb290LWZvbnQtc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICR0YWJsZS1mb290LWZvbnQtd2VpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtZm9vdC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRyIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBjb2xvcjogJHRhYmxlLXJvdy1mb250LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkdGFibGUtcm93LWZvbnQtc2l6ZTtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1yb3ctcGFkZGluZztcbiAgICAgIHRleHQtYWxpZ246ICRkZWZhdWx0LWZsb2F0O1xuICAgIH1cblxuICAgICYuZXZlbixcbiAgICAmLmFsdCxcbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHsgYmFja2dyb3VuZDogJHRhYmxlLWV2ZW4tcm93LWJnOyB9XG4gIH1cblxuICB0aGVhZCB0ciB0aCxcbiAgdGZvb3QgdHIgdGgsXG4gIHRmb290IHRyIHRkLFxuICB0Ym9keSB0ciB0aCxcbiAgdGJvZHkgdHIgdGQsXG4gIHRyIHRkIHsgZGlzcGxheTogJHRhYmxlLWRpc3BsYXk7IGxpbmUtaGVpZ2h0OiAkdGFibGUtbGluZS1oZWlnaHQ7IH1cbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwidGFibGVcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzIHtcbiAgICB0YWJsZSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZTtcbiAgICB9XG4gIH1cbn1cbiIsIlxuJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xuJHRhYmxlLWJnOiAkd2hpdGU7XG4kdGFibGUtZXZlbi1yb3ctYmc6ICRnYWluc2Jvcm87XG5cbi8vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZVxuJHRhYmxlLWJvcmRlci1zdHlsZTogc29saWQ7XG4kdGFibGUtYm9yZGVyLXNpemU6IDFweDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICRiYXNlO1xuXG4vLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgaGVhZCBzdHlsZXNcbiR0YWJsZS1oZWFkLWJnOiAkdGFibGUtZXZlbi1yb3ctYmc7XG4kdGFibGUtaGVhZC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRzaXRlLWNvcHktY29sb3I7XG4kdGFibGUtaGVhZC1mb250LXdlaWdodDogYm9sZDtcbiR0YWJsZS1oZWFkLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuXG4vLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgZm9vdCBzdHlsZXNcbiR0YWJsZS1mb290LWJnOiAkdGFibGUtaGVhZC1iZztcbiR0YWJsZS1mb290LWZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZC1mb250LXdlaWdodDtcbiR0YWJsZS1mb290LXBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmc7XG5cbi8vLyBUaGVzZSBjb250cm9sIHRoZSBjYXB0aW9uXG4kdGFibGUtY2FwdGlvbi1iZzogdHJhbnNwYXJlbnQ7XG4kdGFibGUtY2FwdGlvbi1mb250LWNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuJHRhYmxlLWNhcHRpb24tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFibGUtY2FwdGlvbi1mb250LXdlaWdodDogbm9ybWFsO1xuXG4vLy8gVGhlc2UgY29udHJvbCB0aGUgcm93IHBhZGRpbmcgYW5kIGZvbnQgc3R5bGVzXG4kdGFibGUtcm93LXBhZGRpbmc6IHJlbS1jYWxjKDkgMTApO1xuJHRhYmxlLXJvdy1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiR0YWJsZS1yb3ctZm9udC1jb2xvcjogJHNpdGUtY29weS1jb2xvcjtcbiR0YWJsZS1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuXG4vLy8gVGhlc2UgYXJlIGZvciBjb250cm9sbGluZyB0aGUgbGF5b3V0LCBkaXNwbGF5IGFuZCBtYXJnaW4gb2YgdGFibGVzXG4kdGFibGUtbGF5b3V0OiBhdXRvO1xuJHRhYmxlLWRpc3BsYXk6IHRhYmxlLWNlbGw7XG4kdGFibGUtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApOyIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdncmlkJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtdGFicy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiR0YWJzLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvcjogJHNpbHZlciAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFicy1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNiUpICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4kdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KSAhZGVmYXVsdDtcbiR0YWJzLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpICFkZWZhdWx0O1xuXG4kdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b206IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0YWJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10YWJzLWNsYXNzZXMge1xuICAgIC50YWJzIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIGRkLFxuICAgICAgLnRhYi10aXRsZSB7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtY29sb3I7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC1zaXplOiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcbiAgICAgICAgICBwYWRkaW5nOiAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmcgJHRhYnMtbmF2aWdhdGlvbi1wYWRkaW5nICogMjtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1mb250LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgZGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGdsb2JhbC1yYWRpdXMpOyB9XG4gICAgICAgIH1cblxuICAgICAgICBkZDpsYXN0LWNoaWxkLFxuICAgICAgICAudGFiOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZGQsXG4gICAgICAgIC50YWItdGl0bGUge1xuICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJzLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b207XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgPiAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgcGFkZGluZzogJHRhYnMtY29udGVudC1wYWRkaW5nIDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLmNvbnRhaW5lZCB7XG4gICAgICAgICAgcGFkZGluZzogJHRhYnMtY29udGVudC1wYWRkaW5nO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICA+IC5jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwICR0YWJzLWNvbnRlbnQtcGFkZGluZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIC50YWJzIHtcbiAgICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b20gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIwJTtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50YWJzLWNvbnRlbnQge1xuICAgICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtMXB4O1xuICAgICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDFyZW07XG4gICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uby1qcyB7XG4gICAgICAudGFicy1jb250ZW50ID4gLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQG5hbWUgX3RodW1icy5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWxzLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuJHRodW1iLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kdGh1bWItYm9yZGVyLXdpZHRoOiA0cHggIWRlZmF1bHQ7XG4kdGh1bWItYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGh1bWItYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLC4yKSAhZGVmYXVsdDtcbiR0aHVtYi1ib3gtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLDAuNSkgIWRlZmF1bHQ7XG5cbi8vIFJhZGl1cyBhbmQgdHJhbnNpdGlvbiBzcGVlZCBmb3IgdGh1bWJzXG4kdGh1bWItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYi10cmFuc2l0aW9uLXNwZWVkOiAyMDBtcyAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBpbWFnZSB0aHVtYm5haWwgc3R5bGVzLlxuLy9cbi8vICRib3JkZXItd2lkdGggLSBXaWR0aCBvZiBib3JkZXIgYXJvdW5kIHRodW1ibmFpbC4gRGVmYXVsdDogJHRodW1iLWJvcmRlci13aWR0aC5cbi8vICRib3gtc2hhZG93IC0gQm94IHNoYWRvdyB0byBhcHBseSB0byB0aHVtYm5haWwuIERlZmF1bHQ6ICR0aHVtYi1ib3gtc2hhZG93LlxuLy8gJGJveC1zaGFkb3ctaG92ZXIgLSBCb3ggc2hhZG93IHRvIGFwcGx5IG9uIGhvdmVyLiBEZWZhdWx0OiAkdGh1bWItYm94LXNoYWRvdy1ob3Zlci5cbkBtaXhpbiB0aHVtYihcbiAgJGJvcmRlci13aWR0aDokdGh1bWItYm9yZGVyLXdpZHRoLFxuICAkYm94LXNoYWRvdzokdGh1bWItYm94LXNoYWRvdyxcbiAgJGJveC1zaGFkb3ctaG92ZXI6JHRodW1iLWJveC1zaGFkb3ctaG92ZXIpIHtcbiAgYm9yZGVyOiAkdGh1bWItYm9yZGVyLXN0eWxlICRib3JkZXItd2lkdGggJHRodW1iLWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1ob3ZlcjtcbiAgfVxufVxuXG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0aHVtYlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXMge1xuXG4gICAgLyogSW1hZ2UgVGh1bWJuYWlscyAqL1xuICAgIC50aCB7XG4gICAgICBAaW5jbHVkZSB0aHVtYjtcbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGFsbCwgJHRodW1iLXRyYW5zaXRpb24tc3BlZWQsIGVhc2Utb3V0KTtcblxuICAgICAgJi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoJHRodW1iLXJhZGl1cyk7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBUb29sdGlwIFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtdG9vbHRpcC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGlyb24gIWRlZmF1bHQ7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kaGFzLXRpcC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSkgIWRlZmF1bHQ7XG4kaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRoYXMtdGlwLWN1cnNvci10eXBlOiBoZWxwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1wYWRkaW5nOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogJG9pbCAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kdG9vbHRpcC1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1saW5lLWhlaWdodDogMS4zICFkZWZhdWx0O1xuJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiR0b29sdGlwLWNsb3NlLWZvbnQtY29sb3I6ICRtb25zb29uICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC1zaXplLXNtbDogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLXJvdW5kZWQ6ICRnbG9iYWwtcm91bmRlZCAhZGVmYXVsdDtcbiR0b29sdGlwLXBpcC1zaXplOiA1cHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwidG9vbHRpcFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXRvb2x0aXAtY2xhc3NlcyB7XG5cbiAgICAvKiBUb29sdGlwcyAqL1xuICAgIC5oYXMtdGlwIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gICAgICBjb2xvcjogJGhhcy10aXAtZm9udC1jb2xvcjtcbiAgICAgIGN1cnNvcjogJGhhcy10aXAtY3Vyc29yLXR5cGU7XG4gICAgICBmb250LXdlaWdodDogJGhhcy10aXAtZm9udC13ZWlnaHQ7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjtcbiAgICAgICAgY29sb3I6ICRoYXMtdGlwLWZvbnQtY29sb3ItaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICYudGlwLWxlZnQsXG4gICAgICAmLnRpcC1yaWdodCB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICAudG9vbHRpcCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkdG9vbHRpcC1iZztcbiAgICAgIGNvbG9yOiAkdG9vbHRpcC1mb250LWNvbG9yO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICAgICAgZm9udC13ZWlnaHQ6ICR0b29sdGlwLWZvbnQtd2VpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6ICR0b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxMDA2O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcblxuICAgICAgPiAubnViIHtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAkdG9vbHRpcC1waXAtc2l6ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdG9vbHRpcC1iZyB0cmFuc3BhcmVudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtKCR0b29sdGlwLXBpcC1zaXplICogMik7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogJHRvb2x0aXAtcGlwLXNpemU7XG5cbiAgICAgICAgJi5ydGwge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5yYWRpdXMge1xuICAgICAgICBAaW5jbHVkZSByYWRpdXMoJHRvb2x0aXAtcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgICYucm91bmQge1xuICAgICAgICBAaW5jbHVkZSByYWRpdXMoJHRvb2x0aXAtcm91bmRlZCk7XG4gICAgICAgID4gLm51YiB7XG4gICAgICAgICAgbGVmdDogMnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5lZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b20taG92ZXIgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRoYXMtdGlwLWZvbnQtY29sb3ItaG92ZXIgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFwLXRvLWNsb3NlIHtcbiAgICAgIGNvbG9yOiAkdG9vbHRpcC1jbG9zZS1mb250LWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6ICR0b29sdGlwLWNsb3NlLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc21hbGx9IHtcbiAgICAgIC50b29sdGlwIHtcbiAgICAgICAgPiAubnViIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0b29sdGlwLWJnIHRyYW5zcGFyZW50O1xuICAgICAgICAgIHRvcDogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuICAgICAgICB9XG4gICAgICAgICYudGlwLXRvcD4ubnViIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR0b29sdGlwLWJnIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvdHRvbTogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYudGlwLWxlZnQsXG4gICAgICAgICYudGlwLXJpZ2h0IHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgICAgICYudGlwLWxlZnQ+Lm51YiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdG9vbHRpcC1iZztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1waXAtc2l6ZTtcbiAgICAgICAgICByaWdodDogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICB9XG4gICAgICAgICYudGlwLXJpZ2h0Pi5udWIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRvb2x0aXAtYmcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbGVmdDogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1waXAtc2l6ZTtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdncmlkJztcbkBpbXBvcnQgJ2J1dHRvbnMnO1xuQGltcG9ydCAnZm9ybXMnO1xuXG4vL1xuLy8gVG9wIEJhciBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLXRvcC1iYXItY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhclxuJHRvcGJhci1iZy1jb2xvcjogJG9pbCAhZGVmYXVsdDtcbiR0b3BiYXItYmc6ICR0b3BiYXItYmctY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEhlaWdodCBhbmQgbWFyZ2luXG4kdG9wYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpICFkZWZhdWx0O1xuJHRvcGJhci1tYXJnaW4tYm90dG9tOiAwICFkZWZhdWx0O1xuXG4vLyBDb250cm9sbGluZyB0aGUgc3R5bGVzIGZvciB0aGUgdGl0bGUgaW4gdGhlIHRvcCBiYXJcbiR0b3BiYXItdGl0bGUtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHRvcGJhci10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDE3KSAhZGVmYXVsdDtcblxuLy8gU2V0IHRoZSBsaW5rIGNvbG9ycyBhbmQgc3R5bGVzIGZvciB0b3AtbGV2ZWwgbmF2XG4kdG9wYmFyLWxpbmstY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZS1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1ob3Zlci1saWdodG5lc3M6IC0xMCUgIWRlZmF1bHQ7IC8vIERhcmtlbiBieSAxMCVcbiR0b3BiYXItbGluay1iZzogJHRvcGJhci1iZyAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1iZy1ob3ZlcjogJGpldCAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjogJGNoYXJjb2FsICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWJnLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXBhZGRpbmc6ICgkdG9wYmFyLWhlaWdodCAvIDMpICFkZWZhdWx0O1xuJHRvcGJhci1iYWNrLWxpbmstc2l6ZTogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWRyb3Bkb3duLXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiR0b3BiYXItYnV0dG9uLWZvbnQtc2l6ZTogLjc1cmVtICFkZWZhdWx0O1xuJHRvcGJhci1idXR0b24tdG9wOiA3cHggIWRlZmF1bHQ7XG5cbi8vIFN0eWxlIHRoZSB0b3AgYmFyIGRyb3Bkb3duIGVsZW1lbnRzXG4kdG9wYmFyLWRyb3Bkb3duLWJnOiAkb2lsICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3ItaG92ZXI6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlciAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGluay1iZzogJG9pbCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlcjogJGpldCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplOiA1cHggIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtYWxwaGE6IC40ICFkZWZhdWx0O1xuXG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWNvbG9yOiAkbW9uc29vbiAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtYmc6ICRvaWwgIWRlZmF1bHQ7XG5cbi8vIFRvcCBtZW51IGljb24gc3R5bGVzXG4kdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDogJGp1bWJvICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZDogJGp1bWJvICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWljb24tcG9zaXRpb246ICRvcHBvc2l0ZS1kaXJlY3Rpb24gIWRlZmF1bHQ7IC8vIENoYW5nZSB0byAkZGVmYXVsdC1mbG9hdCBmb3IgYSBsZWZ0IG1lbnUgaWNvblxuXG4vLyBUcmFuc2l0aW9ucyBhbmQgYnJlYWtwb2ludCBzdHlsZXNcbiR0b3BiYXItdHJhbnNpdGlvbi1zcGVlZDogMzAwbXMgIWRlZmF1bHQ7XG4vLyBVc2luZyByZW0tY2FsYyBmb3IgdGhlIGJlbG93IGJyZWFrcG9pbnQgY2F1c2VzIGlzc3VlcyB3aXRoIHRvcCBiYXJcbiR0b3BiYXItYnJlYWtwb2ludDogI3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0gIWRlZmF1bHQ7IC8vIENoYW5nZSB0byA5OTk5cHggZm9yIGFsd2F5cyBtb2JpbGUgbGF5b3V0XG4kdG9wYmFyLW1lZGlhLXF1ZXJ5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkdG9wYmFyLWJyZWFrcG9pbnQpfSlcIiAhZGVmYXVsdDtcblxuLy8gVG9wLWJhciBpbnB1dCBzdHlsZXNcbiR0b3BiYXItaW5wdXQtaGVpZ2h0OiByZW0tY2FsYygyOCkgIWRlZmF1bHQ7XG5cbi8vIERpdmlkZXIgU3R5bGVzXG4kdG9wYmFyLWRpdmlkZXItYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IDEzJSkgIWRlZmF1bHQ7XG4kdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IC01MCUpICFkZWZhdWx0O1xuXG4vLyBTdGlja3kgQ2xhc3NcbiR0b3BiYXItc3RpY2t5LWNsYXNzOiBcIi5zdGlja3lcIiAhZGVmYXVsdDtcbiR0b3BiYXItYXJyb3dzOiB0cnVlICFkZWZhdWx0OyAvL1NldCBmYWxzZSB0byByZW1vdmUgdGhlIHRyaWFuZ2xlIGljb24gZnJvbSB0aGUgbWVudSBpdGVtXG4kdG9wYmFyLWRyb3Bkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSBcXDAwYmIgPj4gdGV4dCBmcm9tIGRyb3Bkb3duIHN1Ym5hdmlnYXRpb24gbGlcblxuLy8gQWNjZXNzaWJpbGl0eSBtaXhpbnMgZm9yIGhpZGluZyBhbmQgc2hvd2luZyB0aGUgbWVudSBkcm9wZG93biBpdGVtc1xuQG1peGluIHRvcGJhci1oaWRlLWRyb3Bkb3duIHtcbiAgLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4gYnkgZGVmYXVsdCwgYnV0IHZpc2libGUgd2hlbiBmb2N1c2VkLlxuICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZSgpO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1peGluIHRvcGJhci1zaG93LWRyb3Bkb3duIHtcbiAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmKCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgLy8gUmVzZXQgdGhlIHBvc2l0aW9uIGZyb20gc3RhdGljIHRvIGFic29sdXRlXG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0b3AtYmFyXCIpIHtcblxuICBAaWYgJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXMge1xuXG4gICAgLy8gVXNlZCB0byBwcm92aWRlIG1lZGlhIHF1ZXJ5IHZhbHVlcyBmb3IgamF2YXNjcmlwdCBjb21wb25lbnRzLlxuICAgIC8vIFRoaXMgY2xhc3MgaXMgZ2VuZXJhdGVkIGRlc3BpdGUgdGhlIHZhbHVlIG9mICRpbmNsdWRlLWh0bWwtdG9wLWJhci1jbGFzc2VzXG4gICAgLy8gdG8gZW5zdXJlIHdpZHRoIGNhbGN1bGF0aW9ucyB3b3JrIGNvcnJlY3RseS5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtdG9wYmFyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHRvcGJhci1tZWRpYS1xdWVyeSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiAkdG9wYmFyLWJyZWFrcG9pbnQ7XG4gICAgfVxuXG4gICAgLyogV3JhcHBlZCBhcm91bmQgLnRvcC1iYXIgdG8gY29udGFpbiB0byBncmlkIHdpZHRoICovXG4gICAgLmNvbnRhaW4tdG8tZ3JpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG5cbiAgICAgIC50b3AtYmFyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHRvcGJhci1tYXJnaW4tYm90dG9tO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyYXBwZWQgYXJvdW5kIC50b3AtYmFyIHRvIG1ha2UgaXQgc3RpY2sgdG8gdGhlIHRvcFxuICAgIC5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICAgICYuZXhwYW5kZWQ6bm90KC50b3AtYmFyKSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLnRpdGxlLWFyZWEge1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVuc3VyZSB5b3UgY2FuIHNjcm9sbCB0aGUgbWVudSBvbiBzbWFsbCBzY3JlZW5zXG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIHotaW5kZXg6IDk4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXIge1xuICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcbiAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdG9wYmFyLW1hcmdpbi1ib3R0b207XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAvLyBUb3BiYXIgR2xvYmFsIGxpc3QgU3R5bGVzXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGZvcm0sXG4gICAgICBpbnB1dCwgXG4gICAgICBzZWxlY3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBpbnB1dCwgXG4gICAgICBzZWxlY3Qge1xuICAgICAgICBmb250LXNpemU6ICR0b3BiYXItYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWlucHV0LWhlaWdodDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4zNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IC4zNXJlbTtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbiwgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAuMzVyZW0gKyByZW0tY2FsYygxKTtcbiAgICAgICAgcGFkZGluZy10b3A6IC4zNXJlbSArIHJlbS1jYWxjKDEpO1xuICAgICAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vIHRvcDogLTFweDtcblxuICAgICAgICAvLyBDb3JyZWN0cyBhIHNsaWdodCBtaXNhbGlnbm1lbnQgd2hlbiBwdXQgbmV4dCB0byBhbiBpbnB1dCBmaWVsZFxuICAgICAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVGl0bGUgQXJlYVxuICAgICAgLnRpdGxlLWFyZWEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLm5hbWUge1xuICAgICAgICBmb250LXNpemU6ICRyZW0tYmFzZTtcbiAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBwLCBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItdGl0bGUtZm9udC1zaXplO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLXRpdGxlLXdlaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBNZW51IHRvZ2dsZSBidXR0b24gb24gc21hbGwgZGV2aWNlc1xuICAgICAgLnRvZ2dsZS10b3BiYXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JHRvcGJhci1tZW51LWljb24tcG9zaXRpb259OiAwO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbWVudS1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0O1xuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGRpbmcgdGhlIGNsYXNzIFwibWVudS1pY29uXCIgd2lsbCBhZGQgdGhlIDMtbGluZSBpY29uIHBlb3BsZSBsb3ZlIGFuZCBhZG9yZS5cbiAgICAgICAgJi5tZW51LWljb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgICAgIHRvcDogNTAlO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBoYW1idXJnZXIoMTZweCwgZmFsc2UsIDAsIDFweCwgNnB4LCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvciwgXCJcIiwgZmFsc2UpO1xuXG4gICAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtNThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLW1lbnUtbGluay1jb2xvcjtcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZytyZW0tY2FsYygyNSkgMCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQ2hhbmdlIHRoaW5ncyB1cCB3aGVuIHRoZSB0b3AtYmFyIGlzIGV4cGFuZGVkXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAudGl0bGUtYXJlYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcbiAgICAgICAgfVxuXG4gICAgICAgIC50b2dnbGUtdG9wYmFyIHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLW1lbnUtbGluay1jb2xvci10b2dnbGVkO1xuXG4gICAgICAgICAgICBzcGFuOjphZnRlciB7XG4gICAgICAgICAgICAgIC8vIFNoaCwgZG9uJ3QgdGVsbCwgYnV0IGJveC1zaGFkb3dzIGNyZWF0ZSB0aGUgbWVudSBpY29uIDopXG4gICAgICAgICAgICAgIC8vIENoYW5nZSB0aGUgY29sb3Igb2YgdGhlIGJhcnMgd2hlbiB0aGUgbWVudSBpcyBleHBhbmRlZCwgdXNpbmcgZ2l2ZW4gdGhpY2tuZXNzIGZyb20gaGFtYnVyZ2VyKCkgYWJvdmVcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDAgN3B4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDAgMTRweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZpeGVzIGFuIGlzc3VlIHdpdGggRGVza3RvcCBhbmQgTW9iaWxlIFNhZmFyaSB3aGVyZSBkZWVwbHktbmVzdGVkIG1lbnVzIGRvbid0IGFwcGVhclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIHtcbiAgICAgICAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgICAgIC5oYXMtZHJvcGRvd24ubW92ZWQgPiAuZHJvcGRvd24sXG4gICAgICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICBjbGlwOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBUaGlzIHdhcyBuZWVkZWQgYXMgcGFyZW50IHVsJ3MgaGFkIHBhZGRpbmcsIGFuZCB0aGUgY2xpcDogd2FzIGFsbG93aW5nIGNvbnRlbnQgdG8gcGVhayB0aHJvdWdoXG4gICAgICAgICAgICAuaGFzLWRyb3Bkb3duOm5vdCgubW92ZWQpID4gdWwge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJpZ2h0IGFuZCBMZWZ0IE5hdmlnYXRpb24gdGhhdCBzdGFja2VkIGJ5IGRlZmF1bHRcbiAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbigkZGVmYXVsdC1mbG9hdCwgJHRvcGJhci10cmFuc2l0aW9uLXNwZWVkKTtcblxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmRpdmlkZXIsXG4gICAgICBbcm9sZT1cInNlcGFyYXRvclwiXSB7XG4gICAgICAgIGJvcmRlci10b3A6ICR0b3BiYXItZGl2aWRlci1ib3JkZXItdG9wO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICB1bCBsaSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWJnO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1saW5rLXdlaWdodDtcbiAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDAgMTJweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5idXR0b24uc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgICAgICYuYnV0dG9uLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgICAgICYuYnV0dG9uLmFsZXJ0IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYWxlcnQtY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24ud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24uaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IpOyB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHNlY29uZGFyeS1jb2xvcik7IH1cbiAgICAgICAgICAmLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvcik7IH1cbiAgICAgICAgICAmLndhcm5pbmcgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiR3YXJuaW5nLWNvbG9yKTsgfVxuICAgICAgICAgICYuaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IpOyB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBcHBseSB0aGUgaG92ZXIgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICY6aG92ZXI6bm90KC5oYXMtZm9ybSkgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcblxuICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCBzb21lIGV4dHJhIHBhZGRpbmcgZm9yIGxpc3QgaXRlbXMgY29udGFpbnMgYnV0dG9uc1xuICAgICAgLmhhcy1mb3JtIHtcbiAgICAgICAgcGFkZGluZzogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0eWxpbmcgZm9yIGxpc3QgaXRlbXMgdGhhdCBoYXZlIGEgZHJvcGRvd24gd2l0aGluIHRoZW0uXG4gICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaWYgKCR0b3BiYXItYXJyb3dzKSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksICRkZWZhdWx0LWZsb2F0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplIC8gMikgLSAyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubW92ZWQge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cbiAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiBhOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFN0eWxpbmcgZWxlbWVudHMgaW5zaWRlIG9mIGRyb3Bkb3duc1xuICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTAwJTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICYucGFyZW50LWxpbmsge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1saW5rLXdlaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRpdGxlIGg1LFxuICAgICAgICAgICYucGFyZW50LWxpbmsge1xuICAgICAgICAgICAgLy8gQmFjayBCdXR0b25cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJhY2stbGluay1zaXplO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAoJHRvcGJhci1oZWlnaHQgLyAyKTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kOm5vbmU7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmhhcy1mb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYnV0dG9uLFxuICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggJHRvcGJhci1saW5rLXBhZGRpbmcgMnB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmpzLWdlbmVyYXRlZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuICAgIC8vIFRvcCBCYXIgc3R5bGVzIGludGVuZGVkIGZvciBzY3JlZW4gc2l6ZXMgYWJvdmUgdGhlIGJyZWFrcG9pbnQuXG4gICAgQG1lZGlhICN7JHRvcGJhci1tZWRpYS1xdWVyeX0ge1xuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgLnRvZ2dsZS10b3BiYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgLnRpdGxlLWFyZWEgeyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7IH1cbiAgICAgICAgLm5hbWUgaDEgYSxcbiAgICAgICAgLm5hbWUgaDIgYSxcbiAgICAgICAgLm5hbWUgaDMgYSxcbiAgICAgICAgLm5hbWUgaDQgYSxcbiAgICAgICAgLm5hbWUgaDUgYSxcbiAgICAgICAgLm5hbWUgaDYgYSB7IHdpZHRoOiBhdXRvOyB9XG5cbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNlbGVjdCxcbiAgICAgICAgLmJ1dHRvbixcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaW5wdXQtaGVpZ2h0O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6ICgoJHRvcGJhci1oZWlnaHQgLSAkdG9wYmFyLWlucHV0LWhlaWdodCkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oYXMtZm9ybSA+IC5idXR0b24sXG4gICAgICAgIC5oYXMtZm9ybSA+IGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWlucHV0LWhlaWdodDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICAgICAgICAgIHRvcDogKCgkdG9wYmFyLWhlaWdodCAtICR0b3BiYXItaW5wdXQtaGVpZ2h0KSAvIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29udGFpbi10by1ncmlkIC50b3AtYmFyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICR0b3BiYXItbWFyZ2luLWJvdHRvbTtcbiAgICAgICAgbWF4LXdpZHRoOiAkcm93LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24obm9uZSwwLDApO1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgICAuanMtZ2VuZXJhdGVkIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgID4gYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpub3QoLmhhcy1mb3JtKSB7XG4gICAgICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWxpbmstYmctaG92ZXIpIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmFjdGl2ZTpub3QoLmhhcy1mb3JtKSB7XG4gICAgICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICBAaWYgJHRvcGJhci1hcnJvd3Mge1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZyArICR0b3BiYXItbGluay1kcm9wZG93bi1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksIHRvcCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgdG9wOiAoJHRvcGJhci1oZWlnaHQgLyAyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYubW92ZWQgeyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1oaWRlLWRyb3Bkb3duKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5ob3ZlciwgJi5ub3QtY2xpY2s6aG92ZXIge1xuICAgICAgICAgICAgPiAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgID4gYTpmb2N1cyArIC5kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kcm9wZG93biBsaS5oYXMtZHJvcGRvd24ge1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWRyb3Bkb3duLWFycm93cykge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwYmJcIjtcbiAgICAgICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoMyk7XG5cbiAgICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICB0b3A6IGF1dG87XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1saW5rLWJnO1xuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KC5oYXMtZm9ybSk6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1saW5rLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyID4gYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1kcm9wZG93bi1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1iZztcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gU2Vjb25kIExldmVsIERyb3Bkb3duc1xuICAgICAgICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDEwMCU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IHVsID4gLmRpdmlkZXIsXG4gICAgICAgID4gdWwgPiBbcm9sZT1cInNlcGFyYXRvclwiXSB7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItZGl2aWRlci1ib3JkZXItYm90dG9tO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhhcy1mb3JtIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmc7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUG9zaXRpb24gb3ZlcnJpZGVzIGZvciB1bC5yaWdodCBhbmQgdWwubGVmdFxuICAgICAgICAuI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSB7XG4gICAgICAgICAgbGkgLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcblxuICAgICAgICAgICAgbGkgLmRyb3Bkb3duIHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTAwJTsgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuI3skZGVmYXVsdC1mbG9hdH0ge1xuICAgICAgICAgIGxpIC5kcm9wZG93biB7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICAgICAgICAgIGxpIC5kcm9wZG93biB7ICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIERlZ3JhZGUgZ3JhY2VmdWxseSB3aGVuIEphdmFzY3JpcHQgaXMgZGlzYWJsZWQuIERpc3BsYXlzIGRyb3Bkb3duIGFuZCBjaGFuZ2VzXG4gICAgICAvLyBiYWNrZ3JvdW5kICYgdGV4dCBjb2xvciBvbiBob3Zlci5cbiAgICAgIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgdWwgbGkge1xuICAgICAgICAgIC8vIEFwcGx5IHRoZSBob3ZlciBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgICAmOmhvdmVyID4gYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgICBAaWYgKCR0b3BiYXItbGluay1iZy1ob3Zlcikge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIEFwcGx5IHRoZSBhY3RpdmUgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICAgJjphY3RpdmUgPiBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmU7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICA+IGE6Zm9jdXMgKyAuZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbiRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcbiRoMS1mb250LXNpemU6IHJlbS1jYWxjKDQ0KSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IHJlbS1jYWxjKDM3KSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIzKSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBzaXplIHJlZHVjdGlvbiBvbiBzbWFsbCBzY3JlZW5zXG4kaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiRoMi1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGgzLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcbiRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XG4kaDUtZm9udC1yZWR1Y3Rpb246IDAgIWRlZmF1bHQ7XG4kaDYtZm9udC1yZWR1Y3Rpb246IDAgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgaG93IHN1YmhlYWRlcnMgYXJlIHN0eWxlZC5cbiRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRzdWJoZWFkZXItdG9wLW1hcmdpbjogLjJyZW0gIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtICFkZWZhdWx0O1xuXG4vLyBBIGdlbmVyYWwgPHNtYWxsPiBzdHlsaW5nXG4kc21hbGwtZm9udC1zaXplOiA2MCUgIWRlZmF1bHQ7XG4kc21hbGwtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xuJHBhcmFncmFwaC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IDEuNiAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzUgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4kY29kZS1jb2xvcjogJG9pbCAhZGVmYXVsdDtcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpICFkZWZhdWx0O1xuJGNvZGUtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjb2RlLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpICFkZWZhdWx0O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbiRoci1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRoci1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4kbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRsaXN0LWZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbSAhZGVmYXVsdDtcbiRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbSAhZGVmYXVsdDtcbiRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDogMCAhZGVmYXVsdDtcbiRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbSAhZGVmYXVsdDtcbiRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbiRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ2FpbnNib3JvICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4kYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4kbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIHBhZGRpbmdcbiRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBmb250IHN0eWxlc1xuJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLyBDb250cm9scyB0aGUgcGFnZSBtYXJnaW4gd2hlbiBwcmludGluZyB0aGUgd2Vic2l0ZVxuJHByaW50LW1hcmdpbjogMC4zNGluICFkZWZhdWx0O1xuXG4vLyBUZXh0IGFsaWdubWVudCBjbGFzcyBuYW1lc1xuJGFsaWduLWNsYXNzLW5hbWVzOlxuICBzbWFsbC1vbmx5LFxuICBzbWFsbCxcbiAgbWVkaXVtLW9ubHksXG4gIG1lZGl1bSxcbiAgbGFyZ2Utb25seSxcbiAgbGFyZ2UsXG4gIHhsYXJnZS1vbmx5LFxuICB4bGFyZ2UsXG4gIHh4bGFyZ2Utb25seSxcbiAgeHhsYXJnZTtcblxuLy8gVGV4dCBhbGlnbm1lbnQgYnJlYWtwb2ludHNcbiRhbGlnbi1jbGFzcy1icmVha3BvaW50czpcbiAgJHNtYWxsLW9ubHksXG4gICRzbWFsbC11cCxcbiAgJG1lZGl1bS1vbmx5LFxuICAkbWVkaXVtLXVwLFxuICAkbGFyZ2Utb25seSxcbiAgJGxhcmdlLXVwLFxuICAkeGxhcmdlLW9ubHksXG4gICR4bGFyZ2UtdXAsXG4gICR4eGxhcmdlLW9ubHksXG4gICR4eGxhcmdlLXVwO1xuXG4vLyBHZW5lcmF0ZXMgdGV4dCBhbGlnbiBhbmQganVzdGlmeSBjbGFzc2VzXG5AbWl4aW4gYWxpZ24tY2xhc3Nlc3tcbiAgLnRleHQtbGVmdCAgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAudGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAudGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRhbGlnbi1jbGFzcy1uYW1lcykge1xuICAgIEBtZWRpYSAjeyhudGgoJGFsaWduLWNsYXNzLWJyZWFrcG9pbnRzLCAkaSkpfSB7XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBUeXBvZ3JhcGh5IFBsYWNlaG9sZGVyc1xuLy9cblxuLy8gVGhlc2Ugd2lsbCB0aHJvdyBhIGRlcHJlY2F0aW9uIHdhcm5pbmcgaWYgdXNlZCB3aXRoaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBsZWFkIHtcbiAgZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZSArIHJlbS1jYWxjKDMuNSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbkBtaXhpbiBzdWJoZWFkZXIge1xuICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRzdWJoZWFkZXItZm9udC1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItdG9wLW1hcmdpbjtcbiAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1ib3R0b20tbWFyZ2luO1xufVxuQGluY2x1ZGUgZXhwb3J0cyhcInR5cGVcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10eXBlLWNsYXNzZXMge1xuICAgIC8vIFJlc3BvbnNpdmUgVGV4dCBhbGlnbm1lbnRcbiAgICBAaW5jbHVkZSBhbGlnbi1jbGFzc2VzO1xuXG4gICAgLyogVHlwb2dyYXBoeSByZXNldHMgKi9cbiAgICBkaXYsXG4gICAgZGwsXG4gICAgZHQsXG4gICAgZGQsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgbGksXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYsXG4gICAgcHJlLFxuICAgIGZvcm0sXG4gICAgcCxcbiAgICBibG9ja3F1b3RlLFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgcGFkZGluZzowO1xuICAgIH1cblxuICAgIC8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRhbmNob3ItZm9udC1jb2xvci1ob3ZlcjtcbiAgICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgXHR0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7IGJvcmRlcjpub25lOyB9XG4gICAgfVxuXG4gICAgLyogRGVmYXVsdCBwYXJhZ3JhcGggc3R5bGVzICovXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4gICAgICBmb250LXdlaWdodDogJHBhcmFncmFwaC1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG5cbiAgICAgICYubGVhZCB7IEBpbmNsdWRlIGxlYWQ7IH1cblxuICAgICAgJiBhc2lkZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU7XG4gICAgICAgIGZvbnQtc3R5bGU6ICRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zdHlsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogRGVmYXVsdCBoZWFkZXIgc3R5bGVzICovXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICBjb2xvcjogJGhlYWRlci1mb250LWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmUtaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGhlYWRlci1ib3R0b20tbWFyZ2luO1xuICAgICAgbWFyZ2luLXRvcDogJGhlYWRlci10b3AtbWFyZ2luO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICRzbWFsbC1mb250LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplIC0gJGgxLWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemUgLSAkaDItZm9udC1yZWR1Y3Rpb247IH1cbiAgICBoMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZSAtICRoMy1mb250LXJlZHVjdGlvbjsgfVxuICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplIC0gJGg0LWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemUgLSAkaDUtZm9udC1yZWR1Y3Rpb247IH1cbiAgICBoNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZSAtICRoNi1mb250LXJlZHVjdGlvbjsgfVxuXG4gICAgLnN1YmhlYWRlciB7IEBpbmNsdWRlIHN1YmhlYWRlcjsgfVxuXG4gICAgaHIge1xuICAgICAgYm9yZGVyOiAkaHItYm9yZGVyLXN0eWxlICRoci1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICRoci1ib3JkZXItd2lkdGggMCAwO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW46ICRoci1tYXJnaW4gMCAoJGhyLW1hcmdpbiAtIHJlbS1jYWxjKCRoci1ib3JkZXItd2lkdGgpKTtcbiAgICB9XG5cbiAgICAvKiBIZWxwZnVsIFR5cG9ncmFwaHkgRGVmYXVsdHMgKi9cbiAgICBlbSxcbiAgICBpIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIHN0cm9uZyxcbiAgICBiIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIGNvZGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvZGUtYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXN0eWxlOiAkY29kZS1ib3JkZXItc3R5bGU7XG4gICAgICBib3JkZXItd2lkdGg6ICRjb2RlLWJvcmRlci1zaXplO1xuICAgICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvKiBMaXN0cyAqL1xuICAgIHVsLFxuICAgIG9sLFxuICAgIGRsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbGlzdC1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJGxpc3QtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmUtaGVpZ2h0O1xuICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgfVxuXG4gICAgLyogVW5vcmRlcmVkIExpc3RzICovXG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICB1bCxcbiAgICAgICAgb2wge1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNxdWFyZSxcbiAgICAgICYuY2lyY2xlLFxuICAgICAgJi5kaXNjIHtcbiAgICAgICAgbGkgdWwgeyBsaXN0LXN0eWxlOiBpbmhlcml0OyB9XG4gICAgICB9XG5cbiAgICAgICYuc3F1YXJlIHsgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxuICAgICAgJi5jaXJjbGUgeyBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjt9XG4gICAgICAmLmRpc2MgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxuICAgIH1cblxuICAgIC8qIE9yZGVyZWQgTGlzdHMgKi9cbiAgICBvbCB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW47XG4gICAgICBsaSB7XG4gICAgICAgIHVsLFxuICAgICAgICBvbCB7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1uZXN0ZWQtbWFyZ2luO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMaXN0cyB3aXRob3V0IGJ1bGxldHNcbiAgICAubm8tYnVsbGV0IHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW4tbm8tYnVsbGV0O1xuICAgICAgXG4gICAgICBsaSB7XG4gICAgICAgIHVsLFxuICAgICAgICBvbCB7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1uZXN0ZWQtbWFyZ2luO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlZmluaXRpb24gTGlzdHMgKi9cbiAgICBkbCB7XG4gICAgICBkdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci13ZWlnaHQ7XG4gICAgICB9XG4gICAgICBkZCB7IG1hcmdpbi1ib3R0b206ICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTsgfVxuICAgIH1cblxuICAgIC8qIEFiYnJldmlhdGlvbnMgKi9cbiAgICBhYmJyLFxuICAgIGFjcm9ueW0ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItaGVscC12YWx1ZTtcbiAgICB9XG4gICAgYWJiciB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICZbdGl0bGVdIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFjcm9ueW0tdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIEJsb2NrcXVvdGVzICovXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAgIGNpdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtc2l6ZTtcbiAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGJsb2NrcXVvdGUsXG4gICAgYmxvY2txdW90ZSBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgLyogTWljcm9mb3JtYXRzICovXG4gICAgLnZjYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogJG1pY3JvZm9ybWF0LW1hcmdpbjtcbiAgICAgIGJvcmRlcjogJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aCAkbWljcm9mb3JtYXQtYm9yZGVyLXN0eWxlICRtaWNyb2Zvcm1hdC1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAkbWljcm9mb3JtYXQtcGFkZGluZztcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmZuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52ZXZlbnQge1xuICAgICAgLnN1bW1hcnkgeyBmb250LXdlaWdodDogJG1pY3JvZm9ybWF0LXN1bW1hcnktZm9udC13ZWlnaHQ7IH1cblxuICAgICAgYWJiciB7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtd2VpZ2h0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZS1oZWlnaHQ7IH1cbiAgICAgIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplOyB9XG4gICAgICBoMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxuICAgICAgaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemU7IH1cbiAgICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplOyB9XG4gICAgICBoNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuICAgICAgaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemU7IH1cbiAgICB9XG5cbiAgICAvLyBPbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGVzIGlmIHlvdSB3YW50IHRoZW0uXG4gICAgQGlmICRpbmNsdWRlLXByaW50LXN0eWxlcyB7XG4gICAgICAvKlxuICAgICAgICogUHJpbnQgc3R5bGVzLlxuICAgICAgICpcbiAgICAgICAqIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiB3d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgICAgICogQ3JlZGl0IHRvIFBhdWwgSXJpc2ggYW5kIEhUTUw1IEJvaWxlcnBsYXRlIChodG1sNWJvaWxlcnBsYXRlLmNvbSlcbiAgICAgICovXG4gICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAqIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLyogQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vcyAqL1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cblxuICAgICAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuXG4gICAgICAgIC8vIERvbid0IHNob3cgbGlua3MgZm9yIGltYWdlcywgb3IgamF2YXNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgICAgICAuaXIgYTphZnRlcixcbiAgICAgICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICAgICAgICBhW2hyZWZePVwiI1wiXTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IH1cblxuICAgICAgICBwcmUsXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhbHVtaW51bTtcbiAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLyogaDVicC5jb20vdCAqLyB9XG5cbiAgICAgICAgdHIsXG4gICAgICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgQHBhZ2UgeyBtYXJnaW46ICRwcmludC1tYXJnaW47IH1cblxuICAgICAgICBwLFxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgICAgd2lkb3dzOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ3R5cGUnO1xuXG4vLyBPZmYgQ2FudmFzIFRhYiBCYXIgVmFyaWFibGVzXG4kaW5jbHVkZS1odG1sLW9mZi1jYW52YXMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4kdGFiYmFyLWJnOiAkb2lsICFkZWZhdWx0O1xuJHRhYmJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KSAhZGVmYXVsdDtcbiR0YWJiYXItaWNvbi13aWR0aDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdGFiYmFyLWxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJiYXItbWlkZGxlLXBhZGRpbmc6IDAgcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIERpdmlkZXIgU3R5bGVzXG4kdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI6IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAtNTAlKSAhZGVmYXVsdDtcbiR0YWJiYXItcmlnaHQtc2VjdGlvbi1ib3JkZXI6ICR0YWJiYXItbGVmdC1zZWN0aW9uLWJvcmRlcjtcblxuXG4vLyBPZmYgQ2FudmFzIFRhYiBCYXIgSGVhZGVyc1xuJHRhYmJhci1oZWFkZXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJiYXItaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kdGFiYmFyLWhlYWRlci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdGFiYmFyLWhlYWRlci1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vIE9mZiBDYW52YXMgTWVudSBWYXJpYWJsZXNcbiRvZmYtY2FudmFzLXdpZHRoOiByZW0tY2FsYygyNTApICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtaGVpZ2h0OiByZW0tY2FsYygzMDApICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmc6ICRvaWwgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTMwJSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iZy1hY3RpdmU6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgTGlzdCBWYXJpYWJsZXNcbiRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc6IC4zcmVtIHJlbS1jYWxjKDE1KSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWNvbG9yOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1iZzogJHR1YXRhcmEgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tOiBub25lICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luOjAgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDEwLCAxNSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1saW5rLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjcpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1ib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmcsICRsaWdodG5lc3M6IC0yNSUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1iZzogIzQ0NCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2stYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLXRvcCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2stYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2staG92ZXItYmc6IHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWJhY2stYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci1ib3R0b206IG5vbmUgIWRlZmF1bHQ7XG5cbi8vIE9mZiBDYW52YXMgTWVudSBJY29uIFZhcmlhYmxlc1xuJHRhYmJhci1tZW51LWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLWhvdmVyOiBzY2FsZS1jb2xvcigkdGFiYmFyLW1lbnUtaWNvbi1jb2xvciwgJGxpZ2h0bmVzczogLTMwJSkgIWRlZmF1bHQ7XG5cbiR0YWJiYXItbWVudS1pY29uLXRleHQtaW5kZW50OiByZW0tY2FsYygzNSkgIWRlZmF1bHQ7XG4kdGFiYmFyLW1lbnUtaWNvbi13aWR0aDogJHRhYmJhci1pY29uLXdpZHRoICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24taGVpZ2h0OiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG5cbiR0YWJiYXItaGFtYnVyZ2VyLWljb24td2lkdGg6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tbGVmdDogZmFsc2UgIWRlZmF1bHQ7XG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcDogZmFsc2UgIWRlZmF1bHQ7XG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzczogMXB4ICFkZWZhdWx0O1xuJHRhYmJhci1oYW1idXJnZXItaWNvbi1nYXA6IDZweCAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBCYWNrLUxpbmsgT3ZlcmxheVxuJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2UgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjogcG9pbnRlciAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpLCA0cHggMCA0cHggcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC4yKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG5cbi8vIFRyYW5zaXRpb24gVmFyaWFibGVzXG4kbWVudS1zbGlkZTogXCJ0cmFuc2Zvcm0gNTAwbXMgZWFzZVwiICFkZWZhdWx0O1xuXG5cbi8vIE1JWElOU1xuLy8gUmVtb3ZlIHRyYW5zaXRpb24gZmxpY2tlciBvbiBwaG9uZXNcbkBtaXhpbiBraWxsLWZsaWNrZXIge1xuICAvLyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigweCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vLyBCYXNpYyBwcm9wZXJ0aWVzIGZvciB0aGUgY29udGVudCB3cmFwc1xuQG1peGluIHdyYXAtYmFzZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtaXhpbiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR0eCwgJHR5KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eilcbn1cblxuLy8gYmFzaWMgc3R5bGVzIGZvciBvZmYtY2FudmFzIG1lbnUgY29udGFpbmVyXG5AbWl4aW4gb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBraWxsLWZsaWNrZXI7XG4gICogeyBAaW5jbHVkZSBraWxsLWZsaWNrZXI7IH1cbiAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmc7XG4gIGJvdHRvbTogMDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSAwcztcbiAgd2lkdGg6ICRvZmYtY2FudmFzLXdpZHRoO1xuICB6LWluZGV4OiAxMDAxO1xuXG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLC0xMDAlLDApO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRvZmYtY2FudmFzLWhlaWdodDtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwxMDAlLDApO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRvZmYtY2FudmFzLWhlaWdodDtcbiAgfVxufVxuXG4vLyBPRkYgQ0FOVkFTIFdSQVBcbi8vIFdyYXAgdmlzaWJsZSBjb250ZW50IGFuZCBwcmV2ZW50IHNjcm9sbCBiYXJzXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuICBAaW5jbHVkZSB3cmFwLWJhc2U7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICYubW92ZS1yaWdodCxcbiAgJi5tb3ZlLWxlZnQsXG4gICYubW92ZS1ib3R0b20sXG4gICYubW92ZS10b3AgeyBtaW4taGVpZ2h0OiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbn1cblxuLy8gSU5ORVIgV1JBUFxuLy8gTWFpbiBjb250ZW50IGFyZWEgdGhhdCBtb3ZlcyB0byByZXZlYWwgdGhlIG9mZi1jYW52YXMgbmF2XG5AbWl4aW4gaW5uZXItd3JhcCB7XG4gIC8vIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgLy8gcmVtb3ZlZCBmb3Igbm93IHRpbGwgY2hyb21lIGZpeGVzIGJhY2tmYWNlIGlzc3VlXG4gIEBpbmNsdWRlIHdyYXAtYmFzZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC0jeyRtZW51LXNsaWRlfTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LSN7JG1lbnUtc2xpZGV9O1xuICAtbXMtdHJhbnNpdGlvbjogLW1zLSN7JG1lbnUtc2xpZGV9O1xuICAtby10cmFuc2l0aW9uOiAtby0jeyRtZW51LXNsaWRlfTtcbiAgdHJhbnNpdGlvbjogI3skbWVudS1zbGlkZX07XG59XG5cbi8vIFRBQiBCQVJcbi8vIFRoaXMgaXMgdGhlIHRhYiBiYXIgYmFzZVxuQG1peGluIHRhYi1iYXItYmFzZSB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcblxuICAvLyBiYXNlIHN0eWxlc1xuICBiYWNrZ3JvdW5kOiAkdGFiYmFyLWJnO1xuICBjb2xvcjogJHRhYmJhci1jb2xvcjtcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICR0YWJiYXItbGluZS1oZWlnaHQ7XG5cbiAgLy8gbWFrZSBzdXJlIGl0J3MgYmVsb3cgdGhlIC5leGl0LW9mZi1jYW52YXMgbGlua1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIHotaW5kZXg6IDk5OTtcblxuICAvLyBUeXBvZ3JhcGh5XG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGNvbG9yOiAkdGFiYmFyLWhlYWRlci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJHRhYmJhci1oZWFkZXItd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlYWRlci1saW5lLWhlaWdodDtcbiAgICBtYXJnaW46ICR0YWJiYXItaGVhZGVyLW1hcmdpbjtcbiAgfVxuICBoMSwgaDIsIGgzLCBoNCB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxufVxuXG4vLyBTTUFMTCBTRUNUSU9OU1xuLy8gVGhlc2UgYXJlIHNtYWxsIHNlY3Rpb25zIG9uIHRoZSBsZWZ0IGFuZCByaWdodCB0aGF0IGNvbnRhaW4gdGhlIG9mZi1jYW52YXMgdG9nZ2xlIGJ1dHRvbnM7XG5AbWl4aW4gdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uKSB7XG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogJHRhYmJhci1pY29uLXdpZHRoO1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGJvcmRlci1yaWdodDogJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IDFweCAwIDAgc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogMTMlKTtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGJvcmRlci1sZWZ0OiAkdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IC0xcHggMCAwIHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpO1xuICAgIHJpZ2h0OjA7XG4gIH1cbn1cblxuQG1peGluIHRhYi1iYXItc2VjdGlvbiB7XG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIHBhZGRpbmc6ICR0YWJiYXItbWlkZGxlLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gICAgJi5sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICYucmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5cbiAgLy8gc3RpbGwgbmVlZCB0byBtYWtlIHRoZXNlIG5vbi1wcmVzZW50YXRpb25hbFxuICAmLmxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6ICR0YWJiYXItaWNvbi13aWR0aDtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBsZWZ0OiAkdGFiYmFyLWljb24td2lkdGg7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgJi5taWRkbGUge1xuICAgIGxlZnQ6ICR0YWJiYXItaWNvbi13aWR0aDtcbiAgICByaWdodDogJHRhYmJhci1pY29uLXdpZHRoO1xuICB9XG59XG5cbi8vIE9GRiBDQU5WQVMgTElTVFxuLy8gVGhpcyBpcyB0aGUgbGlzdCBvZiBsaW5rcyBpbiB0aGUgb2ZmLWNhbnZhcyBtZW51XG5AbWl4aW4gb2ZmLWNhbnZhcy1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzowO1xuXG4gIGxpIHtcbiAgICBsYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1sYWJlbC1iZztcbiAgICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b207XG4gICAgICBib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wO1xuICAgICAgY29sb3I6ICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6ICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDtcbiAgICAgIG1hcmdpbjogJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luO1xuICAgICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1saW5rLWJvcmRlci1ib3R0b207XG4gICAgICBjb2xvcjogJG9mZi1jYW52YXMtbGluay1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGluay1wYWRkaW5nO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnLWhvdmVyO1xuICAgICAgfVxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iZy1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8gQkFDSyBMSU5LXG4vLyBUaGlzIGlzIGFuIG92ZXJsYXkgdGhhdCwgd2hlbiBjbGlja2VkLCB3aWxsIHRvZ2dsZSBvZmYgdGhlIG9mZiBjYW52YXMgbWVudVxuQG1peGluIGJhY2stbGluayB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcblxuICBib3gtc2hhZG93OiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJveC1zaGFkb3c7XG4gIGN1cnNvcjogJG9mZi1jYW52YXMtb3ZlcmxheS1jdXJzb3I7XG4gIHRyYW5zaXRpb246ICRvZmYtY2FudmFzLW92ZXJsYXktdHJhbnNpdGlvbjtcblxuICAvLyBmaWxsIHRoZSBzY3JlZW5cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjtcblxuICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBPZmYtQ2FudmFzIFN1Ym1lbnUgQ2xhc3Nlc1xuLy9cbkBtaXhpbiBvZmYtY2FudmFzLXN1Ym1lbnUoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgKiB7IEBpbmNsdWRlIGtpbGwtZmxpY2tlcjsgfVxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAkb2ZmLWNhbnZhcy13aWR0aDtcbiAgaGVpZ2h0OiAkb2ZmLWNhbnZhcy1oZWlnaHQ7XG4gIHotaW5kZXg6IDEwMDI7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcbiAgICByaWdodDogMDtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwtMTAwJSwwKTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH0gIFxuICBAaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwxMDAlLDApO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtI3skbWVudS1zbGlkZX07XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei0jeyRtZW51LXNsaWRlfTtcbiAgLW1zLXRyYW5zaXRpb246IC1tcy0jeyRtZW51LXNsaWRlfTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tI3skbWVudS1zbGlkZX07XG4gIHRyYW5zaXRpb246ICN7JG1lbnUtc2xpZGV9O1xuXG4gIC8vYmFjayBidXR0b24gc3R5bGUgbGlrZSBsYWJlbFxuICAuYmFjayA+IGEge1xuICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJhY2stYmc7XG4gICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtYmFjay1ib3JkZXItYm90dG9tO1xuICAgIGJvcmRlci10b3A6ICRvZmYtY2FudmFzLWJhY2stYm9yZGVyLXRvcDtcbiAgICBjb2xvcjogJG9mZi1jYW52YXMtbGFiZWwtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6ICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICAgIHBhZGRpbmc6ICRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRvZmYtY2FudmFzLWxhYmVsLXRleHQtdHJhbnNmb3JtO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJnO1xuICAgICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItYm90dG9tO1xuICAgICAgYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItdG9wO1xuICAgIH1cblxuICAgIG1hcmdpbjogJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luO1xuICAgIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogcmlnaHQpO1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vL0xlZnQgZG91YmxlIGFuZ2xlIHF1b3RlIG9yIFJpZ2h0IGRvdWJsZSBhbmdsZSBxdW90ZSBjaGFyc1xuQG1peGluIGljb24tZG91YmxlLWFycm93cyAoJHBvc2l0aW9uKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgY29udGVudDogXCJcXEFCXCI7XG4gICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICB9XG4gIH1cbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgY29udGVudDogXCJcXEJCXCI7XG4gICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICB9XG4gIH1cbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4vL1xuLy8gREVGQVVMVCBDTEFTU0VTXG4vL1xuQGluY2x1ZGUgZXhwb3J0cyhcIm9mZmNhbnZhc1wiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW9mZi1jYW52YXMtY2xhc3NlcyB7XG5cbiAgICAub2ZmLWNhbnZhcy13cmFwIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwOyB9XG4gICAgLmlubmVyLXdyYXAgeyBAaW5jbHVkZSBpbm5lci13cmFwOyB9XG5cbiAgICAudGFiLWJhciB7IEBpbmNsdWRlIHRhYi1iYXItYmFzZTsgfVxuXG4gICAgLmxlZnQtc21hbGwgeyBAaW5jbHVkZSB0YWJiYXItc21hbGwtc2VjdGlvbigkcG9zaXRpb246IGxlZnQpOyB9XG4gICAgLnJpZ2h0LXNtYWxsIHsgQGluY2x1ZGUgdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uOiByaWdodCk7IH1cblxuICAgIC50YWItYmFyLXNlY3Rpb24geyBAaW5jbHVkZSB0YWItYmFyLXNlY3Rpb247IH1cblxuICAgIC8vIE1FTlUgQlVUVE9OXG4gICAgLy8gVGhpcyBpcyBhIGxpdHRsZSBib251cy4gWW91IGRvbid0IG5lZWQgaXQgZm9yIG9mZiBjYW52YXMgdG8gd29yay4gTWl4aW5zIHRvIGJlIHdyaXR0ZW4gaW4gdGhlIGZ1dHVyZS5cbiAgICAudGFiLWJhciAubWVudS1pY29uIHtcbiAgICAgIGNvbG9yOiAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAkdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAkdGFiYmFyLW1lbnUtaWNvbi1wYWRkaW5nO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1pbmRlbnQ6ICR0YWJiYXItbWVudS1pY29uLXRleHQtaW5kZW50O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICB3aWR0aDogJHRhYmJhci1tZW51LWljb24td2lkdGg7XG5cbiAgICAgIC8vIEBpbmNsdWRlIGZvciB0aGUgaGFtYnVyZ2VyIG1lbnUtaWNvblxuICAgICAgLy9cbiAgICAgIC8vIEFyZ3VtZW50cyBhcyBmb2xsb3dzOiAoJHdpZHRoLCAkbGVmdCwgJHRvcCwgJHRoaWNrbmVzcywgJGdhcCwgJGNvbG9yLCAkaG92ZXItY29sb3IpXG4gICAgICAvLyAkd2lkdGggLSBXaWR0aCBvZiBoYW1idXJnZXIgaWNvbiBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aC5cbiAgICAgIC8vICRsZWZ0IC0gSWYgZmFsc2UsIGljb24gd2lsbCBiZSBjZW50ZXJlZCBob3Jpem9udGFsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtIERlZmF1bHQ6ICR0YWJiYXItaGFtYnVyZ2VyLWljb24tbGVmdD0gRmFsc2VcbiAgICAgIC8vICR0b3AgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIHZlcnRpY2FsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtIERlZmF1bHQ6ID0gRmFsc2VcbiAgICAgIC8vICR0aGlja25lc3MgLSB0aGlja25lc3Mgb2YgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweCBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzcyA9IDFweFxuICAgICAgLy8gJGdhcCAtIHNwYWNpbmcgYmV0d2VlbiB0aGUgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweCBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcCA9IDZweFxuICAgICAgLy8gJGNvbG9yIC0gaWNvbiBjb2xvciBEZWZhdWx0OiAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvclxuICAgICAgLy8gJGhvdmVyLWNvbG9yIC0gaWNvbiBjb2xvciB3aGVuIGhvdmVyZWQgRGVmYXVsdDogJHRhYmJhci1tZW51LWljb24taG92ZXJcbiAgICAgIC8vICRvZmZjYW52YXMgLSBTZXQgdG8gdHJ1ZVxuICAgICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCR0YWJiYXItaGFtYnVyZ2VyLWljb24td2lkdGgsICR0YWJiYXItaGFtYnVyZ2VyLWljb24tbGVmdCwgJHRhYmJhci1oYW1idXJnZXItaWNvbi10b3AsICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzLCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcCwgJHRhYmJhci1tZW51LWljb24tY29sb3IsICR0YWJiYXItbWVudS1pY29uLWhvdmVyLCB0cnVlKVxuICAgIH1cblxuICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb246IGxlZnQpOyB9XG4gICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb246IHJpZ2h0KTsgfVxuICAgIC50b3Atb2ZmLWNhbnZhcy1tZW51IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbjogdG9wKTsgfVxuICAgIC5ib3R0b20tb2ZmLWNhbnZhcy1tZW51IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbjogYm90dG9tKTsgfVxuXG4gICAgdWwub2ZmLWNhbnZhcy1saXN0IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1saXN0OyB9XG5cblxuICAgIC8vIEFOSU1BVElPTiBDTEFTU0VTXG4gICAgLy8gVGhlc2UgY2xhc3NlcyBhcmUgYWRkZWQgd2l0aCBKUyBhbmQgdHJpZ2dlciB0aGUgYWN0dWFsIGFuaW1hdGlvbi5cbiAgICAubW92ZS1yaWdodCB7XG4gICAgICA+IC5pbm5lci13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoJG9mZi1jYW52YXMtd2lkdGgsMCwwKTtcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7fVxuICAgIH1cblxuICAgIC5tb3ZlLWxlZnQge1xuICAgICAgPiAuaW5uZXItd3JhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0oJG9mZi1jYW52YXMtd2lkdGgpLDAsMCk7XG5cbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm1vdmUtdG9wIHtcbiAgICAgID4gLmlubmVyLXdyYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLC0oJG9mZi1jYW52YXMtaGVpZ2h0KSwwKTtcblxuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cbiAgICAubW92ZS1ib3R0b20ge1xuICAgICAgPiAuaW5uZXItd3JhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsKCRvZmYtY2FudmFzLWhlaWdodCksMCk7XG5cbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwIHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSwgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSxcbiAgICAgIC50b3Atb2ZmLWNhbnZhcy1tZW51LCAuYm90dG9tLW9mZi1jYW52YXMtbWVudSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1sZWZ0IHtcbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cbiAgICAub2ZmY2FudmFzLW92ZXJsYXAtcmlnaHQge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTAwMztcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLXRvcCB7XG4gICAgICAuYm90dG9tLW9mZi1jYW52YXMtbWVudSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1ib3R0b20ge1xuICAgICAgLnRvcC1vZmYtY2FudmFzLW1lbnUge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cblxuICAgIC8vIE9sZGVyIGJyb3dzZXJzXG4gICAgLm5vLWNzc3RyYW5zZm9ybXMge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHsgbGVmdDogLSgkb2ZmLWNhbnZhcy13aWR0aCk7IH1cbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgeyByaWdodDogLSgkb2ZmLWNhbnZhcy13aWR0aCk7IH1cbiAgICAgIC50b3Atb2ZmLWNhbnZhcy1tZW51IHsgdG9wOiAtKCRvZmYtY2FudmFzLWhlaWdodCk7IH1cbiAgICAgIC5ib3R0b20tb2ZmLWNhbnZhcy1tZW51IHsgYm90dG9tOiAtKCRvZmYtY2FudmFzLWhlaWdodCk7IH1cblxuICAgICAgLm1vdmUtbGVmdCA+IC5pbm5lci13cmFwIHsgcmlnaHQ6ICRvZmYtY2FudmFzLXdpZHRoOyB9XG4gICAgICAubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHsgbGVmdDogJG9mZi1jYW52YXMtd2lkdGg7IH1cbiAgICAgIC5tb3ZlLXRvcCA+IC5pbm5lci13cmFwIHsgcmlnaHQ6ICRvZmYtY2FudmFzLWhlaWdodDsgfVxuICAgICAgLm1vdmUtYm90dG9tID4gLmlubmVyLXdyYXAgeyBsZWZ0OiAkb2ZmLWNhbnZhcy1oZWlnaHQ7IH1cblxuXG4gICAgfVxuXG4gICAgLmxlZnQtc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXN1Ym1lbnUoJHBvc2l0aW9uOiBsZWZ0KTtcbiAgICAgICYubW92ZS1yaWdodCwgJi5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCwgJi5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAlLDAsMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdWJtZW51KCRwb3NpdGlvbjogcmlnaHQpO1xuICAgICAgJi5tb3ZlLWxlZnQsICYub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCwgJi5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAlLDAsMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb246IHRvcCk7XG4gICAgICAmLm1vdmUtYm90dG9tLCAmLm9mZmNhbnZhcy1vdmVybGFwLWJvdHRvbSwgJi5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsMCUsMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJvdHRvbS1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb246IGJvdHRvbSk7XG4gICAgICAmLm1vdmUtdG9wLCAmLm9mZmNhbnZhcy1vdmVybGFwLXRvcCwgJi5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsMCUsMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICB9XG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgIH1cbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5cblxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEZvdW5kYXRpb24gVmlzaWJpbGl0eSBDbGFzc2VzXG4vL1xuJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcbiRpbmNsdWRlLWFjY2Vzc2liaWxpdHktY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcbiRpbmNsdWRlLXRhYmxlLXZpc2liaWxpdHktY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcbiRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vXG4vLyBNZWRpYSBDbGFzcyBOYW1lc1xuLy9cbi8vIFZpc2liaWxpdHkgQnJlYWtwb2ludHNcbiR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXM6XG4gIHNtYWxsLFxuICBtZWRpdW0sXG4gIGxhcmdlLFxuICB4bGFyZ2UsXG4gIHh4bGFyZ2U7XG5cbiR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtcXVlcmllczpcbiAgdW5xdW90ZSgkc21hbGwtdXApLFxuICB1bnF1b3RlKCRtZWRpdW0tdXApLFxuICB1bnF1b3RlKCRsYXJnZS11cCksXG4gIHVucXVvdGUoJHhsYXJnZS11cCksXG4gIHVucXVvdGUoJHh4bGFyZ2UtdXApO1xuXG5AbWl4aW4gdmlzaWJpbGl0eS1sb29wIHtcbiAgQGVhY2ggJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xuICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiAoKTtcblxuICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6ICgpO1xuXG4gICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6ICgpO1xuICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiAoKTtcblxuICAgIEBlYWNoICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCBpbiAkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzIHtcbiAgICAgIEBpZiBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnQpIDwgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50KSB7XG4gICAgICAgIC8vIFNtYWxsZXIgdGhhbiBjdXJyZW50IGJyZWFrcG9pbnRcblxuICAgICAgICAkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1ub25lLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAsIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuXG4gICAgICAgIC8vIEZvdW5kYXRpb24gNCBjb21wYXRpYmlsaXR5OlxuICAgICAgICAvLyBJbmNsdWRlIC5zaG93L2hpZGUtZm9yLVtzaXplXSBhbmQgLnNob3cvaGlkZS1mb3ItW3NpemVdLWRvd24gY2xhc3Nlc1xuICAgICAgICAvLyBmb3Igc21hbGwsIG1lZGl1bSwgYW5kIGxhcmdlIGJyZWFrcG9pbnRzIG9ubHlcbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMgYW5kIGluZGV4KChzbWFsbCwgbWVkaXVtLCBsYXJnZSksICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgIT0gZmFsc2Uge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3Rib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93biwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICB9XG5cbiAgICAgIH0gQGVsc2UgaWYgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSA+IGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkge1xuICAgICAgICAvLyBMYXJnZXIgdGhhbiBjdXJyZW50IGJyZWFrcG9pbnRcblxuICAgICAgICAkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1ub25lLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAsIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuXG4gICAgICAgIC8vIEZvdW5kYXRpb24gNCBjb21wYXRpYmlsaXR5OlxuICAgICAgICAvLyBJbmNsdWRlIC5zaG93L2hpZGUtZm9yLVtzaXplXSBhbmQgLnNob3cvaGlkZS1mb3ItW3NpemVdLWRvd24gY2xhc3Nlc1xuICAgICAgICAvLyBmb3Igc21hbGwsIG1lZGl1bSwgYW5kIGxhcmdlIGJyZWFrcG9pbnRzIG9ubHlcbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMgYW5kIGluZGV4KChzbWFsbCwgbWVkaXVtLCBsYXJnZSksICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgIT0gZmFsc2Uge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3Rib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93biwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICB9XG5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBDdXJyZW50IGJyZWFrcG9pbnRcblxuICAgICAgICAkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1ub25lLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAsIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuXG4gICAgICAgIC8vIEZvdW5kYXRpb24gNCBjb21wYXRpYmlsaXR5OlxuICAgICAgICAvLyBJbmNsdWRlIC5zaG93L2hpZGUtZm9yLVtzaXplXSBhbmQgLnNob3cvaGlkZS1mb3ItW3NpemVdLWRvd24gY2xhc3Nlc1xuICAgICAgICAvLyBmb3Igc21hbGwsIG1lZGl1bSwgYW5kIGxhcmdlIGJyZWFrcG9pbnRzIG9ubHlcbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMgYW5kIGluZGV4KChzbWFsbCwgbWVkaXVtLCBsYXJnZSksICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgIT0gZmFsc2Uge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3Rib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93biwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogI3skY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnR9IGRpc3BsYXlzICovXG4gICAgQG1lZGlhICN7bnRoKCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtcXVlcmllcywgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50KSl9IHtcbiAgICAgICN7JHZpc2liaWxpdHktaW5oZXJpdC1saXN0fSB7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICN7JHZpc2liaWxpdHktbm9uZS1saXN0fSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpZiAkaW5jbHVkZS1hY2Nlc3NpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xuICAgICAgICAjeyR2aXNpYmlsaXR5LXZpc2libGUtbGlzdH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LWhpZGRlbi1saXN0fSB7XG4gICAgICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpZiAkaW5jbHVkZS10YWJsZS12aXNpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwidmlzaWJpbGl0eVwiKXtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdmlzaWJpbGl0eS1jbGFzc2VzICE9IGZhbHNlIHtcblxuICBAaW5jbHVkZSB2aXNpYmlsaXR5LWxvb3A7XG5cbiAgLyogT3JpZW50YXRpb24gdGFyZ2V0aW5nICovXG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbiAgdGFibGUge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIH1cbiAgdGhlYWQge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB9XG4gIHRib2R5IHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0ciB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIH1cbiAgdGQsXG4gIHRoIHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIH1cblxuICBAbWVkaWEgI3skbGFuZHNjYXBlfSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gICAgdGFibGUge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgICB0aGVhZCB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgICB0Ym9keSB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgICB0ciB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgI3skcG9ydHJhaXR9IHtcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCxcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbiAgICB0YWJsZSB7XG4gICAgICAmLnNob3ctZm9yLXBvcnRyYWl0LFxuICAgICAgJi5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRoZWFkIHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRib2R5IHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRyIHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIC8qIFRvdWNoLWVuYWJsZWQgZGV2aWNlIHRhcmdldGluZyAqL1xuICAuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCAuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICB0YWJsZS5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRhYmxlLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0aGVhZC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRib2R5LnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdHIuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGQuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRoLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgLyogU2NyZWVuIHJlYWRlci1zcGVjaWZpYyBjbGFzc2VzICovXG4gIC5zaG93LWZvci1zciB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLyogUHJpbnQgdmlzaWJpbGl0eSAqL1xuICBAaWYgJGluY2x1ZGUtcHJpbnQtc3R5bGVzIHtcbiAgICAucHJpbnQtb25seSxcbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLnByaW50LW9ubHksXG4gICAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgICAuaGlkZS1vbi1wcmludCxcbiAgICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuICB9XG59XG4iLCJcbiRmb290ZXItaDogNDAycHg7XG5cblxuaHRtbCwgYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI3BhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9vdGVyLWg7XG5cbiAgI2hlYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAjaGVhZGVyLXRvcCB7XG4gICAgICA+IC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICAgICAgfVxuICAgIH1cblxuICAgICNoZWFkZXItbWFpbiB7XG4gICAgICA+IC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgICNjb250ZW50LXRvcCB7XG5cbiAgICB9XG5cbiAgICAjY29udGVudC1tYWluIHtcbiAgICB9XG5cbiAgICAjY29udGVudC1ib3R0b20ge1xuXG4gICAgfVxuICB9XG59XG5cbmJvZHk6bm90KC5wYWdlLW5vZGUtdHlwZS1wYWdlKSB7XG4gICNjb250ZW50IHtcbiAgICAjY29udGVudC1tYWluIHtcbiAgICAgID4gLmxheW91dC1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBjb25zdHJhaW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNmb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGZvb3Rlci1oO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICB9XG59XG4iLCJcbi8vLyBDb25zdHJhaW50c1xuJGNvbnN0cmFpbi13OiAkc2l0ZS13O1xuJGNvbnN0cmFpbi1wOiAkc2l0ZS1wO1xuXG5AbWl4aW4gY29uc3RyYWluKCRwYWRkaW5nOnRydWUpIHtcbiAgQGlmICRwYWRkaW5nIHtcbiAgICBtYXgtd2lkdGg6ICRjb25zdHJhaW4tdztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb25zdHJhaW4tcDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29uc3RyYWluLXA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1heC13aWR0aDogJGNvbnN0cmFpbi13OyAvLyAtICgkY29uc3RyYWluLXAgKiAyKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5AbWl4aW4gY29uc3RyYWluLXJlc2V0KCkge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn0iLCJcbiRoZWFkZXItdG9wLWg6IDk1cHg7XG4kaGVhZGVyLXRvcC1jb250ZW50LWg6IHJlbS1jYWxjKCRoZWFkZXItdG9wLWgpIC0gKCRzaXRlLXAtcyAqIDIpO1xuXG4jaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogJGhlYWRlci1iZztcbiAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6ICRoZWFkZXItdG9wLWg7XG4gIFxuICAqIHtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgfVxuICBcbiAgI2hlYWRlci10b3Age1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYmFja2dyb3VuZDogJGhlYWRlci1iZztcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICBcbiAgICA+IC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkc2l0ZS1wLXM7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNpdGUtcC1zO1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNDApICsgJHNpdGUtcC1sICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6ICRoZWFkZXItdG9wLWg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICBcbiAgICAvLy8gbG9nb1xuICAgICNibG9jay1zdGFydGVyLWJyYW5kaW5nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJHNpdGUtcC1zO1xuICAgICAgbGVmdDogJGNvbnN0cmFpbi1wO1xuICAgICAgaGVpZ2h0OiAkaGVhZGVyLXRvcC1jb250ZW50LWg7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBcbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vLyBtZW51XG4gICAgbmF2I2Jsb2NrLXN0YXJ0ZXItbWFpbi1tZW51IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIFxuICAgICAgPiB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgQGluY2x1ZGUgZ3JvdXA7XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBoZWlnaHQ6ICRoZWFkZXItdG9wLWNvbnRlbnQtaDtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRoLWFsaWduOmNlbnRlciwgJHYtYWxpZ246Y2VudGVyKTtcbiAgICAgICAgICBwYWRkaW5nOiAwICRzaXRlLXAtcztcbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRqdmItZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhW3RpdGxlPScyNXRoIEFubml2ZXJzYXJ5J10ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvMjVfYW5uaXZlcnNhcnkuanBnJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoODApO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5zaG93LWRlc2t0b3Age1xuICAgICAgICA+IHVsIHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vLyBtb2JpbGUgbWVudSBidXR0b25cbiAgICAgIC5tb2JpbGUtbWVudS1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogJGNvbnN0cmFpbi1wO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6ICRqdmItYmx1ZS0xO1xuXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnw5cnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCR2LWFsaWduOiBjZW50ZXIpO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuc2hvdy1tb2JpbGUge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTEwMHZoO1xuICAgICAgICB9XG4gICAgICAgIC5tb2JpbGUtbWVudS1idXR0b24ge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJHYtYWxpZ246IGNlbnRlcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLy8gbW9iaWxlIG1lbnVcbiAgICBuYXYjYmxvY2stbWFpbm5hdmlnYXRpb24ge1xuICAgICAgQGluY2x1ZGUgZmlsbDtcbiAgICAgIHRvcDogJGhlYWRlci10b3AtaDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICBiYWNrZ3JvdW5kOiAkanZiLWJsdWUtMTtcbiAgICAgIHBhZGRpbmc6ICRzaXRlLXA7XG5cbiAgICAgIGJvZHkudG9vbGJhci1maXhlZCAmIHtcbiAgICAgICAgdG9wOiAkaGVhZGVyLXRvcC1oICsgMzlweDtcbiAgICAgIH1cblxuICAgICAgPiB1bDpub3QoLmNvbnRleHR1YWwtbGlua3MpIHtcbiAgICAgICAgQGluY2x1ZGUgZmlsbDtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkaC1hbGlnbjpjZW50ZXIsICR2LWFsaWduOmNlbnRlcik7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkaC1hbGlnbjpjZW50ZXIsICR2LWFsaWduOmNlbnRlcik7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzaXRlLXA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMy1mb250LXNpemU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIGFbdGl0bGU9JzI1dGggQW5uaXZlcnNhcnknXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmLm9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gICNoZWFkZXItbWFpbiB7XG4gICAgYmFja2dyb3VuZDogJGp2Yi1ibHVlLTI7XG4gICAgXG4gICAgLy8vIHRhZ2xpbmVcbiAgICAjYmxvY2stanZicnVuaWFuZGNvbXBhbnkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogJHNpdGUtcC14cyAwO1xuICAgICAgXG4gICAgICAqIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUGlueW9uIFNjcmlwdFwiO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiA3dnc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIGFkanVzdCBhYnNvbHV0ZSBwb3NpdGlvbiB0byBhZG1pbiBtZW51XG5ib2R5LnRvb2xiYXItZml4ZWQgI2hlYWRlciAjaGVhZGVyLXRvcCB7XG4gIHRvcDogMzlweDtcbn1cbmJvZHkudG9vbGJhci1maXhlZC50b29sYmFyLWhvcml6b250YWwudG9vbGJhci10cmF5LW9wZW4gI2hlYWRlciAjaGVhZGVyLXRvcCB7XG4gIHRvcDogNzlweDtcbn1cbmJvZHkudG9vbGJhci1maXhlZC50b29sYmFyLXZlcnRpY2FsLnRvb2xiYXItdHJheS1vcGVuICNoZWFkZXIgI2hlYWRlci10b3Age1xuICB0b3A6IDM5cHg7XG4gIGxlZnQ6IDI0MHB4O1xufSIsIlxuLy8vIEdsb2JhbCBTaXRlIFZhcmlhYmxlc1xuXG4vLy8gV2lkdGhcbiRzaXRlLXc6IHJlbS1jYWxjKDEwMjQpO1xuXG4vLy8gUGFkZGluZ1xuJHNpdGUtcDogcmVtLWNhbGMoMjQpO1xuJHNpdGUtcC14czogJHNpdGUtcCAvIDQ7XG4kc2l0ZS1wLXM6ICRzaXRlLXAgLyAyO1xuJHNpdGUtcC1sOiAkc2l0ZS1wICogMjtcbiRzaXRlLXAteGw6ICRzaXRlLXAgKiA0O1xuXG4vLy8gRm9udCBTaXplXG4kc2l0ZS1mb250LWJhc2U6IDE2cHgiLCJcbi8vLyBHcm91cCBDbGVhcmZpeCBNaXhpblxuQG1peGluIGdyb3VwKCkge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBGaWxsIEFyZWEgTWl4aW5cbkBtaXhpbiBmaWxsKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLy8vIEZsZXggRGlzcGxheSBNaXhpblxuQG1peGluIGZsZXgoJGgtYWxpZ246bm9uZSwgJHYtYWxpZ246bm9uZSwgJGRpcjpub25lKSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBcbiAgQGlmICRoLWFsaWduICE9IG5vbmUge1xuICAgIC13ZWJraXQtYm94LXBhY2s6ICRoLWFsaWduO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkaC1hbGlnbjtcbiAgICAtbXMtZmxleC1wYWNrOiAkaC1hbGlnbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRoLWFsaWduO1xuICB9XG4gIFxuICBAaWYgJHYtYWxpZ24gIT0gbm9uZSB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246ICR2LWFsaWduO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICR2LWFsaWduO1xuICAgIC1tcy1mbGV4LWFsaWduOiAkdi1hbGlnbjtcbiAgICBhbGlnbi1pdGVtczogJHYtYWxpZ247XG4gIH1cbiAgXG4gIEBpZiAkZGlyICE9IG5vbmUge1xuICAgIC8vLXdlYmtpdC1ib3gtb3JpZW50OiAkZGlyO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogJGRpcjtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcbiAgfVxufVxuXG4vLy8gVHJhbnNmb3JtIE1peGluXG5AbWl4aW4gdHJhbnNmb3JtKCR0cmFuc2Zvcm0pIHtcbiAgLW1vei10cmFuc2Zvcm06ICR0cmFuc2Zvcm07XG4gIC1vLXRyYW5zZm9ybTogJHRyYW5zZm9ybTtcbiAgLW1zLXRyYW5zZm9ybTogJHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICR0cmFuc2Zvcm07XG4gIHRyYW5zZm9ybTogJHRyYW5zZm9ybTtcbn1cblxuQG1peGluIHNwYWNlcigkY29sb3I6ICNiZmJmYmYpIHtcbiAgY29udGVudDogJ1xcMjY2NicgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiBuby1zZWxlY3QoKSB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgLyogaU9TIFNhZmFyaSAqL1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAvKiBDaHJvbWUvU2FmYXJpL09wZXJhICovXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLyogS29ucXVlcm9yICovXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgLW1zLXVzZXItc2VsZWN0OiBub25lOyAvKiBJbnRlcm5ldCBFeHBsb3Jlci9FZGdlICovXG4gIHVzZXItc2VsZWN0OiBub25lOyAvKiBOb24tcHJlZml4ZWQgdmVyc2lvbiwgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnkgYW55IGJyb3dzZXIgKi9cbn0iLCJcbiNwYWdlIHtcbiAgXG4gICNjb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29udGVudC1iZztcbiAgICBjb2xvcjogJGNvbnRlbnQtY29sb3I7XG4gICAgXG4gICAgI2NvbnRlbnQtdG9wIHtcbiAgICAgIFxuICAgIH1cbiAgICBcbiAgICAjY29udGVudC1tYWluIHtcbiAgICAgIFxuICAgICAgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2l0ZS1wLWw7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgICNjb250ZW50LWJvdHRvbSB7XG4gICAgICBcbiAgICB9XG4gIH1cblxuICAjcGFnZS1zY3JvbGwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDIwcHg7XG4gICAgcmlnaHQ6IC0xMDBweDtcbiAgICB6LWluZGV4OiAxMDE7XG5cbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICBmb250LWZhbWlseTogb3hib3c7XG4gICAgZm9udC1zdHlsZTogMTlweDtcblxuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKGJsYWNrLC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICBAaW5jbHVkZSBmbGV4KCRoLWFsaWduOmNlbnRlciwgJHYtYWxpZ246Y2VudGVyKTtcblxuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogLjVzO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIG5vLXNlbGVjdDtcblxuICAgICYuc2hvdyB7XG4gICAgICByaWdodDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuYm9keS51c2VyLWxvZ2dlZC1pbiAjcGFnZSAjcGFnZS1zY3JvbGwge1xuICBib3R0b206IDYwcHg7XG59IiwiXG4jZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTtcbiAgYmFja2dyb3VuZDogJGZvb3Rlci1iZztcbiAgY29sb3I6ICRmb290ZXItY29sb3I7XG4gIFxuICAqIHtcbiAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgfVxuICBcbiAgPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6ICRzaXRlLXAtbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpdGUtcC1sO1xuICB9XG4gIFxuICAjYmxvY2stZm9vdGVyYWRkcmVzcyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIFxuICAgIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBcbiAgICAgICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAjYmxvY2stZGlzY2xhaW1lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMDApO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgXG4gICAgKiB7XG4gICAgICBmb250LXNpemU6IC45MGVtO1xuICAgICAgY29sb3I6ICR3aGl0ZTsvLyRqdmItZ3JheS0xO1xuICAgIH1cbiAgfVxuICBcbiAgI2Jsb2NrLWNvcHlyaWdodGJsb2NrIHtcbiAgICBjb2xvcjogIzk5OTsgLy8kanZiLWdyYXktMTtcbiAgICBmb250LXNpemU6IC45MGVtO1xuXG4gICAgKiB7XG4gICAgICBjb2xvcjogIzk5OTsgLy8kanZiLWdyYXktMTtcbiAgICB9XG4gIH1cblxuICAjYmxvY2stb3hib3dsYWJzY29weXJpZ2h0YmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRzaXRlLXAtcztcbiAgICBjb2xvcjogJGp2Yi1ncmF5LTE7XG4gICAgZm9udC1zaXplOiAuOTBlbTtcblxuICAgICoge1xuICAgICAgY29sb3I6ICRqdmItZ3JheS0xO1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAjYmxvY2stZm9vdGVyYWRkcmVzcyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkc2l0ZS1wLWw7XG5cbiAgICAgICoge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgICNibG9jay1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIFxuICAgICNibG9jay1jb3B5cmlnaHRibG9jayB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICNibG9jay1veGJvd2xhYnNjb3B5cmlnaHRibG9jayB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG4iLCJcbi5mcy1zIHtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAuNzU7XG59XG4uZnMtbSB7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xufVxuLmZzLWwge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuMjU7XG59XG4uZnMteGwge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuNTtcbn1cbi5mcy14eGwge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuNzU7XG59XG5cbi5mLXNlcmlmLFxuLmYtc2VyaWYgKiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5mLXNhbnMsXG4uZi1zYW5zICoge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG59XG5cbnA6bm90KC50ZXh0LWFsaWduLWNlbnRlcik6bm90KC50ZXh0LWFsaWduLXJpZ2h0KSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbmhyIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICY6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIHNwYWNlcjtcbiAgfVxufSIsIlxuI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSBoMSB7XG4gIHBhZGRpbmctdG9wOiAkc2l0ZS1wLWw7XG4gIFxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5wYXJhZ3JhcGgudGl0bGUtYWxpZ24tY2VudGVyIC5maWVsZC0tbmFtZS1maWVsZC1wLXRpdGxlLFxuLnBfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnBhcmFncmFwaC50aXRsZS1hbGlnbi1yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtcC10aXRsZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5oMSwgaDIge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuaDEge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlcmlmO1xufSIsIlxudGFibGUge1xuICBtYXJnaW46ICRzaXRlLXAgYXV0bztcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgXG4gIHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZDogJGp2Yi1ncmF5LTI7XG4gIH1cbiAgXG4gIGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICB9XG59IiwiXG4kcXVvdGUtdzogcmVtLWNhbGMoNjApO1xuXG4lcXVvdGUsIGJsb2NrcXVvdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRzaXRlLXAtbDtcbiAgcGFkZGluZy10b3A6ICRzaXRlLXAtbDtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWY7XG4gIGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTtcbiAgXG4gICoge1xuICAgIGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlcmlmO1xuICB9XG4gIFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNSk7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgYmFja2dyb3VuZDogJGp2Yi1ibHVlO1xuICB9XG4gIFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxQyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKC0kcXVvdGUtdykgLyAyO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogJHF1b3RlLXc7XG4gICAgaGVpZ2h0OiAkcXVvdGUtdztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogJGp2Yi1ibHVlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4wNTsgLy8kcXVvdGUtdyAqIDEuNjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAkcXVvdGUtdyAqIDEuNTtcbiAgfVxufSIsInVsIHtcbiAgbWFyZ2luOiAkc2l0ZS1wIDAgJHNpdGUtcCAxLjlyZW07XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGxpIHtcblxuICB9XG5cbn0iLCJcbiRidG4tYmctcHJpbWFyeTogJHNpdGUtcHJpbWFyeS1jb2xvcjtcbiRidG4tYmctc2Vjb25kYXJ5OiAkanZiLWdyYXktMTtcbiRidG4tYmctdGVydGlhcnk6ICRqdmItZ3JheS0yO1xuJGJ0bi1zaGFkb3c6IDBweCAwcHggNXB4IDAgcmdiYSgwLDAsMCwwLjI1KTtcblxuQG1peGluIGJ0bigkdHlwZTpwcmltYXJ5LCAkcGFkZGluZzokc2l0ZS1wLXMsICRidG4tYmc6bm9uZSwgJGJ0bi1jb2xvcjpibGFjaykge1xuXG4gIEBpZiAkcGFkZGluZyA8ICRzaXRlLXAtcyB7XG4gICAgZm9udC1zaXplOiAuOGVtO1xuXG4gIH1cbiAgQGlmICRidG4tYmcgIT0gbm9uZSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRwYWRkaW5nOiRwYWRkaW5nLCAkYmc6JGJ0bi1iZywgJHJhZGl1czp0cnVlKTtcbiAgICBjb2xvcjogJGJ0bi1jb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBlbHNlIGlmICR0eXBlID09IHByaW1hcnkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkcGFkZGluZzokcGFkZGluZywgJGJnOiRidG4tYmctcHJpbWFyeSwgJHJhZGl1czp0cnVlKTtcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1zaGFkb3c7XG4gIH1cbiAgQGVsc2UgaWYgJHR5cGUgPT0gc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24oJHBhZGRpbmc6JHBhZGRpbmcsICRiZzokYnRuLWJnLXNlY29uZGFyeSwgJHJhZGl1czp0cnVlKTtcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1zaGFkb3c7XG4gIH1cbiAgQGVsc2UgaWYgJHR5cGUgPT0gdGVydGlhcnkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkcGFkZGluZzokcGFkZGluZywgJGJnOiRidG4tYmctdGVydGlhcnksICRyYWRpdXM6dHJ1ZSk7XG4gICAgY29sb3I6ICRvaWwgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAkYnRuLXNoYWRvdztcbiAgfVxuICBAZWxzZSBpZiAkdHlwZSA9PSBvdXRsaW5lIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJHBhZGRpbmc6JHBhZGRpbmcsICRiZzp0cmFuc3BhcmVudCwgJHJhZGl1czp0cnVlKTtcbiAgICBjb2xvcjogJGJ0bi1jb2xvcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnRuLWNvbG9yO1xuXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4uYnV0dG9uLWRlZmF1bHQsXG4uaXMtc3R5bGUtYnV0dG9uIC5idXR0b24ge1xuICBAaW5jbHVkZSBidG47XG59XG5cbi5idXR0b24tc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgYnRuKHNlY29uZGFyeSk7XG59XG5cbi5idXR0b24tdGVydGlhcnkge1xuICBAaW5jbHVkZSBidG4odGVydGlhcnkpO1xufVxuXG4uYnV0dG9uLXdoaXRlIHtcbiAgQGluY2x1ZGUgYnRuKCRidG4tYmc6d2hpdGUsICRidG4tY29sb3I6JGp2Yi1ncmF5KTtcbn1cblxuLmJ1dHRvbi1vdXRsaW5lLFxuLmlzLXN0eWxlLWJ1dHRvbi1vdXRsaW5lIC5idXR0b24ge1xuICBAaW5jbHVkZSBidG4ob3V0bGluZSk7XG59XG5cbi5idXR0b24tb3V0bGluZSB7XG4gIGJvcmRlci1jb2xvcjogIzQ1NWE2NDtcbiAgY29sb3I6ICM0NTVhNjQ7XG59XG4iLCJcbmZvcm0ge1xuICBcbiAgLmZvcm0tc3VibWl0IHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gIH1cbiAgXG4gIC8vLyB0b3AgbGV2ZWwgaXRlbXNcbiAgPiBkaXYgPiAuZm9ybS1pdGVtIHtcbiAgICBcbiAgICA+IGxhYmVsIHtcbiAgICAgIC8vZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIFxuICAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIFxuICAgIC8vLyBuZXN0ZWQgZm9ybSBpdGVtc1xuICAgIC5mb3JtLWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1zO1xuICAgIH1cbiAgICBcbiAgICBpbnB1dCwgdGV4dGFyZWEge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBcbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXhzXG4gICAgfVxuICAgIFxuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXAteHM7XG4gICAgfVxuICAgIFxuICAgIFxuICAgIFxuICAgIC8vLyBjdXN0b20gcmFkaW8gYnV0dG9uc1xuICAgICYuZm9ybS10eXBlLXJhZGlvLFxuICAgICYuZm9ybS10eXBlLWNoZWNrYm94IHtcbiAgICAgIFxuICAgICAgaW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgXG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IC4xZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgICAgICAgIFxuICAgICAgICAgIGJhY2tncm91bmQ6ICRpbnB1dC1iZy1jb2xvcjtcbiAgICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggJGlucHV0LWJvcmRlci1zdHlsZSAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIFxuICAgICAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmZvcm0tdHlwZS1yYWRpbyB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8vIGZpbGUgdXBsb2FkXG4gICAgJi53ZWJmb3JtLWNvbXBvbmVudC1maWxlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgXG4gICAgICAuZm9ybS1tYW5hZ2VkLWZpbGUge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgXG4gICAgICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogJHNpdGUtcC1zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vLyB0aW1lIHdpdGggaG91ciBhbmQgbWludXRlXG4gICAgJi53ZWJmb3JtLWNvbXBvbmVudC10aW1lIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgXG4gICAgICAud2ViZm9ybS1jb250YWluZXItaW5saW5lID4gKntcbiAgICAgICAgQGV4dGVuZCAubWVkaXVtLTQ7XG4gICAgICAgIEBleHRlbmQgLnNtYWxsLTEyO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm0taXRlbS1zdWJtaXR0ZWQtdGltZS1ob3VyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNpdGUtcCAqICgyLzMpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1pdGVtLXN1Ym1pdHRlZC10aW1lLW1pbnV0ZSB7XG4gICAgICAgIHBhZGRpbmc6IDAgJHNpdGUtcCAqICgxLzMpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm0tcmFkaW9zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2l0ZS1wICogKDIvMyk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2Uge1xuICAvLyBIaWRlIFBhZ2UgVGl0bGVcbiAgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFBhZ2VyXG4gIC5wYWdlcl9faXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGEge1xuICAgICAgcGFkZGluZzogLjVlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmlzLWFjdGl2ZSAmIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwLjI3NXJlbTtcbiAgICAgICAgICByaWdodDogMC4yNzVyZW07XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNjb250ZW50IHtcbiAgICAjY29udGVudC1tYWluIHtcbiAgICAgID4gLmxheW91dC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJUaW5vc1wiLCBzZXJpZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICA+ICo6bm90KC5hbGlnbmZ1bGwpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvbnN0cmFpbjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiAuYWxpZ25mdWxsIHtcbiAgICAgICAgICAgID4gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjb25zdHJhaW47XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBQYWdlIFRpdGxlXG4jYmxvY2stc3RhcnRlci1wYWdlLXRpdGxlIGgxIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG59XG5cbi8vIEhlYWRpbmdcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICYuaXMtc3R5bGUtdGV4dC1zaGFkb3cge1xuICAgIHRleHQtc2hhZG93OiAwIDAgNXB4IGJsYWNrO1xuICB9XG59XG5cbi8vIFNwYWNlclxuLndwLWJsb2NrLWp2YnJ1bmktc3BhY2VyIHtcbiAgaGVpZ2h0OiAzcmVtO1xuXG4gICYuaXMtc3R5bGUtbGFyZ2Uge1xuICAgIGhlaWdodDogMXJlbTtcbiAgfVxuXG4gICYuaXMtc3R5bGUtbWVkaXVtIHtcbiAgICBoZWlnaHQ6IDNyZW07XG4gIH1cblxuICAmLmlzLXN0eWxlLWxhcmdlIHtcbiAgICBoZWlnaHQ6IDZyZW07XG4gIH1cbn1cblxuLy8gQ292ZXJcbi53cC1ibG9jay1jb3Zlcixcbi53cC1ibG9jay1jb3Zlci1pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMS41cmVtO1xuXG4gID4gLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGNvbnN0cmFpbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi8vIEltYWdlXG4ud3AtYmxvY2staW1hZ2Uge1xuICBtYXJnaW46IDAgYXV0bztcblxuICBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4ud3AtYmxvY2stY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vIEdyb3VwIC8gQ292ZXIgd2l0aCBCYWNrZ3JvdW5kXG4ud3AtYmxvY2stZ3JvdXAsXG4ud3AtYmxvY2stY292ZXIge1xuICAmLmhhcy1iYWNrZ3JvdW5kIHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAmLmlzLXN0eWxlLXBhZGRpbmctbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICB9XG5cbiAgaDEge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBWaWV3IGluc2lkZSBHcm91cCAvIENvdmVyXG4gIC52aWV3cy1lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgPiBoMiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGlnbm1lbnQgY2xhc3Nlc1xuLmFsaWdubGVmdCxcbi5hbGlnbmNlbnRlcixcbi5hbGlnbnJpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxLjVlbTtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi8vIFRleHQgYWxpZ25tZW50IGNsYXNzZXNcbi5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmhhcy10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIFZpZXc6IENsaWVudCBMZXR0ZXIgRXhjZXJwdHNcbi52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnZpZXctZmlsdGVycyB7XG4gICAgLnZpZXctY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkanZiLWJsdWU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmJ1dHRvbi1vdXRsaW5lIHtcbiAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgJi5maWx0ZXItYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRqdmItYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5vZGVfX2NhcmQge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuXG4gICAgLmZpZWxkLS1uYW1lLWJvZHkgPiAqIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnZpZXdzLWdyb3VwX190aXRsZSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY29sb3I6ICRqdmItYmx1ZTtcbiAgfVxuXG4gIC52aWV3cy1ncm91cF9fYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgfVxufVxuXG4vL1xuLy8gVmlldzogVG9waWNzIChDb21tZW50YXJ5KVxuLnZpZXctdG9waWNzLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC52aWV3LXRvcGljcy1saXN0IHtcbiAgICAudmlldy1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM5LCAyMzksIDIzOSwgMSk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vICBWaWV3OiBBcnRpY2xlcyAoL2FydGljbGVzKVxuLnZpZXctYXJ0aWNsZXMudmlldy1kaXNwbGF5LWlkLWFydGljbGVzX2Jsb2NrIHtcbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJcbiRtZXNzYWdlLWJnOiB3aGl0ZXNtb2tlO1xuJG1lc3NhZ2UtY29sb3I6ICRvaWw7XG5cbiNjb250ZW50LXRvcCB7XG4gIFxuICAubWVzc2FnZXMge1xuICAgIEBpbmNsdWRlIGNvbnN0cmFpbjtcbiAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIFxuICAgIC5tZXNzYWdlX19jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGFsZXJ0KCRiZzokbWVzc2FnZS1iZyk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAkc2l0ZS1wLXM7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXA7XG4gICAgICBjb2xvcjogJG1lc3NhZ2UtY29sb3I7XG4gICAgICBib3JkZXI6IG5vbmU7IC8vMXB4IHNvbGlkIGRhcmtlbigkbWVzc2FnZS1iZywgNSUpO1xuICAgICAgYm9yZGVyLWxlZnQ6ICRzaXRlLXAteGwgc29saWQgJGluZm8tY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCAwIHJnYmEoMCwwLDAsMC4yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXEU4MzEnO1xuICAgICAgICBmb250LWZhbWlseTogb3hib3c7XG4gICAgICAgIHdpZHRoOiAkc2l0ZS1wLXhsO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC0kc2l0ZS1wLXhsO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkdi1hbGlnbjpjZW50ZXIsICRoLWFsaWduOmNlbnRlcik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICBjb2xvcjogcmdiYSh3aGl0ZSwgLjgpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAuY2xvc2Uge1xuICAgICAgICBAaW5jbHVkZSBhbGVydC1jbG9zZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgcmlnaHQ6ICRzaXRlLXAtcztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICB9XG4gICAgfVxuICAgICAgXG4gICAgJi5tZXNzYWdlcy0tc3RhdHVzIC5tZXNzYWdlX19jb250ZW50IHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxFODFEJztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5tZXNzYWdlcy0tZXJyb3IgLm1lc3NhZ2VfX2NvbnRlbnQge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxFODNDJztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5tZXNzYWdlcy0td2FybmluZyAubWVzc2FnZV9fY29udGVudCB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHdhcm5pbmctY29sb3I7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcRTg0MSc7XG4gICAgICB9XG4gICAgfVxuICAgICAgXG4gICAgJi5hbGVydC1jbG9zZSB7XG4gICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn0iLCJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBBZG1pbiBUYWJzIC0tIFZpZXcsIEVkaXQsIGV0Yy5cblxuJHRhYi1iZzogJGJhc2U7XG4kdGFiLWFjdGl2ZS1iZzogJGJvZHktYmc7XG5cbiNhZG1pbiB7XG4gXG4gICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgLy9sZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogLTFweDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIFxuICAgIEBpbmNsdWRlIGNvbnN0cmFpbjtcbiAgICBcbiAgICB1bCB7XG4gICAgICBAZXh0ZW5kICVncm91cDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwwLDAsLjUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIFxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnRuKCRidG4tYmc6IG1lZGl1bXNlYWdyZWVuLCAkYnRuLWNvbG9yOiB3aGl0ZSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIFxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYShibGFjaywuMik7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYShibGFjaywuMik7XG4gICAgICAgICAgXG4gICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgJltocmVmJD0nZGVsZXRlJ10ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnRuKCRidG4tYmc6IGNyaW1zb24sICRidG4tY29sb3I6IHdoaXRlKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAmW2hyZWYqPSdkZXZlbCddIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bigkYnRuLWJnOiBnb2xkLCAkYnRuLWNvbG9yOiB3aGl0ZSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJcbiN0b29sYmFyLWFkbWluaXN0cmF0aW9uIHtcbiAgXG4gICN0b29sYmFyLWl0ZW0tYWRtaW5pc3RyYXRpb24tdHJheSB7XG4gICAgXG4gICAgLnRvb2xiYXItbWVudSB7XG4gICAgICBcbiAgICAgIGxpLm1lbnUtaXRlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2FkbWluLXRvb2xiYXItc2VhcmNoLWlucHV0IHtcbiAgICBoZWlnaHQ6IHVuc2V0O1xuICB9XG59XG4iLCJcbmJvZHkucGF0aC1ub2RlIHtcbiAgXG4gICNibG9jay1zdGFydGVyLXBhZ2UtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ubm9kZSB7XG4gIFxuICAubm9kZV9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogJHNpdGUtcDtcbiAgICBcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGJ0bigkdHlwZTpvdXRsaW5lLCAkYnRuLWNvbG9yOiRqdmItYmx1ZSwgJHBhZGRpbmc6JHNpdGUtcC1zKTtcbiAgICB9XG4gIH1cblxuICAmLm5vZGUtLXZpZXctbW9kZS1mdWxsIHtcbiAgICAubm9kZV9faW5mbyB7XG4gICAgICAuc2VwIHtcbiAgICAgICAgbWFyZ2luOiAwICRzaXRlLXAteHM7XG4gICAgICB9XG4gICAgICAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2l0ZS1wLXhzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIlxuYm9keS5wYXRoLXVzZXIge1xuICBcbiAgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtdXNlci1waWN0dXJlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaXRlLXA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcDtcbiAgICBtYXJnaW4tdG9wOiAtJHNpdGUtcC14bDtcbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXBvc2l0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG5cbi8vLnByb2ZpbGUucC1kaXNwbGF5LWZ1bGwge1xuLnByb2ZpbGUge1xuICBAaW5jbHVkZSBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgLnByb2ZpbGVfX2ltYWdlIHtcbiAgICBmbGV4OiAxIDAgMjAlO1xuICAgIG1hcmdpbjogMCAwICRzaXRlLXAgJHNpdGUtcDtcbiAgfVxuXG4gIC5wcm9maWxlX19uYW1lICoge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5wcm9maWxlX19wb3NpdGlvbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXAtcztcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9maWxlX19pbWFnZSB7XG4gICAgICBmbGV4OiAxIDAgKDEwMCUvMyk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAucHJvZmlsZV9faW1hZ2Uge1xuICAgICAgZmxleDogMSAwICgxMDAlLzMpO1xuICAgICAgbWFyZ2luOiAwIDAgJHNpdGUtcCAwO1xuICAgIH1cbiAgICBcbiAgICAucHJvZmlsZV9fbmFtZSxcbiAgICAucHJvZmlsZV9fcG9zaXRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufSIsIlxuYm9keS5wYXRoLWZyb250cGFnZSB7XG4gICNibG9jay1zdGFydGVyLXBhZ2UtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI2NvbnRlbnQtbWFpbiA+IC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG59IiwiXG5ib2R5LnBhZ2Utbm9kZS10eXBlLXBhZ2Uge1xuICBcbiAgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtYm9keSB7XG4gICAgIFxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgICAgXG4gICAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRzaXRlLXA7XG4gICAgICB9XG4gICAgICAmLmFsaWduLWxlZnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzaXRlLXA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBociB7XG4gICAgQGV4dGVuZCAlZ3JvdXA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAkc2l0ZS1wIDA7XG4gICAgXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgc3BhY2VyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBwYXJhZ3JhcGhzIHN1YiBtZW51XG4kcGFyYWdyYXBoLW1lbnUtaDogcmVtLWNhbGMoNDUpO1xuXG4ubm9kZS1wYWdlLmhhcy1wYi1tZW51IHtcbiAgXG4gID4gLmNvbnRlbnQge1xuICAgIG1hcmdpbjogJHNpdGUtcCAwIDA7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogJHNpdGUtcDtcbiAgICBcbiAgICA+IC5wYi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IDMwMTtcbiAgICAgIGhlaWdodDogJHBhcmFncmFwaC1tZW51LWg7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBcbiAgICAgIGJhY2tncm91bmQ6ICRzaXRlLWJvZHktY29sb3I7IC8vcmdiYSgkc2l0ZS1ib2R5LWNvbG9yLCAuOSk7XG4gICAgICBcbiAgICAgICYuZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIC8vYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLDAsMCwwLjIpO1xuICAgICAgfVxuICAgICAgXG4gICAgICA+IHVsIHtcbiAgICAgICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICAgICAgICBAaW5jbHVkZSBpbmxpbmUtbGlzdDtcbiAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6ICRzaXRlLXAtcyAkY29uc3RyYWluLXAgMDtcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAkc2l0ZS1wLzIgJHNpdGUtcC1zO1xuICAgICAgICAgIFxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGV4dGVuZCBoNTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IsICRzcGVlZDouN3MpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgkYm9keS1mb250LWNvbG9yLCAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgID4gLnBhcmFncmFwaHMtaXRlbXMtZmllbGQtcGFyYWdyYXBocyB7XG4gICAgICBwYWRkaW5nLXRvcDogJHBhcmFncmFwaC1tZW51LWg7XG4gICAgfVxuICB9XG59IiwiXG4ubm9kZS1zbGlkZXNob3ctc2xpZGUge1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBcbiAgLnNsaWRlLXdyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIFxuICAuc2xpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgXG4gIC5zbGlkZS1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIFxuICAuc2xpZGUtaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBcbiAgICAqIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBcbiAgLnNsaWRlLXRleHQge1xuICAgIEBpbmNsdWRlIGZpbGw7XG4gICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICAgIFxuICAgID4gLmlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgLy93aWR0aDogKDEwMCUgKiAoMS8zKSk7XG4gICAgICBwYWRkaW5nOiAkc2l0ZS1wO1xuICAgICAgXG4gICAgICBmb250LXNpemU6ICRoMi1mb250LXNpemU7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGZsZXgoJHYtYWxpZ246Y2VudGVyLCAkaC1hbGlnbjpjZW50ZXIsICRkaXI6Y29sdW1uKTtcbiAgICAgIFxuICAgICAgLnNsaWRlLXRleHQtbGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogJHNpdGUtcC1zIDA7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5saW5lLWxpbmsgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgICAgZm9udC1zaXplOiAkaDItZm9udC1zaXplO1xuICAgICAgICBtYXJnaW46ICRzaXRlLXAtcyAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgJi50ZXh0LXBvcy1sZWZ0IC5zbGlkZS10ZXh0IC5pbm5lciB7XG4gICAgbGVmdDogMDtcbiAgfVxuICBcbiAgJi50ZXh0LXBvcy1jZW50ZXIgLnNsaWRlLXRleHQgLmlubmVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC8vbGVmdDogKDEwMCUgKiAoMS8zKSk7XG4gIH1cbiAgXG4gICYudGV4dC1wb3MtcmlnaHQgLnNsaWRlLXRleHQgLmlubmVyIHtcbiAgICByaWdodDogMDtcbiAgfVxufSIsIlxuLm5vZGUubm9kZS0tdHlwZS1hcnRpY2xlIHtcbiAgXG4gIC8vLyBBTEwgVklFVyBNT0RFU1xuICAubm9kZV9faW5mbyB7XG4gICAgXG4gICAgPiAqIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAqIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6ICRoNS1mb250LXNpemU7XG4gICAgfVxuICAgIC5ub2RlX19kYXRlIHtcbiAgICAgIGNvbG9yOiAkanZiLWdyYXktMTtcbiAgICB9XG4gICAgLnNlcCB7XG4gICAgICBtYXJnaW46IDAgLjI1ZW07XG4gICAgfVxuICAgIC5maWVsZC0tbmFtZS1maWVsZC10b3BpY3Mge1xuICAgICAgKiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIC5maWVsZF9faXRlbTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICBhOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnLCc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5ub2RlX19hdXRob3IsIC5ub2RlX19hdXRob3IgKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGp2Yi1ncmF5LTE7XG4gICAgXG4gICAgc3BhbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IC4yNWVtO1xuICAgIH1cbiAgfVxuXG4gIC8vLyBOT0RFIEZVTExcbiAgJi5ub2RlLS12aWV3LW1vZGUtZnVsbCB7XG4gICAgXG4gICAgaGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXA7XG4gICAgfVxuICBcbiAgICAubm9kZV9fc3VidGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1zO1xuICAgIH1cbiAgICBcbiAgICAubm9kZV9faW5mbyB7XG5cbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2F1dGhvciB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXM7XG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgd2lkdGg6IDM1JTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc2l0ZS1wO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubm9kZV9fY29udGVudCB7XG4gICAgICBcbiAgICB9XG4gIH1cbiAgXG4gIC8vLyBOT0RFIFRFQVNFUlxuICAmLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIge1xuICAgICRpbWctdzogMzAlO1xuICAgIFxuICAgIGhlYWRlciAubm9kZV9fdGl0bGUge1xuICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19jb250ZW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWF4LXdpZHRoOiAoMTAwJSAtICRpbWctdyk7XG4gICAgICBcbiAgICAgIC5ub2RlX19pbmZvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1zO1xuICAgICAgfVxuICAgIFxuICAgICAgLm5vZGVfX3N1YnRpdGxlIHtcbiAgICAgICAgKiB7XG4gICAgICAgICAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbWFnZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXgtd2lkdGg6ICRpbWctdztcbiAgICAgIHBhZGRpbmctbGVmdDogJHNpdGUtcDtcbiAgICB9XG4gIH1cbn0iLCJcbi5ub2RlLm5vZGUtLXR5cGUtYmxvZy1lbnRyeSB7XG4gIFxuICAvLy8gQUxMIFZJRVcgTU9ERVNcbiAgLm5vZGVfX2luZm8ge1xuICAgICAgICBcbiAgICA+ICoge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICAgICoge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTtcbiAgICB9XG4gICAgLm5vZGVfX2RhdGUge1xuICAgICAgY29sb3I6ICRqdmItZ3JheS0xO1xuICAgIH1cbiAgICAuc2VwIHtcbiAgICAgIG1hcmdpbjogMCAuMjVlbTtcbiAgICB9XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRvcGljcyB7XG4gICAgICAqIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgLmZpZWxkX19pdGVtOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLm5vZGVfX2F1dGhvciwgLm5vZGVfX2F1dGhvciAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkanZiLWdyYXktMTtcbiAgICBcbiAgICBzcGFuIHtcbiAgICAgIHBhZGRpbmctbGVmdDogLjI1ZW07XG4gICAgfVxuICB9XG4gIFxuICAvLy8gTk9ERSBGVUxMXG4gICYubm9kZS0tdmlldy1tb2RlLWZ1bGwge1xuICAgIFxuICAgIGhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIH1cbiAgICBcbiAgICAubm9kZV9faW5mbyB7XG4gICAgICBcbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2F1dGhvciB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXM7XG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIH1cbiAgICBcbiAgICAubm9kZV9fY29udGVudCB7XG4gICAgICBcbiAgICB9XG4gICAgXG4gICAgZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXA7XG4gICAgICBcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgc3BhY2VyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubm9kZV9fYXV0aG9yX2Fib3V0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTAwKTtcbiAgICAgIFxuICAgICAgLmZpZWxkLS1uYW1lLXVzZXItcGljdHVyZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8vIE5PREUgVEVBU0VSXG4gICYubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG5cbiAgICAubm9kZV9fdGl0bGUge1xuICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXAtcztcbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXAtcztcbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2xpbmsge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufSIsIlxuLm5vZGUubm9kZS0tdHlwZS1jbGllbnQtbGV0dGVyLWV4Y2VycHQge1xuICBcbiAgLy8vIEFMTCBWSUVXIE1PREVTXG4gIC5ub2RlX19pbmZvIHtcbiAgICBcbiAgICA+ICoge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgKiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuICAgIH1cblxuICAgIC5ub2RlX19kYXRlIHtcbiAgICAgIGNvbG9yOiAkanZiLWdyYXktMTtcbiAgICB9XG5cbiAgICAuZmllbGQtLW5hbWUtZmllbGQtdG9waWNzIHtcbiAgICAgICoge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICAuZmllbGRfX2l0ZW06bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJywnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAubm9kZV9fYXV0aG9yLCAubm9kZV9fYXV0aG9yICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRoNS1mb250LXNpemU7XG4gICAgY29sb3I6ICRqdmItZ3JheS0xO1xuICB9XG4gIFxuICAvLy8gTk9ERSBGVUxMXG4gICYubm9kZS0tdmlldy1tb2RlLWZ1bGwge1xuICAgIFxuICAgIGhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIH1cbiAgICBcbiAgICAubm9kZV9faW5mbyB7XG4gICAgICBcbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2F1dGhvciB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXM7XG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xuICAgIH1cbiAgICBcbiAgICAubm9kZV9fY29udGVudCB7XG4gICAgICBcbiAgICB9XG4gIH1cbiAgXG4gIC8vLyBOT0RFIFRFQVNFUlxuICAmLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIge1xuXG4gICAgLm5vZGVfX3RpdGxlIHtcbiAgICAgIFxuICAgIH1cbiAgICBcbiAgICAubm9kZV9faW5mbyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wLXM7XG4gICAgfVxuICAgIFxuICAgIC5ub2RlX19jb250ZW50IHtcbiAgICAgIFxuICAgIH1cbiAgICBcbiAgICAubm9kZV9faW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wLXM7XG4gICAgfVxuICB9XG59IiwiQG1lZGlhIHByaW50IHtcblxuICBib2R5IHtcblxuICAgICNoZWFkZXItdG9wIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI2hlYWRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICNibG9jay1zdGFydGVyLWxvY2FsLXRhc2tzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZm9vdGVyIHtcbiAgICAgIG5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAjYmxvY2stY29weXJpZ2h0YmxvY2sge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICBmb250LXNpemU6IHNtYWxsO1xuICAgIH1cblxuICAgIC52aWV3LWNsaWVudC1sZXR0ZXItZXhjZXJwdHMge1xuXG4gICAgICAudmlldy10b3BpY3MtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgID4gLnZpZXctY29udGVudCAudmlld3Mtcm93IHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5ub2RlX19jYXJkIHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnZpZXdzLWdyb3VwIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnZpZXdzLWdyb3VwX19iYXIsXG4gICAgICAudmlld3MtZ3JvdXBfX3RhZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59IiwiXG4udmlldyB7XG4gIFxuICA+IC52aWV3LWNvbnRlbnQge1xuICAgIFxuICAgIC52aWV3cy1yb3cge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1sO1xuICAgICAgXG4gICAgICAubm9kZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIlxuJHRpbGUtYmc6ICRqdmItZ3JheS0yOyAvL2RhcmtlbigkanZiLWdyYXktMiwgNSUpO1xuXG4ucGFyYWdyYXBoIC52aWV3LWZyb250LXBhZ2UgLnZpZXctY29udGVudCB7XG4gIEBleHRlbmQgJWdyb3VwO1xuICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xufVxuXG4udmlldy1mcm9udC1wYWdlIHtcbiAgQGV4dGVuZCAlZ3JvdXA7XG4gIG1hcmdpbjogLSRzaXRlLXAteHM7XG5cbiAgPiAudmlldy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIFxuICAgIC52aWV3cy1yb3cge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctdG9wOiAyNSUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIFxuICAgICAgLm5vZGUge1xuICAgICAgICBAaW5jbHVkZSBmaWxsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGlsZS1iZztcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46ICRzaXRlLXAteHM7XG4gICAgICAgIFxuICAgICAgICAubm9kZV9fY29udGVudCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmlsbDtcbiAgICAgICAgICBwYWRkaW5nOiAkc2l0ZS1wO1xuXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICAvL3RleHQtc2hhZG93OiAwIDAgMTBweCByZ2JhKGJsYWNrLCAuNSk7IC8vcmdiYSh3aGl0ZSwuNSk7XG4gICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgY29sb3I6ICRzaXRlLWNvcHktY29sb3I7IC8vd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9wZXJ0eTogY29sb3IsICRzcGVlZDogLjNzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLy8gc2V0IHRleHQgY29sb3JcbiAgICAgICAgJi50ZXh0LWNvbG9yLXdoaXRlIC5ub2RlX19jb250ZW50ICoge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtY29sb3ItZ3JheSAubm9kZV9fY29udGVudCAqIHtcbiAgICAgICAgICBjb2xvcjogJGp2Yi1ncmF5LTE7XG4gICAgICAgIH1cbiAgICAgICAgJi50ZXh0LWNvbG9yLWJsdWUgLm5vZGVfX2NvbnRlbnQgKiB7XG4gICAgICAgICAgY29sb3I6ICRqdmItYmx1ZTtcbiAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAubm9kZV9fdGl0bGUge1xuICAgICAgICAgIEBleHRlbmQgJWdyb3VwO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4JTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubm9kZV9faW5mbyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAqIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTUlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ub2RlX19zdWJ0aXRsZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6ICRzaXRlLXA7XG4gICAgICAgICAgcmlnaHQ6ICRzaXRlLXA7XG4gICAgICAgICAgYm90dG9tOiAkc2l0ZS1wO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5vZGVfX2xpbmsge1xuICAgICAgICAgIEBpbmNsdWRlIGZpbGw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIC5ub2RlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHRpbGUtYmcsIDUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIFxuICAgICAgICAubm9kZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCR0aWxlLWJnLCAxNSUpO1xuXG4gICAgICAgICAgLm5vZGVfX3RpdGxlIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2MiU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgLm5vZGUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGlsZS1iZywgMTElKTtcblxuICAgICAgICAgIC5ub2RlX190aXRsZSBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTglO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIlxuLnZpZXctYWJvdXQge1xuICBcbiAgPiAudmlldy1jb250ZW50IHtcbiAgICBcbiAgICAudmlld3Mtcm93IHtcbiAgICAgIEBleHRlbmQgJWdyb3VwO1xuICAgICAgXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgc3BhY2VyO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAudmlld3MtZmllbGQtdXNlci1waWN0dXJlIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tbGVmdDogJHNpdGUtcDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1sO1xuICAgICAgICBtYXgtd2lkdGg6IDMzJTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnZpZXdzLWZpZWxkLW5hbWUgKiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC52aWV3cy1maWVsZC1maWVsZC1wb3NpdGlvbiB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNpdGUtcC1zO1xuICAgICAgfVxuICAgICAgXG4gICAgICAudmlld3MtZmllbGQtZmllbGQtYmlvIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzaXRlLXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiXG4udmlldy10b3BpY3Mge1xuICBAZXh0ZW5kICVncm91cDtcbiAgLy9tYXJnaW4tbGVmdDogLSRzaXRlLXAtcztcbiAgLy9tYXJnaW4tcmlnaHQ6IC0kc2l0ZS1wLXM7XG5cbiAgaGVhZGVyIHtcbiAgICBtYXJnaW46IDAgKC0kc2l0ZS1wLXMpO1xuICB9XG5cbiAgLnZpZXctdG9waWNzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXA7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2l0ZS1wLXM7XG4gICAgcGFkZGluZy1yaWdodDogJHNpdGUtcC1zO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBzcGFjZXIoKTtcbiAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wLXM7XG4gICAgfVxuICB9XG5cbiAgPiAudmlldy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAvLyYuZmlsdGVyLWhpZGRlbiB7XG4gICAgICAvLyAgZGlzcGxheTogbm9uZTtcbiAgICAgIC8vfVxuXG4gICAgICAubm9kZSB7XG4gICAgICAgIHdpZHRoOiAoMTAwJSAvIDMpO1xuICAgICAgICBwYWRkaW5nOiAkc2l0ZS1wLXM7XG5cbiAgICAgICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6ICRzaXRlLXA7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbnRlbnQtYmc7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2IxYjFiMTsgLy8gJGp2Yi1ncmF5LTI7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgYm94LXNoYWRvdzogMnB4IDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAgICAgLm5vZGVfX3RpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1NSk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubm9kZV9faW5mbyB7XG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5vZGVfX3R5cGUge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGp2Yi1ibHVlO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG5cbiAgLnZpZXctdG9waWNzIHtcblxuICAgIC52aWV3LWlkLXRvcGljc19saXN0IHtcbiAgICAgIC52aWV3LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICAgIC52aWV3cy1yb3cge1xuICAgICAgICBtYXJnaW46IDAgMnB4IDJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgID4gLnZpZXctY29udGVudCB7XG5cbiAgICAgIC52aWV3cy1yb3cge1xuXG4gICAgICAgIC5ub2RlIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MjBweCkge1xuXG4gIC52aWV3LXRvcGljcyB7XG5cbiAgICA+IC52aWV3LWNvbnRlbnQge1xuXG4gICAgICAudmlld3Mtcm93IHtcblxuICAgICAgICAubm9kZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJcbi52aWV3LXRvcGljcy1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gID4gLnZpZXctY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogJHNpdGUtcC1zICRzaXRlLXAteHMgMCAkc2l0ZS1wLXM7XG4gICAgXG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNnJlbSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLnN0aWNreS1hYmxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLSRjb25zdHJhaW4tcDtcbiAgICAgIHJpZ2h0OiAtJGNvbnN0cmFpbi1wO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzO1xuICAgIH1cblxuICAgICYuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcblxuICAgICAgYm9keS50b29sYmFyLWZpeGVkICYge1xuICAgICAgICB0b3A6IDEzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBib2R5LnRvb2xiYXItZml4ZWQudG9vbGJhci1ob3Jpem9udGFsLnRvb2xiYXItdHJheS1vcGVuICYge1xuICAgICAgICB0b3A6IDE3M3B4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi52aWV3LWZpbHRlcnMgYSB7XG4gIEBpbmNsdWRlIGJ0bihvdXRsaW5lKTtcbiAgYm9yZGVyLWNvbG9yOiAkanZiLWJsdWU7XG4gIGNvbG9yOiAkanZiLWJsdWU7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC41cmVtIDAuNHJlbSAwLjVyZW07XG4gIFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGp2Yi1ibHVlO1xuICB9XG4gIFxuICAmLmZpbHRlci1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRqdmItYmx1ZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cbn0iLCJcbi52aWV3LWFydGljbGVzLnZpZXctZGlzcGxheS1pZC1hcnRpY2xlc19ibG9jayB7XG5cbiAgPiAudmlldy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wLWw7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBzcGFjZXIoKTtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNpdGUtcC1sO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4udmlldy1ibG9nIHtcbiAgXG4gID4gLnZpZXctY29udGVudCB7XG4gICAgXG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wLWw7XG4gICAgICBcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBzcGFjZXIoKTtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNpdGUtcDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIlxuLnZpZXctcmVjZW50LWJsb2dzIHtcbiAgICAgICAgICAgIFxuICA+IC52aWV3LWNvbnRlbnQge1xuICAgIEBleHRlbmQgJWdyb3VwO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGdyaWQtcC8yO1xuICAgIG1hcmdpbi1yaWdodDogLSRncmlkLXAvMjtcbiAgICBcbiAgICAudmlld3Mtcm93IHtcbiAgICAgIFxuICAgICAgLm5vZGUge1xuICAgICAgICBcbiAgICAgICAgLm5vZGVfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXM7XG4gICAgICAgICAgXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5ub2RlX19pbmZvIHtcbiAgICAgICAgICBcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIC8vY29sb3I6ICRqdmItZ3JheS0yO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIC8vY29sb3I6ICRqdmItZ3JheTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5ub2RlX19saW5rIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bigkdHlwZTpvdXRsaW5lKTsvLywgJGJ0bi1jb2xvcjokd2hpdGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiR2aWV3LWNvbG9yOiAkd2hpdGU7XG4kdmlldy1wOiByZW0tY2FsYygzMCk7XG4kZ3JvdXAtdGFnLXNpemU6IHJlbS1jYWxjKDEwMCk7XG4kZ3JvdXAtYm9yZGVyLXc6IHJlbS1jYWxjKDEwKTtcbiRncm91cC1hcnJvdy1zaXplOiByZW0tY2FsYygyMCk7XG5cbmJvZHkucGF0aC1jbGllbnQtbGV0dGVyLWV4Y2VycHRzIHtcblxuICAjcGFnZSB7XG4gICAgYmFja2dyb3VuZDogJGp2Yi1ibHVlO1xuXG4gICAgI2NvbnRlbnQtbWFpbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkanZiLWJsdWU7XG5cbiAgICAgICNibG9jay1zdGFydGVyLXBhZ2UtdGl0bGUgKiB7XG4gICAgICAgIGNvbG9yOiAkdmlldy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyB7XG4gIEBleHRlbmQgJWdyb3VwO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluLW91dDtcbiAgfVxuXG4gIGhlYWRlciB7XG4gICAgLy9tYXJnaW46IDAgKC0kc2l0ZS1wLXMpO1xuICB9XG5cbiAgLnZpZXctdG9waWNzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXA7XG4gICAgLy9tYXJnaW4tbGVmdDogLSRzaXRlLXAtcztcbiAgICAvL21hcmdpbi1yaWdodDogLSRzaXRlLXAtcztcbiAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXAtcztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2l0ZS1wLXM7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHNwYWNlcigpO1xuICAgICAgbWFyZ2luLXRvcDogJHNpdGUtcDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXAtcztcbiAgICB9XG5cbiAgICAudmlld3MtZmllbGQge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICA+IC52aWV3LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAudmlld3NfX2Zvb3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6ICRncm91cC10YWctc2l6ZTtcbiAgICAgIGhlaWdodDogJGdyb3VwLWJvcmRlci13O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgLnZpZXdzLWdyb3VwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogKCRncm91cC10YWctc2l6ZSArICRzaXRlLXAteHMpIDAgJHNpdGUtcC1sO1xuXG4gICAgICAmLmZpbHRlci1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAvLy8gdmVydGljYWwgdGltZWxpbmUgYmFyXG4gICAgICAudmlld3MtZ3JvdXBfX2JhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6ICRncm91cC1ib3JkZXItdztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRncm91cC1ib3JkZXItdy8yO1xuICAgICAgICAvL2JhY2tncm91bmQ6ICR2aWV3LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAudmlld3MtZ3JvdXBfX3RhZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAudmlld3MtZ3JvdXBfX3RpdGxlIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRoLWFsaWduOiBjZW50ZXIsICR2LWFsaWduOiBjZW50ZXIpO1xuICAgICAgICAgIHdpZHRoOiAkZ3JvdXAtdGFnLXNpemU7XG4gICAgICAgICAgaGVpZ2h0OiAkZ3JvdXAtdGFnLXNpemU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGdyb3VwLXRhZy1zaXplLzI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogJHZpZXctY29sb3I7XG4gICAgICAgICAgLy9jb2xvcjogJGp2Yi1ibHVlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIC8vZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudmlld3Mtcm93IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAkdmlldy1wICRzaXRlLXA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAmLmZpbHRlci1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubm9kZV9fY2FyZCB7XG4gICAgICAgIHBhZGRpbmc6ICRzaXRlLXA7XG4gICAgICAgIC8vYmFja2dyb3VuZDogJHZpZXctY29sb3I7XG4gICAgICAgIC8vYm9yZGVyOiAxcHggc29saWQgJGp2Yi1ncmF5LTI7XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCAwIHJnYmEoYmxhY2ssIDAuMyk7XG5cbiAgICAgICAgLm5vZGUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ub2RlX190aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1NSk7XG4gICAgICAgICAgZm9udC1zaXplOiAkaDMtZm9udC1zaXplO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogIzM0OThEQjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubm9kZV9faW5mbyB7XG4gICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52aWV3cy1yb3ctLXNlY29uZCB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXAtbDtcbiAgICAgIH1cblxuICAgICAgLy8vIGFycm93XG4gICAgICAubm9kZV9fYXJyb3cge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkc2l0ZS1wO1xuICAgICAgICB3aWR0aDogJGdyb3VwLWFycm93LXNpemU7XG4gICAgICAgIGhlaWdodDogJGdyb3VwLWFycm93LXNpemU7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHksIC4ycyk7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDkwMXB4KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICB9XG5cbiAgICAgIC8vLyBsZWZ0IGFsaWduZWQgcm93XG4gICAgICAmLnZpZXdzLXJvdy0tbGVmdCB7XG4gICAgICAgIC5ub2RlX19hcnJvdyB7XG4gICAgICAgICAgcmlnaHQ6ICR2aWV3LXAgLSAoJGdyb3VwLWFycm93LXNpemUvMik7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8vIHJpZ2h0IGFsaWduZWQgcm93XG4gICAgICAmLnZpZXdzLXJvdy0tcmlnaHQge1xuICAgICAgICAubm9kZV9fYXJyb3cge1xuICAgICAgICAgIGxlZnQ6ICR2aWV3LXAgLSAoJGdyb3VwLWFycm93LXNpemUvMik7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi52aWV3cy1yb3ctLXNlY29uZCB7XG4gICAgICAgIC5ub2RlX19hcnJvdyB7XG4gICAgICAgICAgbGVmdDogJHZpZXctcCAtICgkZ3JvdXAtYXJyb3ctc2l6ZS8yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLnZpZXctY2xpZW50LWxldHRlci1leGNlcnB0cyB7XG5cbiAgICAudmlldy1pZC10b3BpY3NfbGlzdCB7XG4gICAgICAudmlldy1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgICAudmlld3Mtcm93IHtcbiAgICAgICAgbWFyZ2luOiAwIDJweCAycHggMCAhaW1wb3J0YW50O1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC52aWV3LWNvbnRlbnQge1xuXG4gICAgICAudmlld3NfX2Zvb3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogJGdyb3VwLXRhZy1zaXplO1xuICAgICAgICBoZWlnaHQ6ICRncm91cC1ib3JkZXItdztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAudmlld3MtZ3JvdXAge1xuXG4gICAgICAgIC8vLyB2ZXJ0aWNhbCB0aW1lbGluZSBiYXJcbiAgICAgICAgLnZpZXdzLWdyb3VwX19iYXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAkZ3JvdXAtdGFnLXNpemUgLyAyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZpZXdzLWdyb3VwX190YWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAkZ3JvdXAtdGFnLXNpemUgLyAyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC52aWV3cy1yb3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogJHNpdGUtcCAwIDAgKCgkZ3JvdXAtdGFnLXNpemUgLyAyKSArICRzaXRlLXApICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcmFncmFwaC0tdHlwZS0tdmlldy52aWV3cy1wLS1ub25lIHtcbiAgICA+IC5wX19pbm5lciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiXG4udmlldy1pbnNpZ2h0cyB7XG4gIFxuICAmLnZpZXctZGlzcGxheS1pZC1ibG9ja18xIHsgIFxuICAgIC52aWV3cy1yb3cge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBleHRlbmQgJXF1b3RlO1xuXG4gICAgICAmLnNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgPiAqIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiXG5ib2R5LnBhZ2Utbm9kZS10eXBlLWNvbnRlbnQtcGFnZSB7XG5cbiAgI2Jsb2NrLXN0YXJ0ZXItcGFnZS10aXRsZSB7XG4gICAgQGluY2x1ZGUgY29uc3RyYWluO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICNwYWdlICNjb250ZW50ICNjb250ZW50LW1haW4gPiAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29uc3RyYWluLXJlc2V0KCk7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAucGFyYWdyYXBoOm5vdCguY29uc3RyYWluLW5vbmUpID4gLnBfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBjb25zdHJhaW4oZmFsc2UpO1xuICB9XG59XG5cblxuLnBhcmFncmFwaCB7XG5cbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtdGl0bGUgaDEge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIH1cblxuICAucF9fdGl0bGUgaDIsXG4gIC5maWVsZC0tbmFtZS1maWVsZC1wLWNvbnRlbnQgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWY7XG4gIH1cblxuICAucF9fc2Nyb2xsIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgYm90dG9tOiAtMS41cmVtO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcRTgyOSc7XG4gICAgICBmb250LWZhbWlseTogb3hib3c7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IHJlbS1jYWxjKDNweCk7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgJi5oZWlnaHQtMjAgPiAucF9faW5uZXJ7XG4gICAgaGVpZ2h0OiAyMHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgJi5oZWlnaHQtNDAgPiAucF9faW5uZXJ7XG4gICAgaGVpZ2h0OiA0MHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgJi5oZWlnaHQtNjAgPiAucF9faW5uZXJ7XG4gICAgaGVpZ2h0OiA2MHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgJi5oZWlnaHQtODAgPiAucF9faW5uZXJ7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLnBhcmFncmFwaC0tdHlwZS0tYm9hcmQsIC5wYXJhZ3JhcGgtLXR5cGUtLXN0YWZmIHtcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtYm9hcmQsIC5maWVsZC0tbmFtZS1maWVsZC1wLXN0YWZmIHtcbiAgICAuZmllbGRfX2l0ZW06bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBzcGFjZXI7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzaXRlLXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi52aWV3LXN0YWZmID4gLnZpZXctY29udGVudCA+IC52aWV3cy1yb3c6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgQGluY2x1ZGUgc3BhY2VyO1xuICBtYXJnaW4tdG9wOiAkc2l0ZS1wO1xuICBtYXJnaW4tYm90dG9tOiAkc2l0ZS1wO1xufVxuIiwiJHRpbGUtYmc6ICRqdmItZ3JheS0yOyAvL2RhcmtlbigkanZiLWdyYXktMiwgNSUpO1xuXG4vLy8gTWl4aW4gdG8gcmV0dXJuIElFIGdyaWQgbGF5b3V0XG5AbWl4aW4gSUVMYXlvdXQoJHF1ZXJ5OiAwKSB7XG4gIEBpZiAkcXVlcnkgPT0gMCB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMmZyIDFmciAxZnI7XG4gICAgLW1zLWdyaWQtcm93czogMWZyIDFmcjtcblxuICAgID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2l0ZS1wIC8gMjtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2l0ZS1wIC8gMjtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2l0ZS1wIC8gMjtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2l0ZS1wIC8gMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHF1ZXJ5ID09IDEgb3IgJHF1ZXJ5ID09IDEwMjMge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgIC1tcy1ncmlkLXJvd3M6IGF1dG8gYXV0bztcblxuICAgID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMztcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc2l0ZS1wIC8gMjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzaXRlLXAgLyAyO1xuXG4gICAgICAgIC5ub2RlIC5ub2RlX19jb250ZW50IHtcbiAgICAgICAgICAtbXMtZ3JpZC1yb3dzOiAyZnIgJHNpdGUtcC1sIDFmciAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNDtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDM7XG4gICAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG5cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2l0ZS1wIC8gMjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzaXRlLXAgLyAyO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzaXRlLXAgKiAoMi8zKTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzaXRlLXAgLyAyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuXG4gICAgICAgIHBhZGRpbmctbGVmdDogJHNpdGUtcCAqICgxLzMpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc2l0ZS1wICogKDEvMyk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2l0ZS1wIC8gMjtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiA1O1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMjtcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXRlLXAgKiAoMS8zKTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzaXRlLXAgLyAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcXVlcnkgPT0gMiBvciAkcXVlcnkgPT0gODUwIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgID4gLmZpZWxkX19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXA7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLnBhcmFncmFwaC0tdHlwZS0tZmVhdHVyZWQsXG4udmlldy1hcnRpY2xlcy52aWV3LWRpc3BsYXktaWQtYmxvY2tfMSB7XG5cbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtZmVhdHVyZWQsXG4gIC52aWV3LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IC1tcy1ncmlkICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmciAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xuICAgIGdyaWQtZ2FwOiAkc2l0ZS1wO1xuXG4gICAgLnZpZXdzX19mb290IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmZpZWxkX19pdGVtLFxuICAgIC52aWV3cy1yb3cge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLm5vZGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgICAgICBkaXNwbGF5OiAtbXMtZ3JpZDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAkc2l0ZS1wIDFmciAkc2l0ZS1wO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAkc2l0ZS1wLWwgMWZyO1xuXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6ICRzaXRlLXAgMWZyICRzaXRlLXA7XG4gICAgICAgIC1tcy1ncmlkLXJvd3M6IDFmciAkc2l0ZS1wLWwgMWZyO1xuICAgICAgfVxuXG4gICAgICAubm9kZV9faW1hZ2Uge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMztcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG5cbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMztcbiAgICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkanZiLWdyYXktMjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAubm9kZV9fdGV4dCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICBncmlkLXJvdzogMiAvIHNwYW4gMjtcblxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAyO1xuXG4gICAgICAgIHBhZGRpbmc6ICRzaXRlLXAtcyAwICRzaXRlLXA7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwICRzaXRlLXAtcztcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ub2RlX19saW5rIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkc2l0ZS1wLXM7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHgpICRzaXRlLXAtcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8vIEZpcnN0IGl0ZW0gbGF5b3V0XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG5cbiAgICAgICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogNmZyICRzaXRlLXAtbCAxZnI7XG4gICAgICAgICAgLW1zLWdyaWQtcm93czogNmZyICRzaXRlLXAtbCAxZnI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5vZGVfX2NvbnRlbnQgPiAubm9kZV9fbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGZpbGw7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgQGluY2x1ZGUgSUVMYXlvdXQoMCk7XG4gICAgfVxuICAgIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgQGluY2x1ZGUgSUVMYXlvdXQoMCk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuXG4gICAgICA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIGdyaWQtcm93OiBzcGFuIDEgIWltcG9ydGFudDtcblxuICAgICAgICAubm9kZSB7XG5cbiAgICAgICAgICAubm9kZV9fY29udGVudCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDJmciAkc2l0ZS1wLWwgMWZyICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5ub2RlX190ZXh0IHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogJHNpdGUtcC1sICogMiArICRzaXRlLXA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICBAaW5jbHVkZSBJRUxheW91dCgxKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgQGluY2x1ZGUgSUVMYXlvdXQoMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcblxuICAgICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAxICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLm5vZGUge1xuXG4gICAgICAgICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAyZnIgJHNpdGUtcC1sIDFmciAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAubm9kZV9fdGV4dCB7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRzaXRlLXAtbCAqIDIgKyAkc2l0ZS1wO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAgICY6bnRoLWNoaWxkKDIpLFxuICAgICAgICAmOm50aC1jaGlsZCgzKSxcbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NTBweCkge1xuICAgICAgICBAaW5jbHVkZSBJRUxheW91dCgyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogODUwcHgpIHtcbiAgICAgICAgQGluY2x1ZGUgSUVMYXlvdXQoMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzaXRlLXA7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0= */
