/*
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
/*
 * Global variables
 */
/* main color which will be used for all main block styles... */
/**
 * Import component variables
 */
/**
 *
 */
/* --- SCSS For Accordion --- */
/* --- SCSS For Breadcrumb --- */
/* --- SCSS For Buttons --- */
/* --- SCSS For Call-to-action --- */
/* --- SCSS For Content-slider --- */
/*  */
/* carousel-controls-v1 */
/* carousel-controls-v2 */
/* carousel-controls-v3 */
/* Navigation Styles */
/* carousel-indicators-v1 */
/* carousel-indicators-v2 */
/* carousel-indicators-v3 */
/* carousel-indicators-v4 */
/* carousel-indicators-v5 */
/* carousel-indicators-v6 */
/* --- SCSS For Counters --- */
/* --- SCSS For Heading --- */
/* --- SCSS For Icon-box --- */
/* --- SCSS For Interactive-banner --- */
/* --- SCSS For Latest-posts --- */
/* latest posts */
/* --- SCSS For List --- */
/* variables for list */
/* variables for list light */
/* --- SCSS For Message --- */
/* --- SCSS For Newsletter --- */
/* --- SCSS For Piechart --- */
/* --- SCSS For Pricing --- */
/* --- SCSS For Process-steps --- */
/* process-steps */
/* --- SCSS For Service --- */
/* variables for tab style1 using as base of tab */
/* --- SCSS For Style-icon --- */
/* Variables icons default */
/* Variables icons bodered */
/* Variables icons darker */
/* Variables icons light */
/* Variables icons plain */
/* Variables icons for light style */
/* Variables icons outline */
/* Variables icons inverse */
/* --- SCSS For Table --- */
/* --- SCSS For Tabs --- */
/* variables for tab style1 using as base of tab */
/* tab style version 5 */
/* tab style version 6 */
/* --- SCSS For Testimonials --- */
/* testimonials default */
/* testimonials-v1 */
/* testimonials light */
/* --- SCSS For Typography --- */
/**
 *   Blocks Layout Selectors
 */
/********* LAYOUT **************/
/**
 * Import component variables
 */
/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/****/
/** elements mixins **/
/**
* Transition-timing-function property@mixin 
*/
/*background RGBA
============================================*/
/*inline-block
============================================*/
/****/
/****/
/******************************************
 * Basic Styles
 ******************************************/
.opalestate-popup {
  position: relative; }
  .opalestate-popup .popup-head {
    font-family: "Raleway", sans-serif; }
    .opalestate-popup .popup-head > span {
      cursor: pointer; }
  .opalestate-popup .popup-body {
    display: none;
    background-color: #FFF;
    position: absolute;
    top: 40px;
    z-index: 999;
    padding: 20px 30px 30px;
    -webkit-box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.8);
    box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.8);
    min-width: 400px;
    margin: 0; }
    .opalestate-popup .popup-body h6 {
      margin-bottom: 15px;
      color: #222;
      font-size: 14px; }
    .opalestate-popup .popup-body label {
      text-transform: uppercase;
      font-size: 10px;
      font-family: "Raleway", sans-serif; }
    .opalestate-popup .popup-body button {
      margin-top: 20px; }
    .opalestate-popup .popup-body:before {
      position: absolute;
      width: 0;
      height: 0;
      content: '';
      z-index: 2;
      border-opposite-position(top): 15px solid #222;
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      margin: 0 0 0 -10px;
      left: 50%;
      top: -14px; }
    @media (max-width: 767px) {
      .opalestate-popup .popup-body {
        margin: 0; } }
  .opalestate-popup.active .popup-body {
    display: block; }
  .opalestate-popup .popup-close {
    position: absolute;
    top: 10px;
    right: 15px;
    color: #1fc341;
    cursor: pointer; }

.opalestate-results {
  margin-bottom: 15px; }
  .opalestate-results span {
    color: #1fc341; }

.media-drag-drop {
  background-color: #efefef;
  border: 2px dashed #dfdfdf;
  text-align: center;
  padding: 30px; }

.media-drag-drop h4 {
  color: #8b9293;
  font-size: 18px;
  line-height: 18px;
  margin: 0 0 20px;
  font-weight: 400;
  text-transform: inherit;
  text-align: inherit; }

.media-drag-drop .fa {
  margin-right: 8px; }

.row-group-features h3 {
  margin-top: 50px;
  margin-bottom: 30px;
  background-color: #33cc33;
  color: #FFF; }

ul.property-status {
  padding: 0;
  margin: 0; }
  ul.property-status li {
    list-style: none;
    display: inline-block;
    margin-right: 15px;
    padding: 0 12px;
    border-radius: 3px;
    background-color: #ff9d00;
    color: #ffffff;
    font-size: 10px;
    font-weight: 500;
    margin-bottom: 4px; }

.list-details .property-meta-list {
  color: #333333;
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  overflow: hidden; }
  .list-details .property-meta-list > li {
    padding-left: 8px;
    padding-right: 8px;
    padding-bottom: 12px;
    position: relative;
    float: left;
    margin-right: 15px;
    min-width: 30px; }
    @media (max-width: 1200px) {
      .list-details .property-meta-list > li {
        font-size: 13px;
        padding-right: 0;
        padding-bottom: 0;
        margin: 0; }
        .list-details .property-meta-list > li .add {
          vertical-align: text-bottom; } }
    .list-details .property-meta-list > li .label-property {
      position: absolute;
      bottom: 0;
      left: 8px;
      font-size: 10px;
      color: #333333;
      text-transform: uppercase;
      font-weight: 400; }
      @media screen and (max-width: 979px) {
        .list-details .property-meta-list > li .label-property {
          display: none; } }
    .list-details .property-meta-list > li .add {
      font-size: 13px;
      vertical-align: text-top; }
    @media screen and (max-width: 979px) {
      .list-details .property-meta-list > li {
        padding-bottom: 0; } }
  .list-details .property-meta-list i {
    display: none;
    margin-right: 5px; }
    .list-details .property-meta-list i:before {
      font-family: FontAwesome;
      content: "\f123";
      font-size: 14px;
      font-style: normal;
      color: #33cc33;
      -webkit-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
  .list-details .property-meta-list .icon-property-areasize:before {
    content: "\f047"; }
  .list-details .property-meta-list .icon-property-bedrooms:before {
    content: "\f236"; }
  .list-details .property-meta-list .icon-property-bathrooms:before {
    content: "\f2cd"; }
  .list-details .property-meta-list .icon-property-parking:before {
    content: "\f1b9"; }
  .list-details .property-meta-list .icon-property-amountrooms:before {
    content: "\f1ad"; }
  @media (max-width: 1200px) {
    .list-details .property-meta-list li {
      font-size: 13px; }
      .list-details .property-meta-list li .add {
        line-height: 1; }
    .list-details .property-meta-list i {
      display: block; }
    .list-details .property-meta-list .label-property {
      display: none; } }
  @media screen and (max-width: 799px) {
    .list-details .property-meta-list > li {
      padding-left: 5px;
      padding-right: 5px;
      font-size: 14px; } }

@media (min-width: 768px) and (max-width: 991px) {
  .list-details {
    flex-direction: column;
    align-items: left;
    padding-left: 20px; }
    .list-details .details {
      margin-right: 0; } }

.author-link {
  display: inline-block;
  line-height: 32px; }

#opalestate-map-preview {
  position: relative; }

#opalestate-map-preview + .container .search-properies-form {
  margin-bottom: 25px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }

.mapPlaceholder {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -70px;
  color: #33cc33; }
  .mapPlaceholder span.fa {
    margin-right: 10px; }

.carousel-control.opalestate-left {
  left: 30px; }
  @media screen and (max-width: 479px) {
    .carousel-control.opalestate-left {
      left: 0; } }

.carousel-control.opalestate-right {
  left: auto;
  right: 30px; }
  @media screen and (max-width: 479px) {
    .carousel-control.opalestate-right {
      right: 0; } }

.property-preview {
  overflow: hidden; }
  .property-preview .owl-carousel-wrapper {
    position: relative; }
  .property-preview .carousel-control {
    border-radius: 0 !important;
    border: none;
    background-color: rgba(0, 0, 0, 0.3);
    color: #fff; }
    .property-preview .carousel-control.opalestate-right {
      padding-left: 2px; }
    .property-preview .carousel-control:hover, .property-preview .carousel-control:focus {
      opacity: 1;
      filter: alpha(opacity=100);
      background-color: #33cc33;
      color: #FFF !important; }

.property-attachments .list-group-item-text i {
  margin-right: 10px; }

.sk-folding-cube {
  margin: 20px auto;
  width: 40px;
  height: 40px;
  position: relative;
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg); }

.sk-folding-cube .sk-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1); }

.sk-folding-cube .sk-cube:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #33cc33;
  -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
  animation: sk-foldCubeAngle 2.4s infinite linear both;
  -webkit-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%; }

.sk-folding-cube .sk-cube2 {
  -webkit-transform: scale(1.1) rotateZ(90deg);
  transform: scale(1.1) rotateZ(90deg); }

.sk-folding-cube .sk-cube3 {
  -webkit-transform: scale(1.1) rotateZ(180deg);
  transform: scale(1.1) rotateZ(180deg); }

.sk-folding-cube .sk-cube4 {
  -webkit-transform: scale(1.1) rotateZ(270deg);
  transform: scale(1.1) rotateZ(270deg); }

.sk-folding-cube .sk-cube2:before {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s; }

.sk-folding-cube .sk-cube3:before {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s; }

.sk-folding-cube .sk-cube4:before {
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s; }

@-webkit-keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0; }
  25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1; }
  90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0; } }

@keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0; }
  25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1; }
  90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0; } }

/**************************************************
 * Archive Property Page: Archive + Taxonomy Page
 **************************************************/
.opalesate-archive-top {
  padding: 15px 30px;
  background-color: #FFF;
  margin-bottom: 40px;
  position: relative;
  font-size: 13px; }
  .opalesate-archive-top #opalestate-sortable-form {
    position: relative; }
    .opalesate-archive-top #opalestate-sortable-form:after {
      font-family: 'FontAwesome';
      content: "\f0d7";
      color: #333333;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      z-index: 1;
      position: absolute;
      pointer-events: none; }
  .opalesate-archive-top .sort {
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
  .opalesate-archive-top .sortable-dropdown {
    color: #333333;
    outline: none;
    border-radius: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background-color: #f9f9f9;
    min-width: 210px;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    height: 34px;
    line-height: 34px;
    padding: 0 12px;
    border-color: #eeeeee;
    transition: all .3s; }
    .opalesate-archive-top .sortable-dropdown:hover, .opalesate-archive-top .sortable-dropdown:focus {
      border-color: #33cc33; }
    @media (max-width: 600px) {
      .opalesate-archive-top .sortable-dropdown {
        min-width: 170px; } }
  .opalesate-archive-top > div {
    margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .opalesate-archive-top .flex-center {
      flex-wrap: wrap;
      justify-content: center; }
    .opalesate-archive-top .row > div {
      width: 50%;
      float: left; } }
  @media screen and (max-width: 480px) {
    .opalesate-archive-top {
      padding: 15px; }
      .opalesate-archive-top .flex-center {
        display: inline-block;
        margin-bottom: 5px; }
      .opalesate-archive-top .row > div {
        width: 100%;
        float: none; } }
  .opalesate-archive-top:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 25px 0 25px;
    border-color: #FFF transparent transparent transparent;
    position: absolute;
    left: 50%;
    bottom: -15px;
    transform: translateX(-50%); }
  @media (max-width: 600px) {
    .opalesate-archive-top {
      padding: 10px; }
      .opalesate-archive-top .flex-center {
        display: block; }
        .opalesate-archive-top .flex-center .pull-left {
          width: 100%; }
        .opalesate-archive-top .flex-center .list-property-status li:first-child {
          padding-left: 0; } }

#property-filter-status > span {
  line-height: 55px;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  color: #000;
  margin-right: 30px; }

#property-filter-status .list-property-status {
  margin: 5px 0; }
  #property-filter-status .list-property-status li {
    font-family: "Roboto", sans-serif;
    cursor: pointer;
    display: block;
    position: relative;
    -webkit-transition: 0.35s;
    -o-transition: 0.35s;
    transition: 0.35s;
    float: left; }
    #property-filter-status .list-property-status li span {
      display: block; }
    #property-filter-status .list-property-status li.active, #property-filter-status .list-property-status li:hover {
      color: #000; }

.post-type-archive-opalestate_property .opalestate-rows article .entry-summary {
  min-height: 46px; }

.post-type-archive-opalestate_property .opalesate-archive-top {
  padding-top: 0;
  padding-bottom: 0; }
  .post-type-archive-opalestate_property .opalesate-archive-top .opalesate-archive-top {
    padding: 0; }
    @media (max-width: 767px) {
      .post-type-archive-opalestate_property .opalesate-archive-top .opalesate-archive-top {
        padding-bottom: 20px; } }

.property-address {
  color: #999999;
  font-size: 13px; }

.opalestate-rows .first-child {
  clear: both; }

.opalestate-rows article {
  background: #FFF;
  margin-bottom: 30px;
  margin-top: 20px;
  transition: 0.3s all ease-out;
  position: relative; }
  .opalestate-rows article .absolute {
    position: absolute;
    left: 20px;
    top: 35px;
    z-index: 2; }
  .opalestate-rows article .property-group-label {
    z-index: 4;
    line-height: 1; }
  .opalestate-rows article:hover {
    box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.12); }
  .opalestate-rows article div.property-label {
    z-index: 1;
    font-size: 9px;
    padding: 3px 10px;
    font-family: "Raleway", sans-serif;
    font-weight: 500;
    display: block;
    border-radius: 3px;
    margin-bottom: 5px;
    line-height: 1; }
  .opalestate-rows article .label-featured {
    font-size: 10px;
    padding: 3px 12px;
    font-family: "Raleway", sans-serif;
    display: inline-block;
    font-weight: 500;
    margin-bottom: 5px;
    border-radius: 3px; }
  .opalestate-rows article .entry-title {
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    margin-top: 0;
    margin-bottom: 0; }
    @media (max-width: 767px) {
      .opalestate-rows article .entry-title {
        font-size: 18px; } }
  .opalestate-rows article .property-box-image {
    position: relative; }
    .opalestate-rows article .property-box-image img {
      width: 100%; }
  .opalestate-rows article header .property-status {
    z-index: 2; }
  .opalestate-rows article header {
    position: relative; }
    .opalestate-rows article header .property-price {
      position: absolute;
      bottom: 10px;
      right: 15px;
      background: rgba(255, 255, 255, 0.7);
      padding: 0 7px;
      z-index: 5; }
  .opalestate-rows article .property-toggle-favorite {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 40px;
    height: 40px;
    line-height: 43px !important;
    text-align: center;
    background-color: #FFF;
    border-radius: 50%;
    z-index: 3; }
    .opalestate-rows article .property-toggle-favorite.fa-heart-o {
      color: #bbbbbb; }
    .opalestate-rows article .property-toggle-favorite.fa-heart {
      color: #ff4040; }
    .opalestate-rows article .property-toggle-favorite:hover {
      cursor: pointer; }
  .opalestate-rows article .entry-content {
    padding: 15px 25px 15px 25px; }
    .opalestate-rows article .entry-content i.property-toggle-favorite.fa-heart-o {
      cursor: pointer; }
    .opalestate-rows article .entry-content i.property-toggle-favorite.fa-heart {
      color: #33cc33; }
  .opalestate-rows article .author-link .avatar {
    width: 30px;
    height: 30px;
    margin-right: 10px;
    border-radius: 50%; }
  .opalestate-rows article .property-list-style {
    border: 1px solid #eeeeee; }
    .opalestate-rows article .property-list-style .abs-col-item {
      padding: 25px 30px 0; }
      @media (max-width: 480px) {
        .opalestate-rows article .property-list-style .abs-col-item {
          border-left-width: 1px; } }
    .opalestate-rows article .property-list-style .entry-summary {
      padding: 20px 0; }
    .opalestate-rows article .property-list-style .property-box-image img {
      width: 100%; }
    .opalestate-rows article .property-list-style .btn-view-more {
      display: none; }
  .opalestate-rows article .property-price {
    color: #33cc33;
    font-size: 18px;
    margin-top: 10px;
    font-family: "Roboto", sans-serif;
    font-weight: 700; }
    .opalestate-rows article .property-price .property-price-label {
      font-size: 12px;
      font-weight: 400; }
    @media (max-width: 1199px) {
      .opalestate-rows article .property-price {
        font-size: 20px; } }
    @media (max-width: 767px) {
      .opalestate-rows article .property-price {
        font-size: 16px; } }
  .opalestate-rows article .property-list-style-v2 .abs-col-item {
    padding-top: 25px; }
    @media (max-width: 480px) {
      .opalestate-rows article .property-list-style-v2 .abs-col-item {
        border-left-width: 1px; } }
  .opalestate-rows article .property-list-style-v2 .entry-summary {
    font-style: normal;
    overflow: hidden;
    padding: 20px 0 25px 0;
    margin-top: 20px;
    margin-right: 30px;
    border-style: solid;
    border-color: #eeeeee;
    border-width: 1px 0 0 0;
    color: #888888; }
    .opalestate-rows article .property-list-style-v2 .entry-summary > h5 {
      margin: 0 0 10px;
      font-size: 14px; }
    .opalestate-rows article .property-list-style-v2 .entry-summary > p {
      line-height: 26px;
      margin-bottom: 0;
      max-height: 128px;
      overflow: hidden; }
      .opalestate-rows article .property-list-style-v2 .entry-summary > p .more-link {
        display: none; }
  .opalestate-rows article .property-list-style-v2 .list-details {
    padding-left: 0; }
  .opalestate-rows article .property-list-style-v2 .property-price {
    position: inherit;
    padding: 0;
    margin-top: 0; }
  .opalestate-rows article .property-list-style-v2 .property-address {
    margin-bottom: 15px;
    margin-top: 5px; }
  @media only screen and (max-width: 767px) {
    .opalestate-rows article .property-list-style-v2 .content-list {
      padding: 15px 0 30px 20px; }
      .opalestate-rows article .property-list-style-v2 .content-list .btn-details {
        position: absolute;
        bottom: 15px;
        right: 5px; }
    .opalestate-rows article .property-list-style-v2 .property-address img {
      display: none; } }
  .opalestate-rows article .property-list-style-v3 header .property-status li,
  .opalestate-rows article .property-list-style-v3 header .property-group-label .label-featured,
  .opalestate-rows article .property-list-style-v3 header .property-label {
    padding: 3px 12px;
    display: block;
    color: #ffffff;
    font-size: 10px;
    text-align: left;
    border-radius: 3px;
    text-transform: capitalize;
    line-height: 1; }
  .opalestate-rows article .property-list-style-v3 header .property-group-label {
    top: 45px; }
  @media (max-width: 767px) {
    .opalestate-rows article .property-list-style-v3 header img {
      width: 100%; } }
  .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item {
    padding-right: 25px; }
    .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .item-header {
      flex-wrap: wrap; }
      .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .item-header .left {
        margin-right: 20px; }
      .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .item-header .entry-title {
        color: #333333;
        font-size: 16px;
        transition: 0.3s color ease-out;
        margin-top: 8px;
        margin-bottom: 5px; }
    .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .listing__details {
      margin-top: 10px; }
      .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .listing__details .btn-details {
        margin-right: 0; }
      @media (min-width: 768px) and (max-width: 991px) {
        .opalestate-rows article .property-list-style-v3 .content-list .abs-col-item .listing__details .list-details {
          padding-left: 0; } }
  @media (max-width: 767px) {
    .opalestate-rows article .property-list-style-v3 .content-list {
      padding: 0 20px 15px 20px; } }
  .opalestate-rows article .property-list-style-v4 .property-list .content-list .logo {
    width: 60px;
    height: 50px;
    border: 1px solid #eeeeee;
    line-height: 50px;
    padding: 0 7px; }
  .opalestate-rows article .property-list-style-v4 .property-list .listing__details .open-houses .open-houses__btn {
    display: inline-block;
    margin-bottom: 5px;
    padding: 5px 8px;
    background-color: #22355b;
    color: #FFF;
    border-radius: 4px;
    font-size: 12px; }
    @media (min-width: 768px) {
      .opalestate-rows article .property-list-style-v4 .property-list .listing__details .open-houses .open-houses__btn {
        padding: 6px 10px; } }
  .opalestate-rows article .property-list-style-v4 .property-list .listing__details .open-houses .open-houses__desc {
    display: block;
    color: #999999;
    font-size: 12px;
    text-align: right; }
    .opalestate-rows article .property-list-style-v4 .property-list .listing__details .open-houses .open-houses__desc span {
      color: #333333;
      text-transform: uppercase; }
    @media (max-width: 767px) {
      .opalestate-rows article .property-list-style-v4 .property-list .listing__details .open-houses .open-houses__desc {
        text-align: left; } }
  .opalestate-rows article .my-properties-bottom {
    position: absolute;
    bottom: 5px;
    right: 10px;
    z-index: 2; }
  @media (max-width: 1200px) {
    .opalestate-rows article .info-title .entry-summary.flex-center {
      display: block; }
      .opalestate-rows article .info-title .entry-summary.flex-center .property-address {
        display: inline; } }

@media (min-width: 768px) {
  .opalestate-rows > .row {
    display: flex;
    flex-wrap: wrap; } }

.opalestate_property {
  margin-top: 0 !important; }

.property-list {
  position: relative; }
  .property-list header img {
    width: 100%; }
  .property-list.content-property-list-v2 .property-box-image {
    margin-top: 20px; }
  .property-list.content-property-list-v2 .content-bottom {
    position: absolute;
    bottom: 10px;
    left: 25px;
    right: 0; }
    .property-list.content-property-list-v2 .content-bottom .property-price {
      background: transparent; }
    .property-list.content-property-list-v2 .content-bottom .entry-title {
      font-size: 18px; }
      .property-list.content-property-list-v2 .content-bottom .entry-title a {
        color: #FFF; }
    .property-list.content-property-list-v2 .content-bottom .property-address {
      color: #FFF;
      opacity: .5; }

.opalesate-featured-property {
  margin: 0 -15px; }
  .opalesate-featured-property .item article .property-price {
    position: static;
    background-color: transparent;
    color: #33cc33;
    padding: 0; }
    @media (max-width: 768px) {
      .opalesate-featured-property .item article .property-price {
        text-align: left;
        margin-bottom: 10px;
        margin-top: 5px; } }
  .opalesate-featured-property .item article .property-list header {
    padding-bottom: 0; }
  .opalesate-featured-property .item article .entry-summary {
    color: #acacac; }
    @media (max-width: 768px) {
      .opalesate-featured-property .item article .entry-summary {
        display: none; } }
  .opalesate-featured-property .item.style-2 article .property-meta {
    position: absolute;
    top: 35px;
    left: 15px;
    min-width: 195px;
    border-radius: 5px;
    background-color: rgba(0, 0, 0, 0.7); }
    @media (max-width: 1200px) {
      .opalesate-featured-property .item.style-2 article .property-meta {
        min-width: 140px; } }
    .opalesate-featured-property .item.style-2 article .property-meta ul {
      height: 60px;
      margin: 0; }
      .opalesate-featured-property .item.style-2 article .property-meta ul li {
        margin-top: 5px;
        margin-left: 7px; }
        .opalesate-featured-property .item.style-2 article .property-meta ul li span {
          color: #FFF !important; }
        .opalesate-featured-property .item.style-2 article .property-meta ul li:last-child {
          margin-right: 0; }
  .opalesate-featured-property.style-4 {
    margin: 0 -2px; }
    .opalesate-featured-property.style-4 .item {
      margin: 0 2px;
      padding: 0; }
      .opalesate-featured-property.style-4 .item .row {
        margin: 0; }
    .opalesate-featured-property.style-4.style-2 .owl-controls {
      display: none !important; }
    @media (max-width: 767px) {
      .opalesate-featured-property.style-4 {
        margin: 0; }
        .opalesate-featured-property.style-4 .item {
          margin: 0 15px; } }

.manual-properties .owl-carousel-play .carousel-control {
  height: 30px;
  line-height: 26px;
  background-color: #233354;
  border-color: #233354;
  width: 30px;
  font-size: 18px;
  left: 15px;
  color: #FFF; }
  .manual-properties .owl-carousel-play .carousel-control.right {
    right: 15px;
    left: auto; }
  .manual-properties .owl-carousel-play .carousel-control:hover {
    background-color: #33cc33;
    border-color: #33cc33; }

.manual-properties .opalestate-rows article {
  margin-bottom: 0; }
  .manual-properties .opalestate-rows article .entry-content {
    padding: 15px 25px 25px 25px; }
    @media (max-width: 1199px) {
      .manual-properties .opalestate-rows article .entry-content {
        padding: 20px 20px 15px; } }
  .manual-properties .opalestate-rows article .property-price {
    position: static;
    background-color: transparent;
    padding: 0;
    font-size: 48px;
    letter-spacing: -1px; }
    .manual-properties .opalestate-rows article .property-price .property-price-label {
      font-size: 40%; }
    @media (max-width: 1199px) {
      .manual-properties .opalestate-rows article .property-price {
        font-size: 26px; } }
  .manual-properties .opalestate-rows article .property-meta-list {
    padding: 0;
    background-color: transparent;
    margin: 0 -8px 15px; }
    @media (max-width: 1199px) {
      .manual-properties .opalestate-rows article .property-meta-list > li {
        padding-bottom: 0; }
        .manual-properties .opalestate-rows article .property-meta-list > li .label-property {
          display: none; } }
  .manual-properties .opalestate-rows article .entry-title {
    margin-bottom: 10px; }
    @media (max-width: 1199px) {
      .manual-properties .opalestate-rows article .entry-title {
        font-size: 16px; } }

.manual-properties.style-1 .item, .manual-properties.style-2 .item {
  padding: 0; }
  .manual-properties.style-1 .item article.opalestate_property, .manual-properties.style-2 .item article.opalestate_property {
    background: transparent !important;
    padding: 0 !important; }
    .manual-properties.style-1 .item article.opalestate_property:hover, .manual-properties.style-2 .item article.opalestate_property:hover {
      box-shadow: none; }
    .manual-properties.style-1 .item article.opalestate_property .entry-content, .manual-properties.style-2 .item article.opalestate_property .entry-content {
      display: block;
      padding: 0 !important; }

.property-v2 .entry-content .entry-title a {
  font-size: 60px;
  line-height: 70px;
  color: #FFF;
  font-weight: 800;
  margin-bottom: 5px; }

.property-v2 .entry-content .property-address {
  font-size: 20px !important;
  opacity: .7;
  color: #FFF;
  padding-bottom: 22px;
  margin-bottom: 40px;
  border-bottom: 1px solid #6e6362; }

.property-v2 .entry-content .more {
  display: flex;
  max-width: 264px; }
  .property-v2 .entry-content .more .number {
    background-color: #00a03f;
    margin: 0;
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
    padding: 0 30px;
    height: 70px;
    line-height: 70px;
    display: flex;
    align-items: center;
    color: #FFF; }
  .property-v2 .entry-content .more a {
    background-color: #00c34d;
    transition: all .3s;
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
    padding: 0 20px;
    height: 70px;
    line-height: 70px; }
    .property-v2 .entry-content .more a:hover {
      background-color: #2eb82e; }

.property-v3 .entry-content .description {
  font-size: 34px;
  font-weight: 500;
  margin-bottom: 5px; }

.property-v3 .entry-content .entry-title a {
  font-size: 80px;
  line-height: 90px; }

.property-v3 .entry-content .property-address {
  border-bottom: none;
  font-size: 18px !important;
  padding-bottom: 0 !important; }

.property-v3 .entry-content .more .price {
  padding: 0 30px;
  height: 70px;
  line-height: 70px;
  background-color: #1e3559;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px; }
  .property-v3 .entry-content .more .price p:first-child {
    font-size: 14px;
    opacity: .5;
    color: #FFF;
    margin-top: 5px;
    margin-bottom: 0; }
  .property-v3 .entry-content .more .price p {
    background-color: transparent !important; }
  .property-v3 .entry-content .more .price .number {
    padding: 0;
    height: inherit;
    line-height: 1;
    display: block; }

@media (max-width: 1199px) {
  .property-v3 .entry-content .description {
    font-size: 24px; } }

@media (max-width: 1199px) {
  .property-v2 .entry-content .entry-title a,
  .property-v3 .entry-content .entry-title a {
    font-size: 40px;
    line-height: 50px; }
  .property-v2 .entry-content .property-address,
  .property-v3 .entry-content .property-address {
    font-size: 16px;
    margin-bottom: 30px;
    padding-bottom: 12px; }
  .property-v2 .entry-content .more .price,
  .property-v3 .entry-content .more .price {
    height: 60px;
    line-height: 60px; }
  .property-v2 .entry-content .more .number,
  .property-v3 .entry-content .more .number {
    height: 60px;
    line-height: 60px; }
  .property-v2 .entry-content .more a,
  .property-v3 .entry-content .more a {
    padding: 0 10px;
    height: 60px;
    line-height: 60px; } }

.property-v4 .entry-content {
  display: flex;
  padding: 0 !important;
  flex-wrap: nowrap !important; }
  .property-v4 .entry-content .property__main-item {
    padding: 25px 30px 20px 30px;
    margin-right: 0;
    flex: 2; }
    .property-v4 .entry-content .property__main-item .entry-title {
      font-size: 32px;
      line-height: 40px;
      font-weight: 800;
      text-transform: uppercase; }
    .property-v4 .entry-content .property__main-item .property-address {
      font-size: 16px;
      margin-bottom: 20px; }
    .property-v4 .entry-content .property__main-item .property-meta-list {
      margin: 0 0 0 0; }
      .property-v4 .entry-content .property__main-item .property-meta-list ul {
        margin-bottom: 0; }
        .property-v4 .entry-content .property__main-item .property-meta-list ul .property__stat {
          color: #333333; }
    .property-v4 .entry-content .property__main-item:after {
      position: relative; }
  .property-v4 .entry-content .link {
    display: flex;
    flex-direction: column;
    text-align: center; }
    .property-v4 .entry-content .link .price {
      background-color: #22355b;
      flex: 2;
      padding: 55px 0; }
      .property-v4 .entry-content .link .price p {
        margin-bottom: 0; }
    .property-v4 .entry-content .link .more {
      text-transform: uppercase;
      background-color: #33cc33;
      padding: 15px 75px; }
      .property-v4 .entry-content .link .more a {
        color: #FFF;
        font-weight: 600; }
  @media (max-width: 991px) {
    .property-v4 .entry-content .property__main-item {
      padding: 15px 20px 10px 20px; }
      .property-v4 .entry-content .property__main-item .entry-title {
        font-size: 25px; }
      .property-v4 .entry-content .property__main-item .property-address {
        font-size: 15px;
        margin-bottom: 5px; }
      .property-v4 .entry-content .property__main-item .property-meta-list .property__figure {
        font-size: 16px; }
    .property-v4 .entry-content .link .price {
      padding: 30px 0; }
    .property-v4 .entry-content .link .more {
      padding: 15px 30px; } }

.widget.widget-estate-property .widget-content {
  overflow: visible; }

.widget.widget-estate-property .owl-carousel .item {
  margin-top: 20px; }

.widget .search-properies-form .form-group {
  color: #222222; }
  .widget .search-properies-form .form-group label {
    margin-bottom: 5px;
    color: #333333;
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: capitalize; }
  .widget .search-properies-form .form-group input[type="radio"] {
    float: left;
    margin-right: 10px; }
  .widget .search-properies-form .form-group span {
    float: right; }

.widget .search-properies-form .form-control {
  border-color: #eeeeee; }

.widget .search-properies-form .btn-search {
  height: 40px;
  line-height: 40px;
  padding: 0 !important;
  border: none;
  border-radius: 4px;
  background-color: #33cc33;
  transition: all .3s;
  text-transform: uppercase;
  color: #FFF;
  font-weight: 600; }
  .widget .search-properies-form .btn-search:after {
    content: ''; }
  .widget .search-properies-form .btn-search:hover {
    background-color: #2eb82e; }

.widget .search-properies-form .opal-slide-ranger label {
  display: flex;
  justify-content: space-between; }
  .widget .search-properies-form .opal-slide-ranger label .noUi-origin {
    background: #555555; }
  .widget .search-properies-form .opal-slide-ranger label span {
    flex: 1; }
  .widget .search-properies-form .opal-slide-ranger label span:last-child {
    text-align: right; }

.widget-properties article {
  margin-top: 30px; }
  .widget-properties article:not(:last-child) {
    margin-bottom: 20px; }

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

.widget-properties .media-left {
  position: relative; }
  .widget-properties .media-left img {
    width: 100%; }
  .widget-properties .media-left .property-box-image {
    position: relative; }
    .widget-properties .media-left .property-box-image:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(0deg, #222222 0%, rgba(34, 34, 34, 0) 100%); }

.widget-properties .entry-title a {
  color: #ffffff;
  font-size: 15px;
  transition: 0.3s color ease-out;
  display: block; }
  .widget-properties .entry-title a:hover {
    color: #33cc33; }

.widget-properties .property-price {
  font-size: 14px;
  color: #33cc33; }
  .widget-properties .property-price .property-price-label {
    color: #FFF; }

.widget-properties .media {
  overflow: hidden; }
  .widget-properties .media .media-left,
  .widget-properties .media .media-body {
    display: block;
    padding: 0 !important; }
  .widget-properties .media .media-body {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; }
    .widget-properties .media .media-body .entry-content {
      padding: 10px 10px 5px;
      display: block; }

.widget-estate-browse-single-category .property-category,
.widget-estate-browse-single-type .property-category {
  position: relative;
  overflow: hidden; }
  .widget-estate-browse-single-category .property-category .property-category-image img,
  .widget-estate-browse-single-type .property-category .property-category-image img {
    width: 100%;
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s; }
  .widget-estate-browse-single-category .property-category .static-content,
  .widget-estate-browse-single-type .property-category .static-content {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    color: #33cc33;
    font-weight: 500;
    font-size: 14px;
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s; }
    .widget-estate-browse-single-category .property-category .static-content h5,
    .widget-estate-browse-single-type .property-category .static-content h5 {
      font-size: 36px;
      margin: 0;
      letter-spacing: -1px; }
      .widget-estate-browse-single-category .property-category .static-content h5 a,
      .widget-estate-browse-single-type .property-category .static-content h5 a {
        color: #fff; }
        .widget-estate-browse-single-category .property-category .static-content h5 a:hover,
        .widget-estate-browse-single-type .property-category .static-content h5 a:hover {
          color: #33cc33; }
      @media (max-width: 1199px) {
        .widget-estate-browse-single-category .property-category .static-content h5,
        .widget-estate-browse-single-type .property-category .static-content h5 {
          font-size: 30px; } }
    .widget-estate-browse-single-category .property-category .static-content .property-category-count,
    .widget-estate-browse-single-type .property-category .static-content .property-category-count {
      text-transform: uppercase;
      font-size: 10px;
      font-weight: 500;
      font-family: "Raleway", sans-serif; }
  .widget-estate-browse-single-category .property-category:hover img,
  .widget-estate-browse-single-type .property-category:hover img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1); }
  .widget-estate-browse-single-category .property-category:hover .static-content,
  .widget-estate-browse-single-type .property-category:hover .static-content {
    background-color: rgba(0, 0, 0, 0.6); }

.widget-estate-browse-single-category .property-category .static-content h5 {
  font-size: 30px; }
  @media (max-width: 992px) {
    .widget-estate-browse-single-category .property-category .static-content h5 {
      font-size: 24px; } }

.widget-estate-browse-single-location .property-category {
  position: relative;
  overflow: hidden; }
  .widget-estate-browse-single-location .property-category:hover img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1); }
  .widget-estate-browse-single-location .property-category:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5); }

.widget-estate-browse-single-location .static-content {
  text-align: center;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #FFF;
  font-weight: 500;
  width: 100%;
  z-index: 1; }
  .widget-estate-browse-single-location .static-content h5 {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0; }
    .widget-estate-browse-single-location .static-content h5 a {
      color: #FFF;
      transition: all .3s; }
      .widget-estate-browse-single-location .static-content h5 a:hover {
        color: #33cc33; }

.widget-estate-browse-single-location .property-category-image img {
  width: 100%;
  -webkit-transition: 1s;
  -o-transition: 1s;
  transition: 1s; }

.widget-estate-browse-single-location.style-carousel {
  margin-left: -3px;
  margin-right: -3px; }
  .widget-estate-browse-single-location.style-carousel .owl-item {
    padding: 0 3px; }
  .widget-estate-browse-single-location.style-carousel .owl-controls {
    display: block !important;
    margin-top: 25px; }

.overlap-carousel-property .owl-carousel-play .carousel-controls {
  position: static; }

.overlap-carousel-property .owl-carousel-play .carousel-control {
  left: 18%;
  position: absolute;
  background-color: transparent;
  border: 1px solid #FFF;
  color: #FFF;
  font-size: 18px; }
  .overlap-carousel-property .owl-carousel-play .carousel-control:hover {
    border-color: #33cc33;
    color: #33cc33; }
  .overlap-carousel-property .owl-carousel-play .carousel-control.right {
    left: auto;
    right: 18%; }
  @media (max-width: 768px) {
    .overlap-carousel-property .owl-carousel-play .carousel-control {
      left: 0; }
      .overlap-carousel-property .owl-carousel-play .carousel-control.right {
        right: 0; } }

.overlap-carousel-property .owl-carousel .owl-item .item {
  padding: 0 2px; }

.overlap-carousel-property .opalestate-rows {
  margin: 0 -25%;
  overflow: hidden; }
  .overlap-carousel-property .opalestate-rows article {
    border: none; }
    .overlap-carousel-property .opalestate-rows article .entry-content {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      background-color: transparent;
      padding: 15% 50px 50px; }
      @media (max-width: 1199px) {
        .overlap-carousel-property .opalestate-rows article .entry-content {
          padding: 20px; } }
    .overlap-carousel-property .opalestate-rows article .property-price-wrapper {
      margin-bottom: 20px; }
      @media (max-width: 1199px) {
        .overlap-carousel-property .opalestate-rows article .property-price-wrapper {
          margin-bottom: 15px; } }
      .overlap-carousel-property .opalestate-rows article .property-price-wrapper .property-price {
        display: inline-block;
        background-color: #33cc33;
        color: #fff;
        padding: 0 15px;
        position: static; }
    .overlap-carousel-property .opalestate-rows article .entry-title {
      font-size: 24px;
      margin-bottom: 10px; }
      .overlap-carousel-property .opalestate-rows article .entry-title a {
        color: #fff; }
        .overlap-carousel-property .opalestate-rows article .entry-title a:hover {
          color: #33cc33; }
      @media (max-width: 767px) {
        .overlap-carousel-property .opalestate-rows article .entry-title {
          font-size: 16px; } }
    .overlap-carousel-property .opalestate-rows article .property-meta-list {
      border: none;
      background-color: transparent;
      margin: 0 -8px;
      padding: 0;
      text-align: left;
      font-size: 14px;
      font-weight: 700;
      color: #b7b7b7; }
      .overlap-carousel-property .opalestate-rows article .property-meta-list li {
        width: auto;
        min-width: 85px; }
        @media (max-width: 767px) {
          .overlap-carousel-property .opalestate-rows article .property-meta-list li {
            min-width: 10px; } }
      .overlap-carousel-property .opalestate-rows article .property-meta-list i:before {
        font-weight: 400; }
    .overlap-carousel-property .opalestate-rows article .property-box-image:before {
      -webkit-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s;
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      background: transparent linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5)) repeat scroll 0 0;
      width: 100%;
      height: 100%; }
    .overlap-carousel-property .opalestate-rows article:hover .property-box-image:before {
      opacity: 0.3;
      filter: alpha(opacity=30); }
  @media (max-width: 768px) {
    .overlap-carousel-property .opalestate-rows {
      margin: 0; } }

@media (max-width: 480px) {
  .overlap-carousel-property .opalestate-rows article .property-price-wrapper {
    margin-bottom: 5px; }
    .overlap-carousel-property .opalestate-rows article .property-price-wrapper .property-price {
      color: #33cc33;
      padding: 0;
      background-color: transparent;
      font-size: 14px; }
  .overlap-carousel-property .opalestate-rows article .entry-title {
    font-size: 14px; }
  .overlap-carousel-property .opalestate-rows article .entry-content {
    padding: 10px 15px; } }

.opalesate-agent-grid-v2.opalestate-rows article {
  border: none; }
  .opalesate-agent-grid-v2.opalestate-rows article .agent-box-title {
    font-size: 18px;
    margin: 0;
    color: #333333; }
  .opalesate-agent-grid-v2.opalestate-rows article .agent-box-image {
    border-radius: 0; }
  .opalesate-agent-grid-v2.opalestate-rows article .property-label {
    left: 0;
    border-top-color: #22355b; }
  .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button {
    border: 1px solid #f6f6f6;
    margin-bottom: 20px; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__wrapper {
      display: flex;
      align-items: center; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-box-image {
      width: 37%; }
      .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-box-image .agent-with-button__wrapper img {
        width: 100%; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__agent {
      width: 63%;
      padding-left: 30px; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__agent-name {
      font-size: 18px;
      margin-bottom: 4px; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__agent-position {
      display: block;
      margin-bottom: 1px;
      color: #999999;
      font-size: 12px; }
    .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__cta {
      display: block;
      height: 45px;
      line-height: 45px;
      background-color: #33cc33;
      color: #ffffff;
      text-align: center;
      text-transform: capitalize;
      transition: all .3s; }
      .opalesate-agent-grid-v2.opalestate-rows article.agent-with-button .agent-with-button__cta:hover {
        background-color: #2eb82e; }
  @media (max-width: 768px) {
    .opalesate-agent-grid-v2.opalestate-rows article .agent-box-image img {
      width: 100%; } }
  .opalesate-agent-grid-v2.opalestate-rows article:hover {
    box-shadow: none; }

.opalesate-agent-grid-v2.style-carousel .owl-item {
  padding: 0 15px; }

.opalesate-agent-grid-v2 .carousel-controls.style-2 .carousel-control.left {
  right: 65px; }

.opalesate-properties-carousel {
  margin-left: -15px;
  margin-right: -15px; }

.opalesate-recent-property .carousel-controls {
  position: absolute;
  right: 15px;
  top: -80px; }

.opalesate-recent-property .carousel-control {
  position: static;
  display: inline-block; }

@media (max-width: 767px) {
  .opalesate-row .property-address.flex-center {
    display: block; } }

/***********************************
 * Single Property Page
 ***********************************/
.property-information ul.list-info {
  padding: 0;
  margin: 0; }
  .property-information ul.list-info li {
    border-top: 1px solid #eeeeee;
    padding: 8px 0;
    overflow: hidden;
    font-family: "Raleway", sans-serif;
    line-height: 30px;
    font-size: 14px; }
    .property-information ul.list-info li span:first-child {
      float: left;
      margin-right: 10px;
      border-right: 1px solid #eeeeee;
      font-weight: 700;
      width: 140px; }
    .property-information ul.list-info li.property-label-address {
      display: none; }
    .property-information ul.list-info li:first-child {
      border-top: none; }

@media screen and (max-width: 1023px) {
  .property-information ul.list-info {
    margin-bottom: 20px; } }

.content-bottom h6 {
  text-transform: uppercase;
  margin-right: 10px; }

.property-same-agent-section .opalestate_property .property-list-style-v2 {
  margin-bottom: 0; }

.property-same-agent-section .opalestate_property .property-meta-list > li {
  padding-left: 5px;
  padding-right: 5px; }

.property-same-agent-section .opalestate-rows article .property-list-style-v2 {
  border-bottom: none; }

.opalesate-featured-property.style-2 .owl-controls {
  display: block !important; }

.opalesate-featured-property.style-2 .carousel-control.style-3 {
  display: none; }

.property-grid-style-v5 {
  position: relative; }
  .property-grid-style-v5 .property-list .property-group-label {
    top: 110px; }
  .property-grid-style-v5 .property-list .property-status {
    top: 80px; }
  .property-grid-style-v5 .property-list header img {
    width: 100%;
    height: auto; }
  .property-grid-style-v5 .list-details .property-meta-list i:before {
    color: #FFF; }
  .property-grid-style-v5 .content-list {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 25px 23px;
    z-index: 1;
    background: linear-gradient(0deg, #050606 0%, rgba(5, 6, 6, 0.99) 1%, transparent 100%); }
    .property-grid-style-v5 .content-list .abs-col-item {
      display: flex;
      align-items: center;
      flex-wrap: wrap; }
      .property-grid-style-v5 .content-list .abs-col-item .flex-center {
        flex: 1; }
      .property-grid-style-v5 .content-list .abs-col-item .entry-title a {
        font-size: 18px;
        line-height: 24px;
        color: #FFF; }
      .property-grid-style-v5 .content-list .abs-col-item .property-address {
        color: #FFF;
        opacity: 0.5; }
    @media (max-width: 991px) {
      .property-grid-style-v5 .content-list {
        position: relative;
        bottom: auto;
        left: 0;
        right: 0;
        background: transparent;
        padding: 0; }
        .property-grid-style-v5 .content-list .abs-col-item {
          display: block;
          padding: 20px 10px 10px 10px;
          transition: all .3s; }
          .property-grid-style-v5 .content-list .abs-col-item .entry-title a {
            color: #222; }
          .property-grid-style-v5 .content-list .abs-col-item .property-address {
            color: #222; }
            .property-grid-style-v5 .content-list .abs-col-item .property-address img {
              display: none; }
        .property-grid-style-v5 .content-list .property-meta {
          min-width: 125px; } }
  .property-grid-style-v5 .absolute {
    top: 110px !important; }

@media (max-width: 991px) {
  .opalestate-rows.style-2 .item:hover .abs-col-item {
    box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.12); }
  .opalestate-rows.style-2 .item article:hover {
    box-shadow: none; } }

.opalestate_property .entry-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .opalestate_property .entry-content .info-title {
    flex: auto; }

.google-map-tabs .nav.nav-tabs > li > a {
  border: none !important;
  width: 40px;
  height: 40px;
  line-height: 40px;
  color: #FFF !important;
  text-align: center;
  background-color: #233354 !important;
  padding: 0;
  margin: 0; }
  .google-map-tabs .nav.nav-tabs > li > a span {
    display: none; }
  .google-map-tabs .nav.nav-tabs > li > a:after {
    content: none; }

.google-map-tabs .nav.nav-tabs > li.active > a {
  background-color: #33cc33 !important; }

.google-map-tabs .tab-content {
  border: none;
  padding: 0;
  margin: 0; }

.property-button-edit {
  position: absolute;
  right: -30px;
  top: -25px;
  z-index: 1;
  background-color: #000;
  font-size: 12px;
  padding: 2px 10px;
  text-transform: uppercase; }
  .property-button-edit a {
    color: #FFF; }

.property-map-section {
  position: relative; }
  .property-map-section #property-map {
    position: relative; }
  .property-map-section #property-search-places {
    bottom: 25px;
    left: 10px;
    position: absolute;
    z-index: 1; }
    .property-map-section #property-search-places .btn-map-search {
      cursor: pointer;
      background-color: #FFF;
      text-align: center;
      width: 40px;
      height: 40px;
      position: relative; }
      .property-map-section #property-search-places .btn-map-search i {
        display: block;
        line-height: 40px; }
        .property-map-section #property-search-places .btn-map-search i.fa-hospital-o {
          color: #b3e180; }
        .property-map-section #property-search-places .btn-map-search i.fa-plus-square {
          color: #ec8f73; }
        .property-map-section #property-search-places .btn-map-search i.fa-graduation-cap {
          color: #8fbfe4; }
        .property-map-section #property-search-places .btn-map-search i.fa-shopping-basket {
          color: #9d4cfa; }
        .property-map-section #property-search-places .btn-map-search i.fa-subway {
          color: #fabd47; }
        .property-map-section #property-search-places .btn-map-search i.fa-bank {
          color: #6eadfb; }
      .property-map-section #property-search-places .btn-map-search em {
        background: #1fc341;
        margin-left: 10px;
        font-size: 10px;
        color: #FFF;
        padding: 1px 3px; }
      .property-map-section #property-search-places .btn-map-search span {
        width: 0;
        display: block;
        visibility: hidden;
        -webkit-transition: 0.35s;
        -o-transition: 0.35s;
        transition: 0.35s;
        position: absolute;
        left: 50%;
        top: 0;
        background-color: #FFF;
        line-height: 40px;
        padding: 0 10px;
        z-index: -1;
        opacity: 0;
        filter: alpha(opacity=0);
        font-family: "Raleway", sans-serif;
        font-size: 12px; }
      .property-map-section #property-search-places .btn-map-search:hover span, .property-map-section #property-search-places .btn-map-search.active span {
        visibility: visible;
        width: auto;
        left: 100%;
        z-index: 1;
        opacity: 1;
        filter: alpha(opacity=100); }
  .property-map-section.style-2 .google-map-tabs .nav-tabs {
    position: absolute;
    z-index: 10;
    top: 30px;
    right: 0; }
    .property-map-section.style-2 .google-map-tabs .nav-tabs li a {
      width: 45px;
      height: 45px;
      line-height: 45px;
      margin-right: 10px;
      border-radius: 4px;
      background-color: rgba(0, 0, 0, 0.65) !important;
      box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.35);
      display: inline-block;
      text-align: center;
      cursor: pointer;
      transition: 0.3s all ease-out; }
      .property-map-section.style-2 .google-map-tabs .nav-tabs li a .property__control-icon {
        display: block;
        color: #ffffff;
        font-size: 16px; }
        @media (min-width: 768px) {
          .property-map-section.style-2 .google-map-tabs .nav-tabs li a .property__control-icon {
            font-size: 24px; } }
      .property-map-section.style-2 .google-map-tabs .nav-tabs li a:hover {
        background-color: #33cc33 !important; }

/**************************************
 * Archive Agent page
 *************************************/
.opalestate_agent {
  background-color: #FFF; }
  .opalestate_agent.agent-grid-style {
    margin-bottom: 30px;
    margin-top: 35px !important; }
  .opalestate_agent .agent-box-title {
    font-size: 14px;
    font-weight: 700;
    margin: 15px 0 0; }
  .opalestate_agent .agent-job {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    margin-bottom: 8px;
    margin-top: 5px;
    padding-left: 0; }
  .opalestate_agent .agent-info {
    padding: 15px 0 5px;
    color: #808080; }
    @media (max-width: 992px) {
      .opalestate_agent .agent-info {
        padding: 0; } }
  .opalestate_agent .more-link {
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif; }
    .opalestate_agent .more-link i {
      margin-left: 10px; }
  .opalestate_agent .bo-social-icons {
    margin: 0 -3px; }
    .opalestate_agent .bo-social-icons [class^="bo-social-"] {
      margin: 0 3px;
      border-color: #999999; }
      .opalestate_agent .bo-social-icons [class^="bo-social-"] i {
        color: #999999;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
      .opalestate_agent .bo-social-icons [class^="bo-social-"]:hover {
        border-color: #33cc33; }
        .opalestate_agent .bo-social-icons [class^="bo-social-"]:hover i {
          color: #33cc33; }
  .opalestate_agent .pbr-social-share .bo-social-icons [class^="bo-social-"] i {
    color: #fff; }
    .opalestate_agent .pbr-social-share .bo-social-icons [class^="bo-social-"] i:hover {
      color: #33cc33; }
  .opalestate_agent .post-thumbnail img {
    width: 100%; }
  .opalestate_agent .agent-google-map-content {
    margin-bottom: 30px; }
    .opalestate_agent .agent-google-map-content > p {
      margin-bottom: 15px;
      font-size: 14px; }
  .opalestate_agent .team-header {
    position: relative; }
    .opalestate_agent .team-header .agent-levels {
      left: 0;
      color: #fafafa; }
  .opalestate_agent .agent-box-image {
    border-radius: 50%;
    overflow: hidden; }
    @media (max-width: 767px) {
      .opalestate_agent .agent-box-image {
        border-radius: 0; } }
    @media screen and (max-width: 480px) {
      .opalestate_agent .agent-box-image img {
        width: 100%; } }
  .opalestate_agent .agent-footer {
    position: relative; }
    .opalestate_agent .agent-footer .property-label {
      border-radius: 0;
      position: absolute;
      bottom: 0;
      right: 0;
      color: #22355b; }
      .opalestate_agent .agent-footer .property-label i {
        font-size: 12px; }
  .opalestate_agent .agent-s2 .team-header {
    margin-left: 0;
    margin-right: 0;
    position: relative; }
    .opalestate_agent .agent-s2 .team-header > div {
      padding-left: 0;
      padding-right: 0; }
    .opalestate_agent .agent-s2 .team-header .agent-box-image img {
      width: 100%;
      height: auto; }
    .opalestate_agent .agent-s2 .team-header .socials {
      position: absolute;
      bottom: 0;
      width: 100%;
      padding: 8px 0;
      background: rgba(11, 33, 76, 0.9);
      text-align: center;
      opacity: 0;
      visibility: hidden;
      transition: 0.3s all ease-out;
      transform: translate3d(0, 40px, 0); }
      .opalestate_agent .agent-s2 .team-header .socials a {
        padding: 0 10px; }
        .opalestate_agent .agent-s2 .team-header .socials a .fa {
          color: #FFF;
          transition: all .3s; }
          .opalestate_agent .agent-s2 .team-header .socials a .fa:hover {
            color: #33cc33; }
  .opalestate_agent .agent-s2 .agent-box-image {
    border-radius: 0; }
  .opalestate_agent .agent-s2 .agent-body {
    padding: 10px 20px; }
  .opalestate_agent .agent-s2 .agent-box-title {
    margin: 0; }
  .opalestate_agent .agent-s2 .agent-info {
    padding: 0;
    color: #acacac; }
  .opalestate_agent .agent-s2 .info p {
    margin: 0;
    color: #666666;
    font-size: 13px;
    line-height: 20px; }
  .opalestate_agent .agent-s2:hover .socials {
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    visibility: visible; }
  .opalestate_agent .agent-s3 .team-header {
    margin-left: 0;
    margin-right: 0; }
    .opalestate_agent .agent-s3 .team-header > div {
      padding-left: 0;
      padding-right: 0; }
  .opalestate_agent .agent-s3 .agent-body {
    padding: 25px 0 0;
    border-bottom: none; }
  .opalestate_agent .agent-s3 .agent-box-title {
    text-transform: uppercase;
    font-size: 14px;
    margin: 0; }
  .opalestate_agent .agent-s3 .agent-info {
    padding: 0;
    color: #acacac; }
  .opalestate_agent .agent-s3 .property-label {
    background-color: #33cc33;
    line-height: 30px;
    left: 0;
    border: none;
    top: 50%;
    margin-top: -15px;
    width: 30px;
    height: 30px; }
    .opalestate_agent .agent-s3 .property-label i {
      position: static; }
  .opalestate_agent .team-v2 .agent-box-image {
    border-radius: 0; }
  .opalestate_agent .entry-content {
    margin-bottom: 25px; }
  .opalestate_agent .team-v1 .tooltip .tooltip-arrow {
    top: 0 !important; }

.post-type-archive-opalestate_agent .opalestate_agent .agent-box-image {
  border-radius: 0; }
  .post-type-archive-opalestate_agent .opalestate_agent .agent-box-image img {
    width: 100%; }

/**************************************
 * Single Agent page
 *************************************/
.single .bo-social-icons a {
  display: inline-block;
  padding-right: 10px;
  margin: 0;
  color: #adadad;
  font-size: 16px;
  transition: 0.3s color ease-out;
  border: none;
  width: auto;
  line-height: 1;
  height: 100%;
  overflow: inherit; }

.single__contact {
  padding-left: 0;
  list-style-type: none; }
  .single__contact li a, .single__contact li span {
    font-size: 13px;
    display: inline-block;
    color: #666666;
    transition: 0.3s color ease-out; }
  .single__contact li .fa {
    color: #666666;
    font-size: 12px;
    width: 1.28571429em;
    text-align: center;
    padding-right: 5px;
    transition: 0.3s color ease-out; }
    .single__contact li .fa.fa-mobile {
      font-size: 14px; }
  .single__contact li:hover a, .single__contact li:hover .fa {
    color: #33cc33; }

.single-opalestate_agent .contact-form__header-container .team-header {
  min-width: 150px; }
  .single-opalestate_agent .contact-form__header-container .team-header img {
    height: auto;
    border-radius: 50%;
    border: 1px solid #eeeeee; }
  .single-opalestate_agent .contact-form__header-container .team-header .agent-levels {
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%); }

.single-opalestate_agent .contact-form__header-container .contact-info .entry-content p {
  padding-left: 0; }

.single-opalestate_agent .contact-form__header-container .contact-info .agent-box-title {
  font-size: 24px; }

@media (min-width: 768px) {
  .single-opalestate_agent .contact-form__header-container {
    display: flex;
    align-items: flex-start; }
    .single-opalestate_agent .contact-form__header-container .contact-info {
      padding-left: 40px; } }

.single-opalestate_agent .agent-box .agents-single__inner .agent-preview {
  margin-bottom: 15px; }

@media (min-width: 768px) {
  .single-opalestate_agent .agent-box .agents-single__inner {
    display: flex; }
    .single-opalestate_agent .agent-box .agents-single__inner .agent-preview {
      width: 25%;
      margin-bottom: 0; }
    .single-opalestate_agent .agent-box .agents-single__inner .agent-box-meta {
      width: 75%;
      padding-left: 20px; } }

@media (min-width: 992px) {
  .single-opalestate_agent .agent-box .agents-single__inner .agent-box-meta {
    padding-left: 40px; } }

.single-opalestate_agent .agent-box .agent-box-meta .agent-box-title {
  margin-bottom: 5px;
  margin-top: 0;
  font-size: 24px;
  color: #333333; }

.single-opalestate_agent .agent-box .agent-box-meta .agent-job {
  display: inline-block;
  margin-bottom: 15px; }

.single-opalestate_agent .agent-box .agent-box-meta .bo-social-icons {
  margin: 0 0 35px 0; }

.single-opalestate_agent .agent-box .agent-box-bio {
  clear: both; }

.single-opalestate_agent .agent-box .agent-preview .team-header .property-label {
  left: 15px; }

.single-opalestate_agent .agent-box .agent-preview .team-header .agent-levels {
  left: 0;
  color: #fafafa; }

@media (max-width: 480px) {
  .single-opalestate_agent .agent-box .agent-preview .team-header img {
    width: 100%; } }

@media screen and (max-width: 992px) {
  .single-opalestate_agent .agent-box {
    margin-bottom: 30px; } }

@media screen and (max-width: 767px) {
  .single-opalestate_agent .agent-box .agent-box-image {
    margin-bottom: 20px; } }

.single-opalestate_agent .opalestate-contact-form .btn {
  text-transform: uppercase; }

.single-opalestate_agent .my-property {
  padding: 40px 0 100px;
  background-color: #f6f6f6;
  margin-top: 20px; }
  @media (min-width: 768px) {
    .single-opalestate_agent .my-property {
      padding: 140px 0 70px; } }

.single-opalestate_agent .form-contact {
  border: 1px solid #eeeeee;
  padding: 20px; }
  .single-opalestate_agent .form-contact .contact-form__title {
    margin-bottom: 20px;
    line-height: 23px; }
  .single-opalestate_agent .form-contact .form-group {
    margin-bottom: 10px; }
    .single-opalestate_agent .form-contact .form-group .form-control {
      height: 40px;
      line-height: 40px; }
  .single-opalestate_agent .form-contact textarea {
    min-height: 110px;
    margin-bottom: 20px; }
  .single-opalestate_agent .form-contact .btn {
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    font-family: "Roboto", sans-serif; }

body.author .agent-box {
  margin-bottom: 20px; }

body.author .agent-box-bio {
  line-height: 26px; }

.opalestate_agent .agent-box {
  margin-bottom: 15px; }
  @media screen and (max-width: 767px) {
    .opalestate_agent .agent-box .agent-box-image {
      margin-bottom: 20px; } }

.opalestate_agent .agent-contact {
  background-color: #ffffff;
  padding: 25px 30px 30px; }
  .opalestate_agent .agent-contact label {
    font-size: 14px; }
  .opalestate_agent .agent-contact .btn {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 900;
    padding: 5px 20px 7px; }

.opalestate_agent .agent-box-meta > div.agent-box-position {
  text-transform: uppercase;
  color: #888888;
  font-size: 12px;
  margin-bottom: 13px; }

.opalestate_agent .agent-box-meta > div a {
  color: #666666; }
  .opalestate_agent .agent-box-meta > div a:hover {
    color: #33cc33; }

.opalestate_agent .agent-box-meta > div i {
  color: #666666; }

.opalestate_agent .agent-box-meta > div.agent-box-phone {
  color: #33cc33; }

.agent-contact-form-container {
  border: 1px solid #eeeeee;
  padding: 20px; }
  .agent-contact-form-container h3 {
    font-size: 18px;
    margin-bottom: 25px; }
  .agent-contact-form-container .form-control {
    margin-bottom: 10px;
    color: #333333;
    border: 1px solid #eeeeee; }
  .agent-contact-form-container button {
    background-color: #33cc33;
    color: #FFF;
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    width: 100%;
    border: none;
    transition: all .3s ease-out; }
    .agent-contact-form-container button:hover {
      background-color: #2eb82e; }
  .agent-contact-form-container textarea.form-control {
    min-height: 110px; }

.single-opalestate_office .agent-contact-form-container {
  border: none; }

.property-agent-section {
  margin-bottom: 30px; }

.property-same-agent-section {
  margin-bottom: 0px;
  margin-top: 25px; }

/**************************************
 * Find Agent page
 *************************************/
.search-agents-wrap .opalestate-search-agents-form {
  margin: 0 0 80px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  border-radius: 0;
  border: 1px solid #eeeeee; }

.opalestate-search-agents-form {
  background-color: #22355b;
  padding: 10px 15px 15px; }
  .opalestate-search-agents-form .search-agent-title {
    display: block !important;
    color: #FFF;
    font-size: 12px;
    margin-bottom: 5px;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif; }
  .opalestate-search-agents-form select {
    background-color: #efefef;
    height: 45px;
    line-height: 31px;
    border: 1px solid #e1e1e1;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif;
    color: #333333;
    font-size: 10px; }
  .opalestate-search-agents-form .btn-search {
    font-size: 12px;
    padding: 10px 20px;
    font-weight: 600;
    text-transform: uppercase; }
    .opalestate-search-agents-form .btn-search i {
      margin-right: 10px; }
      @media screen and (max-width: 979px) {
        .opalestate-search-agents-form .btn-search i {
          display: none; } }
  .opalestate-search-agents-form .noUi-handle {
    background: #dadada; }
  .opalestate-search-agents-form .noUi-background {
    border-radius: 0;
    background: #efefef; }
  .opalestate-search-agents-form .opal-slide-ranger label {
    text-transform: uppercase;
    font-family: "Raleway", sans-serif;
    color: #FFF;
    font-size: 11px; }
  @media (max-width: 767px) {
    .opalestate-search-agents-form .opal-slide-ranger {
      margin-bottom: 20px; } }
  .opalestate-search-agents-form .form-control {
    height: 45px;
    color: #333333;
    font-size: 10px;
    border: 1px solid #e1e1e1;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif;
    line-height: 31px;
    background-color: #efefef;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer; }
    @media (max-width: 767px) {
      .opalestate-search-agents-form .form-control {
        margin-bottom: 10px; } }
  .opalestate-search-agents-form .opal-row:last-child .col-md-3:after {
    font-family: 'FontAwesome';
    content: "\f078";
    color: #33cc33;
    right: 30px;
    top: 12px;
    z-index: 1;
    position: absolute;
    pointer-events: none;
    font-size: 10px; }
  .opalestate-search-agents-form .opal-row:last-child > div:first-child.col-md-4:after {
    font-family: 'FontAwesome';
    content: "\f078";
    color: #33cc33;
    right: 30px;
    top: 12px;
    z-index: 1;
    position: absolute;
    pointer-events: none;
    font-size: 10px; }

.team-header {
  position: relative; }
  .team-header .agent-levels {
    position: absolute;
    background-color: #33cc33;
    color: #222;
    margin: 0;
    bottom: 0;
    left: 0;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 24px;
    padding: 0 10px; }
    .team-header .agent-levels li {
      list-style: none; }
  .team-header .property-label {
    border-radius: 0;
    position: absolute;
    top: 0;
    left: 0;
    position: absolute;
    width: 0;
    height: 0;
    content: '';
    z-index: 2;
    border-opposite-position(bottom): 60px solid #fabd47;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-left-width: 0;
    border-top: solid #fabd47 40px; }
    .team-header .property-label i {
      position: absolute;
      z-index: 1;
      color: #FFF;
      top: -35px;
      left: 7px;
      font-size: 12px; }

/*********************************************
 *  Office page and style
 **********************************************/
.office-grid-style {
  background: #FFF;
  margin-bottom: 30px; }
  .office-grid-style .office-header {
    position: relative; }
    @media (max-width: 767px) {
      .office-grid-style .office-header .agent-box-image img {
        width: 100%; } }
  .office-grid-style .office-body-content {
    padding: 30px 30px 10px;
    border-left: solid 1px #eeeeee;
    border-right: solid 1px #eeeeee; }
    .office-grid-style .office-body-content .office-logo {
      float: left;
      margin-right: 20px;
      max-width: 50px; }
    .office-grid-style .office-body-content .office-content {
      overflow: hidden;
      font-size: 14px;
      color: #999999; }
    @media screen and (max-width: 479px) {
      .office-grid-style .office-body-content {
        padding: 20px 20px 5px; } }
  .office-grid-style .office-box-meta {
    padding: 20px 30px 25px;
    font-size: 14px;
    border: solid 1px #eeeeee; }
    .office-grid-style .office-box-meta .office-box-email {
      margin-bottom: 10px; }
    .office-grid-style .office-box-meta i {
      min-width: 20px; }
    .office-grid-style .office-box-meta a {
      color: #666666; }
      .office-grid-style .office-box-meta a:hover {
        color: #33cc33; }
    @media screen and (max-width: 479px) {
      .office-grid-style .office-box-meta {
        padding: 10px 20px 15px; } }
  .office-grid-style .office-box-title {
    font-weight: 400;
    margin-top: 0; }
  .office-grid-style .property-label {
    border-radius: 0;
    position: absolute;
    top: 0;
    left: 0;
    position: absolute;
    width: 0;
    height: 0;
    content: '';
    z-index: 2;
    border-opposite-position(bottom): 60px solid #fabd47;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-left-width: 0;
    border-top-width: 40px; }
    .office-grid-style .property-label i {
      position: absolute;
      z-index: 1;
      color: yellow;
      top: 10px;
      left: 10px;
      font-size: 12px; }
  .office-grid-style .author-link span {
    display: none; }

.post-type-archive-opalestate_office .page-title {
  display: none; }

.single-opalestate_office .opalestate_office .office-thumb {
  position: relative; }
  .single-opalestate_office .opalestate_office .office-thumb .property-label {
    position: absolute;
    right: 10px;
    color: yellow;
    top: 10px; }

.single-opalestate_office .opalestate_office .property-agent-contact .agent-box .agent-box-meta .entry-title {
  margin-bottom: 5px;
  margin-top: 0;
  font-size: 24px;
  color: #222222; }

@media (max-width: 767px) {
  .single-opalestate_office .opalestate_office .property-agent-contact {
    margin-top: 30px; }
    .single-opalestate_office .opalestate_office .property-agent-contact .bo-social-icons {
      margin: 0; } }

.single-opalestate_office .opalestate_office .opalestate-box.office-address-map #property-map {
  position: relative; }

.single-opalestate_office .property-office-section .property-meta {
  background-color: transparent !important;
  position: relative !important;
  padding: 0 !important; }
  .single-opalestate_office .property-office-section .property-meta .label-property {
    display: block !important;
    left: 0; }
  .single-opalestate_office .property-office-section .property-meta li {
    padding-left: 0; }

.single-opalestate_office .property-office-section .tab-content .property-office-section {
  margin: 0; }

.opalestate-box.property-same-author-section h3 {
  margin-bottom: 30px; }

.office-tabs .nav.nav-tabs {
  border: 1px solid #eeeeee; }
  .office-tabs .nav.nav-tabs > li > a {
    margin: 0;
    border-color: #eeeeee;
    border-width: 0 1px 0 0;
    font-size: 14px;
    color: #999999;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif;
    padding: 15px 32px; }
    .office-tabs .nav.nav-tabs > li > a:after {
      background-color: #FFF; }
    @media (max-width: 767px) {
      .office-tabs .nav.nav-tabs > li > a {
        font-size: 12px;
        padding: 10px 15px; } }
  .office-tabs .nav.nav-tabs > li.active > a, .office-tabs .nav.nav-tabs > li:hover > a {
    border-color: #eeeeee;
    border-width: 0 1px 0 0;
    color: #333333; }

.office-tabs .tab-content {
  border: 1px solid #eeeeee;
  border-top: none;
  margin: 0; }
  .office-tabs .tab-content .opalestate-box {
    border-top: none;
    margin: 0 -30px;
    padding: 0; }
  .office-tabs .tab-content .property-office-section {
    margin: -30px -30px -31px; }
  .office-tabs .tab-content .opalesate-agents {
    margin: 0; }
    @media (max-width: 480px) {
      .office-tabs .tab-content .opalesate-agents .agent-box-image img {
        width: 100%; } }

.office-tabs .team-v1 .team-body {
  border-bottom: none;
  padding: 10px 0 0; }

.office-tabs .team-v1 .team-info {
  margin: 0;
  padding: 0; }

@media (max-width: 767px) {
  .office-tabs {
    margin-bottom: 30px; } }

.single-opalestate-container > article .property-office-section > h3 {
  display: none; }

.single-opalestate-container > article .property-office-section .opalestate-rows article {
  margin-bottom: 0; }

.single-opalestate-container > article .property-office-section ul.property-meta-list .label-property {
  display: none !important; }

.single-opalestate-container > article .property-office-section .property-meta-list {
  margin: 0;
  padding: 0;
  background-color: transparent; }
  .single-opalestate-container > article .property-office-section .property-meta-list i:before {
    color: #000; }

.single-opalestate-container > article .property-office-section .property-list .abs-col-item::after {
  content: none; }

.single-opalestate-container > article .property-office-section .abs-col-item {
  border-width: 0 0 1px;
  padding: 20px 30px 0 30px; }

.single-opalestate-container > article .property-office-section .entry-content {
  margin: 0;
  padding: 0;
  background-color: transparent; }
  @media (max-width: 767px) {
    .single-opalestate-container > article .property-office-section .entry-content {
      padding-bottom: 20px; }
      .single-opalestate-container > article .property-office-section .entry-content .property-abs-bottom {
        margin-top: 0; }
        .single-opalestate-container > article .property-office-section .entry-content .property-abs-bottom .entry-content-bottom {
          padding-top: 15px; } }

.single-opalestate-container > article .property-office-section .entry-title {
  font-size: 18px;
  margin: 0 0 15px;
  line-height: 24px; }

.single-opalestate-container > article .property-office-section .property-status {
  margin-top: 0; }

.single-opalestate-container > article .property-office-section .property-meta {
  margin-bottom: 0;
  padding: 15px;
  background-color: rgba(51, 204, 51, 0.8);
  border-top: none;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  overflow: visible; }

.single-opalestate-container > article .property-office-section .entry-content-bottom {
  padding: 30px 0 0;
  border: none; }

.single-opalestate-container > article .property-office-section .tooltip.top .tooltip-arrow,
.single-opalestate-container > article .property-office-section .tooltip.top-left .tooltip-arrow,
.single-opalestate-container > article .property-office-section .tooltip.top-right .tooltip-arrow {
  border-top-color: #8ac842; }

.single-opalestate-container > article .property-office-section .tooltip.right .tooltip-arrow {
  border-right-color: #8ac842; }

.single-opalestate-container > article .property-office-section .tooltip.left .tooltip-arrow {
  border-left-color: #8ac842; }

.single-opalestate-container > article .property-office-section .tooltip.bottom .tooltip-arrow,
.single-opalestate-container > article .property-office-section .tooltip.bottom-left .tooltip-arrow,
.single-opalestate-container > article .property-office-section .tooltip.bottom-right .tooltip-arrow {
  border-bottom-color: #8ac842; }

@media (max-width: 767px) {
  #office-team article {
    margin-bottom: 30px; } }

.opalestate-load-more {
  margin: 30px 0; }

/**************************************
 * Shortcodes Styles
 *************************************/
.property-search-style2 .search-properies-form label {
  color: #333333; }

.property-search-style2 .search-properies-form #opalestate-search-form {
  background: #FFF;
  padding: 9px 15px 0px; }

.search-properies-form {
  color: #acacac;
  position: relative;
  z-index: 1; }
  .search-properies-form #opalestate-search-form {
    padding: 15px 15px 4px 15px;
    background-color: #22355b; }
    @media (max-width: 767px) {
      .search-properies-form #opalestate-search-form {
        padding-bottom: 20px; } }
  .search-properies-form .advanced-fields {
    display: none; }
  .search-properies-form .form-group {
    margin-bottom: 20px; }
  .search-properies-form .btn-search {
    width: 100%;
    display: block;
    text-transform: uppercase;
    border-radius: 4px;
    font-size: 14px;
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    margin-top: 24px;
    position: relative;
    transition: all .3s ease-out;
    height: 41px;
    line-height: 41px;
    padding: 0 12px;
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .search-properies-form .btn-search {
        width: 100%; } }
  .search-properies-form select {
    position: relative;
    background-image: url("../images/icons/dropdown.png");
    background-repeat: no-repeat;
    background-position: right;
    padding-right: 20px !important;
    background-position-x: 96%; }
  .search-properies-form ul.list-inline {
    padding: 0;
    margin: 0 0 15px;
    text-align: right; }
    .search-properies-form ul.list-inline li {
      position: relative;
      font-size: 16px;
      padding: 0;
      line-height: 1;
      margin: 0; }
  .search-properies-form h3 {
    text-transform: uppercase;
    font-size: 16px;
    margin: 0; }
    @media screen and (max-width: 979px) {
      .search-properies-form h3 {
        font-size: 14px; } }
    @media screen and (max-width: 767px) {
      .search-properies-form h3 {
        display: none; } }
  .search-properies-form #opalestate-search-form .opal-row > div,
  .search-properies-form .opalestate-search-form .opal-row > div {
    /* The CSS For Select Dropdown */
    /* Targetting Webkit browsers only. FF will show the dropdown arrow with so much padding. */ }
    .search-properies-form #opalestate-search-form .opal-row > div > select,
    .search-properies-form .opalestate-search-form .opal-row > div > select {
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      cursor: pointer; }
    @media screen and (-webkit-min-device-pixel-ratio: 0) {
      .search-properies-form #opalestate-search-form .opal-row > div > select,
      .search-properies-form .opalestate-search-form .opal-row > div > select {
        padding-right: 18px; } }
  .search-properies-form label {
    font-size: 12px;
    text-transform: uppercase;
    color: #FFF;
    margin-bottom: 7px;
    display: block; }
    @media screen and (max-width: 1200px) {
      .search-properies-form label {
        margin-bottom: 5px; } }
  .search-properies-form .opal-slide-ranger label {
    margin-bottom: 9px;
    font-weight: 400; }
  .search-properies-form .form-control {
    margin: 0 0 15px;
    border-radius: 4px;
    height: 40px;
    padding: 0 12px;
    line-height: 26px;
    font-size: 13px;
    border: 1px solid #eeeeee;
    transition: all .3s; }
    .search-properies-form .form-control:hover {
      border-color: #33cc33; }
  .search-properies-form select.form-control {
    position: relative;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer; }
  .search-properies-form .cost-price-content label,
  .search-properies-form .area-range-content label {
    height: 31px; }
    @media screen and (max-width: 979px) {
      .search-properies-form .cost-price-content label,
      .search-properies-form .area-range-content label {
        height: auto; } }
  .search-properies-form .opal-slide-ranger {
    margin-top: 10px; }
    .search-properies-form .opal-slide-ranger .slide-ranger-bar {
      margin-top: 15px; }
      @media (max-width: 991px) {
        .search-properies-form .opal-slide-ranger .slide-ranger-bar {
          margin: 15px 0; } }
  .search-properies-form #opalestate-search-form-v .slide-ranger-bar {
    margin-top: 0; }
  .search-properies-form #opalestate-search-form-v .main-listing__form-select {
    display: flex;
    align-items: center;
    margin-bottom: 10px; }
    .search-properies-form #opalestate-search-form-v .main-listing__form-select .main-listing__form-radio {
      display: none; }
    .search-properies-form #opalestate-search-form-v .main-listing__form-select .main-listing__form-label {
      display: inline-block;
      color: #333333;
      font-size: 13px;
      text-transform: uppercase;
      cursor: pointer; }
      .search-properies-form #opalestate-search-form-v .main-listing__form-select .main-listing__form-label:before {
        content: "\f10c";
        display: inline-block;
        margin-right: 10px;
        font-family: "FontAwesome";
        font-weight: 14px; }
    .search-properies-form #opalestate-search-form-v .main-listing__form-select .main-listing__form-desc {
      margin-left: auto;
      font-size: 12px;
      color: #888888; }
    .search-properies-form #opalestate-search-form-v .main-listing__form-select .main-listing__form-radio:checked ~ .main-listing__form-label {
      color: #33cc33; }
  @media screen and (max-width: 767px) {
    .search-properies-form .opal-slide-ranger {
      margin-bottom: 20px; }
    .search-properies-form .btn-search {
      margin-top: 0; } }

.opalestate-search-properties-v {
  background-color: #FFF; }
  .opalestate-search-properties-v .search-properies-form {
    padding: 20px; }
    .opalestate-search-properties-v .search-properies-form ul.list-property-status li,
    .opalestate-search-properties-v .search-properies-form ul.list-inline li {
      font-size: 14px;
      padding: 10px; }
      .opalestate-search-properties-v .search-properies-form ul.list-property-status li:first-child > span,
      .opalestate-search-properties-v .search-properies-form ul.list-inline li:first-child > span {
        padding-left: 0;
        font-size: 16px;
        font-weight: 600;
        font-family: "Raleway", sans-serif; }
      @media screen and (max-width: 1200px) {
        .opalestate-search-properties-v .search-properies-form ul.list-property-status li,
        .opalestate-search-properties-v .search-properies-form ul.list-inline li {
          padding: 5px 10px; } }
      @media screen and (max-width: 992px) {
        .opalestate-search-properties-v .search-properies-form ul.list-property-status li,
        .opalestate-search-properties-v .search-properies-form ul.list-inline li {
          padding: 5px 10px; } }
    .opalestate-search-properties-v .search-properies-form .btn-search {
      padding: 15px 30px; }
      .opalestate-search-properties-v .search-properies-form .btn-search:before {
        font-family: 'FontAwesome';
        content: "\f002";
        margin-right: 10px; }
      .opalestate-search-properties-v .search-properies-form .btn-search:after {
        content: none; }
      @media screen and (max-width: 1200px) {
        .opalestate-search-properties-v .search-properies-form .btn-search {
          padding: 10px 30px; } }
    .opalestate-search-properties-v .search-properies-form .opalestate-search-form > .row:first-child > div {
      padding: 0; }

.sidebar .widget.widget_opalestate_search_properties_widget {
  padding: 30px 30px 10px;
  border: none;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); }
  .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form {
    padding: 0;
    box-shadow: none; }
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form .row:first-child {
      display: none; }
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-inline {
      display: none; }
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-property-status li,
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-inline li {
      font-size: 14px;
      padding: 10px 20px; }
      @media screen and (max-width: 1200px) {
        .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-property-status li,
        .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-inline li {
          padding: 10px 15px;
          font-size: 13px; } }
      @media screen and (max-width: 992px) {
        .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-property-status li,
        .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form ul.list-inline li {
          padding: 5px 12px; } }
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form .btn-search {
      padding: 15px 30px; }
    .sidebar .widget.widget_opalestate_search_properties_widget .search-properies-form .opalestate-search-form > .row:first-child > div {
      padding: 0; }
  .sidebar .widget.widget_opalestate_search_properties_widget .widget-content {
    overflow: visible; }

.page .widget.widget_opalestate_search_properties_widget {
  box-shadow: none; }

.sidebar-single-property .widget {
  background-color: #FFF;
  padding: 20px; }
  .sidebar-single-property .widget .search-properies-form {
    padding: 0; }
  .sidebar-single-property .widget .widget-title {
    margin-bottom: 30px;
    font-size: 18px;
    text-transform: capitalize; }

.btn-modal-locations {
  color: #acacac;
  font-size: 13px;
  line-height: 40px;
  border: 2px solid #dedede;
  border-right-width: 1px;
  border-right-color: #e1eef3;
  display: block;
  background-color: #FFF;
  position: relative;
  padding: 0 10px; }
  .btn-modal-locations i {
    margin-right: 8px;
    font-size: 13px; }
  .btn-modal-locations:after {
    font-family: 'FontAwesome';
    content: "\f078";
    margin-left: 5px;
    font-size: 10px;
    float: right;
    color: #33cc33;
    margin-top: -1px; }
  @media (max-width: 767px) {
    .btn-modal-locations {
      border-width: 2px;
      border-color: #dedede;
      margin-bottom: 10px; } }

#modal-locations .modal-body {
  padding: 30px 35px; }
  #modal-locations .modal-body .col-sm-12 > h3 {
    font-size: 30px;
    text-transform: uppercase;
    margin: 0 0 10px; }
  #modal-locations .modal-body .locations {
    margin-top: 10px; }
    #modal-locations .modal-body .locations > div {
      line-height: 26px; }
      #modal-locations .modal-body .locations > div a {
        font-size: 14px;
        font-weight: 700; }
  #modal-locations .modal-body .location-bottom {
    border-top: 1px solid #eeeeee;
    padding-top: 25px;
    margin: 20px 0 0; }

#modal-locations .close {
  background-color: #33cc33;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center; }
  #modal-locations .close a {
    display: block;
    color: #FFF;
    position: relative;
    z-index: 1; }

.opalestate-search-location {
  background-color: rgba(255, 255, 255, 0.1);
  padding: 10px 15px; }

.opalestate-quick-search-form .quick-search-places-form.row {
  margin-left: 0;
  margin-right: 0; }
  .opalestate-quick-search-form .quick-search-places-form.row > div {
    padding-left: 0;
    padding-right: 0;
    position: relative; }
    @media screen and (max-width: 479px) {
      .opalestate-quick-search-form .quick-search-places-form.row > div {
        width: 100%; } }
  .opalestate-quick-search-form .quick-search-places-form.row .col-lg-3 .form-group {
    position: relative; }
    .opalestate-quick-search-form .quick-search-places-form.row .col-lg-3 .form-group:after {
      font-family: 'FontAwesome';
      content: "\f078";
      color: #33cc33;
      right: 10px;
      top: 12px;
      z-index: 1;
      position: absolute;
      pointer-events: none;
      font-size: 10px; }
  .opalestate-quick-search-form .quick-search-places-form.row input,
  .opalestate-quick-search-form .quick-search-places-form.row select {
    border-style: solid;
    border-width: 2px 2px 2px 0;
    border-color: #dedede;
    background-color: #FFF;
    color: #acacac;
    font-size: 13px;
    border-radius: 0;
    height: 44px; }
  .opalestate-quick-search-form .quick-search-places-form.row select {
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    border-right-width: 1px;
    border-right-color: #e1eef3; }
    @media (max-width: 767px) {
      .opalestate-quick-search-form .quick-search-places-form.row select {
        border-left-width: 2px;
        border-left-color: #dedede; } }
    @media screen and (max-width: 479px) {
      .opalestate-quick-search-form .quick-search-places-form.row select {
        border-right-width: 2px;
        border-right-color: #dedede;
        margin-bottom: 10px; } }
  .opalestate-quick-search-form .quick-search-places-form.row input {
    padding-right: 56px; }
    @media screen and (max-width: 479px) {
      .opalestate-quick-search-form .quick-search-places-form.row input {
        border-left-width: 2px;
        border-left-color: #dedede; } }
  .opalestate-quick-search-form .quick-search-places-form.row .btn-search {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 0;
    width: 44px;
    height: 44px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
  .opalestate-quick-search-form .quick-search-places-form.row .form-group {
    margin-bottom: 0; }

.infoBox {
  position: relative; }
  .infoBox > img {
    z-index: 99;
    margin: 0 !important;
    position: absolute !important;
    right: 0;
    top: 25px;
    background-color: #33cc33;
    padding: 13px; }

.opalestate-search-properties .infoBox {
  position: relative; }
  .opalestate-search-properties .infoBox .map-info-preview .property-status {
    position: absolute;
    top: 5px;
    left: 5px; }

.map-info-preview {
  position: relative;
  background-color: #FFFFFF;
  margin-bottom: 15px;
  max-width: 300px;
  display: flex;
  flex-direction: column;
  padding: 0;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); }
  .map-info-preview a img {
    max-width: 300px;
    width: 300px; }
  .map-info-preview .info-container {
    padding-left: 20px; }
    .map-info-preview .info-container .prop-title {
      text-transform: uppercase;
      font-size: 14px;
      margin: 15px 0 8px; }
    .map-info-preview .info-container p {
      line-height: 22px; }
      .map-info-preview .info-container p .price {
        font-size: 16px;
        font-weight: 700;
        text-transform: uppercase; }
    .map-info-preview .info-container .prop-address {
      font-size: 13px;
      font-family: "Roboto", sans-serif; }
  .map-info-preview .property-meta-list {
    border-top: 1px solid #eeeeee;
    padding: 10px 0;
    margin: 0;
    text-align: center; }
    .map-info-preview .property-meta-list > li {
      color: #999999;
      font-family: "Roboto", sans-serif;
      font-size: 13px;
      padding: 0;
      margin: 0 5px; }
      .map-info-preview .property-meta-list > li i {
        margin-right: 10px; }
        .map-info-preview .property-meta-list > li i:before {
          color: #ccc;
          font-size: 14px; }
      .map-info-preview .property-meta-list > li .label-property {
        display: inline;
        margin-left: 5px; }
  .map-info-preview .arrow-down {
    border-style: solid;
    border-width: 10px 10px 0;
    bottom: -13px;
    height: 0;
    left: 112px;
    position: absolute;
    width: 0;
    border-color: #1fc341;
    display: none; }
  .map-info-preview .property-status {
    position: absolute;
    top: 5px;
    left: 5px; }

#opalestate-map-preview .cluster > div {
  line-height: 30px !important; }

.opaleslate-archive-container .opalesate-archive-top {
  padding: 10px 20px; }

.opaleslate-archive-container .opalestate-rows article .property-list-style-v2 .entry-summary > p {
  max-height: 160px;
  overflow: hidden; }

/******************************************
 * Properties Search: NoResult
 ******************************************/
.page-template-page-property-search-results #opalestate-map-preview {
  height: 70vh !important; }

.opalesate-recent-property .page-title,
.page-template-page-property-search-results .page-title {
  margin-bottom: 15px; }

.opalesate-recent-property .page-content .searchform,
.page-template-page-property-search-results .page-content .searchform {
  margin-top: 20px; }
  .opalesate-recent-property .page-content .searchform .pbr-search input.form-control,
  .page-template-page-property-search-results .page-content .searchform .pbr-search input.form-control {
    width: 100%;
    position: static;
    padding: 0 15px;
    border-radius: 0 3px 3px 0; }
  .opalesate-recent-property .page-content .searchform .pbr-search .input-group-addon,
  .page-template-page-property-search-results .page-content .searchform .pbr-search .input-group-addon {
    background-color: #33cc33; }

.page-template-page-property-search-results #opalestate-search-form {
  margin-left: -15px;
  margin-right: -15px; }

.page-template-page-property-search-results .opalestate-search-properties {
  background-color: #FFF; }
  .page-template-page-property-search-results .opalestate-search-properties > .inner {
    background-color: #22355b; }
  .page-template-page-property-search-results .opalestate-search-properties .search-properies-form {
    box-shadow: none !important;
    margin-bottom: 0 !important; }

.page-template-page-property-search-results .site-main {
  background-color: #f6f6f6; }
  .page-template-page-property-search-results .site-main #main-container {
    padding-top: 40px;
    padding-bottom: 70px; }
    .page-template-page-property-search-results .site-main #main-container .pbr-pagination {
      display: block;
      text-align: center; }

.slider-property-featured .opalesate-recent-property .nothing-wrapper {
  background-color: #FFF;
  padding: 25px 30px 30px; }
  .slider-property-featured .opalesate-recent-property .nothing-wrapper .page-content .searchform .pbr-search input.form-control {
    border: 1px solid #eeeeee; }

.slider-property-featured.style-1 .vc_.col-sm-12, .slider-property-featured.style-2 .vc_.col-sm-12 {
  padding: 0; }

/******************************************
 * Ajax Map Search
 ******************************************/
.ajax-map-search {
  margin: 0 -15px;
  overflow: hidden; }
  .ajax-map-search .inner {
    background-color: #22355b; }
    .ajax-map-search .inner #opalestate-search-form {
      padding: 0; }
      .ajax-map-search .inner #opalestate-search-form .search-form-ajax {
        padding: 15px 0 0 0; }
  .ajax-map-search .advanced-fields {
    display: none; }
  .ajax-map-search > div.row.opal-row {
    position: relative;
    display: flex; }
    .ajax-map-search > div.row.opal-row #opalestate-map-preview {
      min-height: 100vh !important; }
    @media screen and (max-width: 1200px) {
      .ajax-map-search > div.row.opal-row > div:first-child {
        position: relative;
        height: auto; } }
    @media (max-width: 991px) {
      .ajax-map-search > div.row.opal-row {
        flex-direction: column; }
        .ajax-map-search > div.row.opal-row > div:first-child {
          order: 2; }
          .ajax-map-search > div.row.opal-row > div:first-child #opalestate-map-preview {
            min-height: 50vh !important;
            height: auto; }
        .ajax-map-search > div.row.opal-row > div:last-child {
          order: 1; } }
  @media (max-width: 1024px) {
    .ajax-map-search .search-properies-form {
      padding: 0 30px; } }

@media (max-width: 991px) {
  .ajax-search-form #opalestate-search-form {
    margin-bottom: 10px; } }

.ajax-search-form select.form-control {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer; }
  @media (max-width: 767px) {
    .ajax-search-form select.form-control {
      margin-bottom: 15px; } }

.opalestate-more-search-form {
  width: 100%; }
  .opalestate-more-search-form .opalestate-popup button {
    margin-top: 30px; }

#opalesate-properties-ajax {
  margin: 0 0 0 30px;
  position: relative;
  padding: 0 30px 0 0;
  border-right: 1px solid #eeeeee; }
  #opalesate-properties-ajax .opalestate-loading {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.8);
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("../images/loading.gif");
    width: 100%;
    height: 100%;
    z-index: 2; }
  #opalesate-properties-ajax .opalesate-archive-top {
    margin-top: 40px;
    margin-bottom: 35px; }
    #opalesate-properties-ajax .opalesate-archive-top:after {
      display: none; }

.opaleslate-ajax-search-results-container .opalestate-rows .map-active article {
  box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.12); }

#opalesate-properties-ajax .pbr-pagination {
  margin-bottom: 100px; }
  #opalesate-properties-ajax .pbr-pagination .pagination {
    margin: 0 auto; }
    #opalesate-properties-ajax .pbr-pagination .pagination li.active a {
      color: #FFF; }

/******************************************
 * Membership page
 ******************************************/
.membership-packages .row > div.first {
  clear: both; }

.property-submission-form {
  margin-bottom: 30px; }
  .property-submission-form .panel-body > h3 {
    margin: 0 0 10px; }
  @media (max-width: 767px) {
    .property-submission-form .panel-body {
      padding: 0; } }
  @media (max-width: 768px) {
    .property-submission-form.space-padding-lr-40.space-padding-tb-30 {
      padding: 0 10px !important; } }
  @media screen and (max-width: 479px) {
    .property-submission-form.space-padding-lr-40.space-padding-tb-30 {
      padding: 0 !important; } }

.entry-content-page .opalesate-form-wrapper {
  float: none;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .entry-content-page .opalesate-form-wrapper {
      width: 100%; } }

.opalmembership-button:hover {
  background-color: #33cc33 !important;
  color: #FFF !important; }

.opalmembership-login-form .opalmembership-button {
  margin-right: 10px; }

.cmb-row .cmb-td p,
.cmb-row .cmb-td span {
  line-height: 26px; }

.cmb-row.cmb2-id-opalestate-ppt-map .row > div .col-sm-12 {
  padding-left: 0;
  padding-right: 0; }

.cmb-row.cmb2-id-opalestate-ppt-public-facilities-group-0-opalestate-ppt-public-facilities-key {
  padding-right: 10px !important;
  border-bottom: none !important;
  padding-bottom: 0 !important; }

.cmb-row.cmb2-id-opalestate-ppt-public-facilities-group-0-opalestate-ppt-public-facilities-value {
  padding-left: 10px !important;
  border-bottom: none !important;
  padding-bottom: 0 !important; }

.cmb-row.cmb-remove-field-row .btn {
  font-weight: 400; }

.cmb-row .cmb-add-row .btn {
  font-weight: 400; }

.cmb2-wrap input[type="text"],
.cmb2-wrap input[type="email"],
.cmb2-wrap select {
  height: 40px;
  border: 1px solid #eeeeee;
  padding-left: 10px;
  padding-right: 10px;
  border-radius: 3px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }
  .cmb2-wrap input[type="text"]:hover,
  .cmb2-wrap input[type="email"]:hover,
  .cmb2-wrap select:hover {
    border-color: #33cc33; }

span.cmb2-metabox-description {
  display: block;
  margin-top: 10px; }

.cmb2-wrap textarea {
  border: 1px solid #eeeeee;
  padding-left: 10px !important;
  padding-right: 10px !important;
  border-radius: 3px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; }

.cmb2-wrap.form-table .cmb2-metabox .cmb-repeat-group-wrap:last-child {
  margin-bottom: 20px !important; }

.cmb2-wrap .cmb-row {
  margin-bottom: 10px !important; }
  .cmb2-wrap .cmb-row.cmb-remove-field-row, .cmb2-wrap .cmb-row.cmb-repeatable-grouping {
    margin-bottom: 20px !important; }

.cmb2-wrap ul {
  padding-left: 0;
  margin-top: 20px; }

.cmb-form input[type="submit"],
.cmb-form input[type="button"] {
  background: #33cc33;
  color: #FFF;
  border: 1px solid #33cc33;
  padding: 13px 20px;
  border-radius: 0;
  font-weight: 600;
  font-family: "Raleway", sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  line-height: 1; }
  .cmb-form input[type="submit"]:hover,
  .cmb-form input[type="button"]:hover {
    background: #2eb82e;
    border-color: #2eb82e; }
  .cmb-form input[type="submit"].btn-submit-cmb,
  .cmb-form input[type="button"].btn-submit-cmb {
    float: right;
    margin-top: -58px; }
    @media screen and (max-width: 479px) {
      .cmb-form input[type="submit"].btn-submit-cmb,
      .cmb-form input[type="button"].btn-submit-cmb {
        margin-top: 0; } }

.group-amenities {
  padding-left: 0;
  clear: both; }
  .group-amenities span {
    font-size: 12px; }
  .group-amenities .cmb2-list li {
    display: flex; }

.cmb2-element .ui-datepicker select.ui-datepicker-month,
.cmb2-element .ui-datepicker select.ui-datepicker-year {
  border: none; }

.panel .opalmembership-shoppingcart {
  margin: 0; }
  .panel .opalmembership-shoppingcart caption {
    padding-top: 0;
    font-family: "Raleway", sans-serif; }

#opalmembership-checkout-form .billing-fields > h3 {
  margin-top: 0;
  font-size: 24px; }

#opalmembership-checkout-form .opal-panel-heading > h3 {
  font-size: 24px; }

#opalmembership-checkout-form .opal-panel-body {
  margin-bottom: 15px; }

.my-favorite .panel {
  border: none;
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none; }
  .my-favorite .panel .panel-body {
    padding: 0; }

.my-favorite .searchform .pbr-search .form-control {
  width: 100% !important;
  padding: 5px 15px !important;
  position: static; }

.my-favorite .searchform .pbr-search .input-group-addon {
  background-color: #33cc33; }

.my-properties .list-tabs {
  margin-bottom: 15px;
  background-color: #FFF;
  padding: 0; }
  .my-properties .list-tabs ul {
    padding: 0;
    margin: 0; }
    .my-properties .list-tabs ul li {
      text-transform: uppercase;
      font-family: "Raleway", sans-serif;
      font-size: 12px;
      cursor: pointer;
      line-height: 55px;
      display: block;
      position: relative;
      -webkit-transition: 0.35s;
      -o-transition: 0.35s;
      transition: 0.35s;
      float: left; }
      .my-properties .list-tabs ul li a {
        display: block;
        padding: 0 20px; }
      .my-properties .list-tabs ul li.active, .my-properties .list-tabs ul li:hover {
        background-color: #33cc33;
        color: #FFF; }
        .my-properties .list-tabs ul li.active a, .my-properties .list-tabs ul li:hover a {
          color: #FFF; }
      .my-properties .list-tabs ul li:after {
        position: absolute;
        width: 0;
        height: 0;
        content: '';
        z-index: 2;
        border-opposite-position(bottom): 9px solid #1fc341;
        border-left: 6px solid transparent;
        border-right: 6px solid transparent;
        left: 50%;
        margin-left: -6px;
        -webkit-transition: 0.35s;
        -o-transition: 0.35s;
        transition: 0.35s;
        content: none; }
      .my-properties .list-tabs ul li.active:after {
        content: ""; }
      @media screen and (max-width: 479px) {
        .my-properties .list-tabs ul li {
          line-height: 30px;
          font-size: 10px; }
          .my-properties .list-tabs ul li a {
            padding: 0 10px; } }

.my-properties .panel-body {
  padding: 0; }
  .my-properties .panel-body .entry-content {
    display: block; }

.opalmembership-dashboard-container .panel-default {
  border-color: #eeeeee; }

.property-submission-form > h1 {
  margin-top: 0;
  font-size: 30px;
  margin-bottom: 30px; }
  @media (max-width: 768px) {
    .property-submission-form > h1 {
      font-size: 20px; } }

.property-submission-form .quicktags-toolbar input.button,
.property-submission-form .quicktags-toolbar input[type="submit"] {
  background: #f7f7f7;
  border: 1px solid #cccccc !important;
  color: #555;
  padding: 0 8px 1px; }

.cmb-form .quicktags-toolbar input[type="submit"],
.cmb-form .quicktags-toolbar input[type="button"] {
  border-radius: 3px;
  -webkit-box-shadow: 0 1px 0 #ccc;
  box-shadow: 0 1px 0 #ccc;
  font-weight: 400;
  font-family: "Roboto", sans-serif;
  margin: 2px !important;
  text-transform: none; }

.membership-history > h2,
.payment-detail > h2,
.payment-detail .panel-body > h2 {
  margin: 5px 0 20px;
  text-transform: uppercase;
  font-size: 30px; }

.membership-payment-info .panel-heading,
.membership-payment-address .panel-heading {
  margin-top: 0; }

.opalmembership-dashboard-container .panel-body > h3 {
  margin: 5px 0 10px;
  text-transform: uppercase; }

.opalmembership-dashboard-container .panel-body > ul > li {
  padding: 5px 0; }

.opalmembership-dashboard-container .membership-content > ul > li {
  padding: 5px 0; }

#user-profile-img {
  margin-bottom: 10px; }

/******************************************
 * Membership widget
 ******************************************/
.widget_opalestate_profile_info_widget .profile-top {
  margin-bottom: 15px; }

.widget_opalestate_profile_info_widget .nav-pills > li {
  margin-top: 0;
  border-top: 1px solid #eeeeee; }
  .widget_opalestate_profile_info_widget .nav-pills > li > a {
    padding-right: 0;
    padding-left: 0;
    border-radius: 0;
    font-size: 14px; }
    .widget_opalestate_profile_info_widget .nav-pills > li > a i {
      margin-right: 15px; }
    .widget_opalestate_profile_info_widget .nav-pills > li > a:hover {
      background-color: transparent; }
  .widget_opalestate_profile_info_widget .nav-pills > li:last-child > a {
    padding-bottom: 0; }
  .widget_opalestate_profile_info_widget .nav-pills > li:first-child {
    border-top: none; }
  .widget_opalestate_profile_info_widget .nav-pills > li.active a {
    background-color: transparent;
    color: #000; }
    .widget_opalestate_profile_info_widget .nav-pills > li.active a:hover {
      color: #33cc33; }

.widget_opalmembership_current_package ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .widget_opalmembership_current_package ul > li {
    border-top: 1px solid #eeeeee;
    padding: 10px 0;
    font-size: 14px;
    color: #000; }
    .widget_opalmembership_current_package ul > li:last-child {
      padding-bottom: 0; }
    .widget_opalmembership_current_package ul > li:first-child {
      border-top: none;
      padding-top: 0; }

.widget_opalmembership_quick_purchase .dropdown-menu-select {
  margin-bottom: 10px; }
  .widget_opalmembership_quick_purchase .dropdown-menu-select .btn {
    text-align: left;
    font-size: 14px;
    font-weight: 400;
    color: #FFF; }
    .widget_opalmembership_quick_purchase .dropdown-menu-select .btn .caret {
      position: absolute;
      right: 20px; }
  .widget_opalmembership_quick_purchase .dropdown-menu-select .dropdown-menu {
    border-radius: 3px;
    font-size: 14px;
    padding: 5px 0;
    width: 100%; }

/**
 *
 */
.metabox-fields-front .cmb-th {
  width: 30%; }

.metabox-fields-front .cmb-td {
  width: 69%; }

.entry-content-page .slider-search-transparent,
.entry-content-page .slider-agent-search {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: 1s;
  -o-transition: 1s;
  transition: 1s; }

.entry-content-page .slider-search-transparent-wrapper {
  position: absolute;
  left: 18%;
  width: 64%;
  z-index: 1;
  top: 330px; }
  .entry-content-page .slider-search-transparent-wrapper .slider-search-transparent {
    opacity: 1;
    filter: alpha(opacity=100); }
  .entry-content-page .slider-search-transparent-wrapper .search-properies-form {
    background-color: rgba(35, 51, 84, 0.6); }

.entry-content-page .slider-agent-search-wrapper {
  position: absolute;
  left: 18%;
  width: 64%;
  z-index: 1;
  top: 400px; }
  .entry-content-page .slider-agent-search-wrapper .slider-agent-search {
    opacity: 1;
    filter: alpha(opacity=100); }
  .entry-content-page .slider-agent-search-wrapper .opalestate-search-agents-form {
    background-color: transparent;
    padding-top: 0; }
    .entry-content-page .slider-agent-search-wrapper .opalestate-search-agents-form .search-agent-title {
      color: #FFF;
      margin-left: -15px;
      margin-bottom: 10px;
      display: block !important; }
    .entry-content-page .slider-agent-search-wrapper .opalestate-search-agents-form .row:last-child {
      background-color: #FFF;
      border-radius: 5px;
      padding: 15px 0; }

.expand-search {
  font-size: 20px;
  cursor: pointer;
  overflow: hidden; }
  .expand-search i {
    width: 70px;
    height: 74px;
    background-color: #33cc33;
    line-height: 74px;
    text-align: center;
    float: left;
    margin-right: 25px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .expand-search i:before {
      font-family: 'FontAwesome';
      content: "\f067"; }
  .expand-search span {
    line-height: 70px;
    font-weight: 600; }
  @media (max-width: 480px) {
    .expand-search {
      font-size: 18px; } }

.expand-search-wrapper .opalestate-search-properties {
  width: 100%;
  padding: 0 15px;
  left: 0;
  top: 100%;
  z-index: 10;
  height: 0;
  position: absolute;
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: hidden;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

.expand-search-wrapper.active .opalestate-search-properties {
  height: auto;
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible; }

.expand-search-wrapper.active .expand-search i:before {
  content: "\f068"; }

.opalesate-properties-slider .owl-carousel .owl-item .item {
  padding: 0; }

.opalesate-properties-slider article .entry-content-wrapper {
  background-color: rgba(255, 255, 255, 0.8);
  border: none;
  position: absolute;
  width: 500px;
  left: 26%;
  top: 50%;
  -webkit-transform: translate(-26%, -50%);
  -ms-transform: translate(-26%, -50%);
  -o-transform: translate(-26%, -50%);
  transform: translate(-26%, -50%); }
  @media (max-width: 767px) {
    .opalesate-properties-slider article .entry-content-wrapper {
      width: 400px; } }
  @media (max-width: 480px) {
    .opalesate-properties-slider article .entry-content-wrapper {
      width: 300px; }
      .opalesate-properties-slider article .entry-content-wrapper .entry-summary,
      .opalesate-properties-slider article .entry-content-wrapper .entry-content-bottom {
        display: none; } }
  @media screen and (max-width: 479px) {
    .opalesate-properties-slider article .entry-content-wrapper {
      width: 250px;
      top: 55%;
      left: 32%; }
      .opalesate-properties-slider article .entry-content-wrapper .entry-content {
        padding: 15px 20px 0; }
      .opalesate-properties-slider article .entry-content-wrapper .property-meta-list {
        padding: 0 15px 5px; }
      .opalesate-properties-slider article .entry-content-wrapper .property-price {
        padding: 0 20px; }
      .opalesate-properties-slider article .entry-content-wrapper .entry-title {
        font-size: 14px;
        margin-bottom: 0; } }

.opalesate-properties-slider article .property-price {
  position: static;
  color: #FFF;
  background-color: #33cc33;
  padding: 5px 30px; }

.opalesate-properties-slider article .entry-content-bottom {
  padding: 15px 30px; }
  @media (max-width: 767px) {
    .opalesate-properties-slider article .entry-content-bottom {
      padding-top: 0;
      border-top: none; } }

.opalesate-properties-slider article .property-meta-list {
  padding: 15px 25px;
  background-color: transparent; }
  .opalesate-properties-slider article .property-meta-list > li .label-property {
    color: #000; }

.opalesate-properties-slider article .entry-content {
  padding: 25px 30px 0;
  background-color: transparent; }

.opalesate-properties-slider article .property-group-label {
  right: 0;
  top: -25px; }
  .opalesate-properties-slider article .property-group-label div.property-label {
    display: none; }

.opalesate-properties-slider article i.property-toggle-favorite {
  color: #000; }
  .opalesate-properties-slider article i.property-toggle-favorite:hover {
    cursor: pointer; }

.opalesate-properties-slider article .author-link .avatar {
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); }

.opalesate-properties-slider article .property-box-image-inner {
  pointer-events: none;
  cursor: normal; }

.opalesate-properties-slider .carousel-controls {
  position: static; }

.opalesate-properties-slider .carousel-control {
  position: absolute;
  width: 50px;
  height: 50px;
  line-height: 50px;
  margin-top: -25px;
  font-size: 16px; }
  @media screen and (max-width: 479px) {
    .opalesate-properties-slider .carousel-control {
      width: 30px;
      height: 30px;
      line-height: 30px;
      margin-top: -15px;
      font-size: 12px; } }

#sync2 .owl-controls {
  display: block !important;
  margin-top: 10px; }

#sync2 img {
  width: 100%; }

.space-margin-bottom-30p #opalestate-search-agents-form {
  border: 1px solid #eeeeee;
  border-radius: 0;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }

.featured-listing {
  padding: 90px 0;
  background-color: #f3f3f3; }

.featured-listing--white {
  background-color: #ffffff; }

.featured-listing__container {
  margin-bottom: 30px; }

@media only screen and (min-width: 992px) {
  .featured-listing__container {
    margin-bottom: 0; } }

.tabs_featured input {
  position: absolute;
  z-index: 1000;
  width: 120px;
  height: 40px;
  left: 0;
  top: 0;
  opacity: 0;
  cursor: pointer; }

.tabs_featured .tabs label:first-of-type {
  z-index: 3; }

/*Property / .property
***********************/
.single-opalestate_property .agents-single__inner {
  display: flex;
  flex-wrap: wrap; }
  .single-opalestate_property .agents-single__inner .agent-preview img {
    max-width: 250px;
    padding-right: 30px; }
  .single-opalestate_property .agents-single__inner .agent-box-meta {
    margin-bottom: 30px; }

.single-property-breadcrumb .breadcrumb {
  margin-bottom: 0; }

.property__header {
  padding: 30px 0; }

.property__header--v3 {
  padding: 0 0 45px; }

.property__title--b-margin {
  margin-bottom: 20px; }

.property__price--b-margin {
  margin-bottom: 25px; }

.property__meta {
  display: flex;
  align-items: center;
  margin-bottom: 10px; }

.property__type {
  display: inline-block;
  color: #1fc341;
  font-size: 11px;
  text-transform: uppercase;
  margin-right: 5px; }

.property__name {
  margin-bottom: 8px;
  font-size: 30px;
  line-height: 40px;
  margin-top: 0;
  max-width: 420px; }

.property__address {
  color: #888888; }

.property__address-icon {
  margin-right: 5px;
  font-size: 16px; }

.property__stat {
  display: inline-block;
  margin-right: 20px;
  color: #888888;
  font-size: 12px;
  text-transform: uppercase; }

.property__stat:last-child {
  margin-right: 0; }

.property__figure {
  display: block;
  margin-bottom: -2px;
  color: #333333;
  font-size: 24px; }

.property__price-primary .property-price {
  margin-bottom: 2px;
  color: #1fc341;
  font-family: 'Roboto', Helvetica, Arial, sans-serif;
  font-size: 24px;
  font-weight: 700; }

.property__price-secondary {
  color: #888888; }

.property__list {
  display: flex;
  align-items: center;
  padding-left: 0; }
  .property__list .property__item {
    display: inline-block;
    margin-right: 10px;
    text-align: center; }
    .property__list .property__item ul {
      list-style-type: none;
      padding-left: 0;
      background: transparent;
      border: none;
      box-shadow: none; }
    .property__list .property__item .drop-share {
      background: transparent;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      z-index: 1;
      min-width: 240px;
      text-align: center; }
      .property__list .property__item .drop-share li {
        display: inline-block; }
        .property__list .property__item .drop-share li a {
          display: inline-block;
          width: 30px;
          height: 30px;
          line-height: 30px;
          border-radius: 50%;
          background: #33cc33;
          color: #FFF;
          font-size: 14px;
          margin: 0 5px;
          text-align: center;
          transition: all .3s;
          border: 1px solid transparent; }
          .property__list .property__item .drop-share li a:hover {
            background-color: #2eb82e;
            border-color: #ddd; }

.property__item.dropdown-share {
  position: relative; }
  .property__item.dropdown-share .drop-share {
    top: -60px; }
    @media (max-width: 1240px) {
      .property__item.dropdown-share .drop-share {
        left: auto;
        right: -15px;
        transform: translate(0); } }
    @media (max-width: 767px) {
      .property__item.dropdown-share .drop-share {
        top: -5px;
        left: 55px;
        right: 0; } }
    @media (max-width: 500px) {
      .property__item.dropdown-share .drop-share {
        top: 60px;
        left: 0;
        right: auto;
        transform: translateX(-29%); } }

@media only screen and (min-width: 1200px) {
  .property__item {
    margin-right: 30px; } }

.property__item:last-child {
  margin-right: 0; }

.property__item-desc {
  display: inline-block;
  text-align: center;
  color: #999999; }

.property__link {
  display: flex;
  flex-direction: column;
  align-items: center; }

.property__icon,
.property-toggle-favorite {
  font-size: 18px;
  width: 50px;
  height: 50px;
  margin-bottom: 5px;
  border-radius: 50%;
  background-color: #22355b;
  color: #ffffff;
  line-height: 50px !important;
  text-align: center; }

.property__main {
  padding-left: 0;
  list-style-type: none; }

@media only screen and (min-width: 992px) {
  .property__main {
    display: flex;
    align-items: center; } }

.property__main-item {
  position: relative;
  margin-bottom: 10px; }
  .property__main-item .property-status,
  .property__main-item .property__stats {
    padding-left: 0; }

@media only screen and (min-width: 992px) {
  .property__main-item {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 20px;
    padding-right: 20px; }
  .property__main-item:after {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "";
    width: 1px;
    height: 80px;
    background-color: #dddddd; }
  .property__main-item:last-child {
    padding-right: 0;
    margin-right: 0; }
  .property__main-item:last-child:after {
    display: none; } }

@media only screen and (min-width: 1200px) {
  .property__main-item {
    margin-right: 50px;
    padding-right: 50px; } }

@media only screen and (min-width: 768px) {
  .property__header-container {
    display: flex;
    justify-content: space-between;
    align-items: center; } }

.property__container {
  padding-bottom: 20px;
  background-color: #f6f6f6; }

.property__container .widget {
  transition: 0.3s all ease-out; }

.property__container .widget:hover {
  box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15); }

.property__feature-container {
  padding: 0; }

.single-opalestate_property .property__feature-container {
  padding-top: 50px; }

.property__feature {
  overflow: hidden; }
  .property__feature .box-info {
    overflow: hidden; }
  .property__feature .fluid-width-video-wrapper {
    padding-bottom: 30px; }

.widget__container {
  padding-top: 50px; }
  .widget__container #linkfeatured-author {
    margin-bottom: 60px; }
    .widget__container #linkfeatured-author .contact-form__header .team-header {
      max-width: 70px;
      margin-bottom: 0; }
      .widget__container #linkfeatured-author .contact-form__header .team-header img {
        width: 100%;
        height: auto;
        border-radius: 50%; }
      .widget__container #linkfeatured-author .contact-form__header .team-header .agent-levels {
        display: none; }
    .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box {
      display: flex;
      align-items: center; }
      .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row {
        margin: 0; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .col-sm-6 {
          padding: 0;
          margin-right: 10px; }
          .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .col-sm-6:first-child {
            max-width: 60px; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-box-title {
          font-size: 18px; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-job {
          color: #888888;
          font-size: 12px;
          text-transform: capitalize;
          margin-bottom: 0; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-box-email {
          display: none; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-box-phone a {
          color: #666666;
          font-size: 13px;
          transition: all .3s; }
          .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-box-phone a:hover {
            color: #33cc33; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .agent-box-phone .fa {
          display: none; }
        .widget__container #linkfeatured-author .contact-form__header .property-agent-contact .agent-box.row .agent-box-meta .bo-social-icons {
          display: none; }
    .widget__container #linkfeatured-author .contact-info p {
      padding: 0;
      margin: 0; }
    .widget__container #linkfeatured-author .contact-info .agent-job {
      color: #888888;
      font-size: 12px;
      text-transform: capitalize; }
    .widget__container #linkfeatured-author .contact-info .agent-box-title {
      font-size: 18px; }
      .widget__container #linkfeatured-author .contact-info .agent-box-title a {
        color: #333333;
        transition: 0.3s color ease-out; }
        .widget__container #linkfeatured-author .contact-info .agent-box-title a:hover {
          color: #33cc33; }
    .widget__container #linkfeatured-author .contact-info .agents-single__contact {
      margin-bottom: 0; }
      .widget__container #linkfeatured-author .contact-info .agents-single__contact .agent-box-phone {
        color: #333333;
        font-size: 13px;
        text-transform: uppercase;
        transition: 0.3s color ease-out; }
    .widget__container #linkfeatured-author .opalestate-contact-form .form-group {
      margin-bottom: 10px; }
      .widget__container #linkfeatured-author .opalestate-contact-form .form-group textarea {
        min-height: 130px;
        margin-bottom: 20px; }
    .widget__container #linkfeatured-author .opalestate-contact-form .btn {
      text-transform: uppercase;
      font-size: 13px;
      font-weight: 500;
      font-family: "Roboto", sans-serif; }

.single-opalestate_property #linkfeatured-author .entry-content {
  display: none; }

.single-opalestate_property #linkfeatured-author .contact-form__header-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap; }
  .single-opalestate_property #linkfeatured-author .contact-form__header-container .team-header {
    margin-top: 0;
    margin-bottom: 5px; }
    .single-opalestate_property #linkfeatured-author .contact-form__header-container .team-header .property-label {
      border: none;
      top: 27px;
      right: 18px;
      position: absolute;
      left: auto; }
      .single-opalestate_property #linkfeatured-author .contact-form__header-container .team-header .property-label .fa {
        color: #ff9d00;
        position: relative;
        bottom: auto;
        top: auto;
        right: 0; }
  .single-opalestate_property #linkfeatured-author .contact-form__header-container .contact-info {
    margin-bottom: 5px; }

.property__feature {
  margin-bottom: 30px;
  padding: 15px 20px;
  background-color: #ffffff;
  transition: 0.5s box-shadow ease-out; }
  .property__feature .container {
    width: 100%; }

.property__feature:hover {
  box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.15); }

@media only screen and (min-width: 768px) {
  .property__feature {
    padding: 25px 40px; } }

.property__feature p {
  color: #666666; }

.property__feature-title {
  font-size: 20px;
  padding-bottom: 10px; }

.property__feature-title--b-spacing {
  margin-bottom: 25px;
  border-bottom: 1px solid #eeeeee; }

.property__feature-schedule {
  margin-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .property__feature-schedule {
    display: flex;
    justify-content: space-between;
    align-items: center; } }

.property__feature-cta {
  display: inline-block;
  padding: 10px 42px;
  background-color: #22355b;
  color: #ffffff;
  border-radius: 4px;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .property__feature-cta {
    flex-shrink: 0; } }

.property__feature-time-list {
  margin-bottom: 10px;
  padding-left: 0; }

@media only screen and (min-width: 768px) {
  .property__feature-time-list {
    margin-bottom: 0; } }

.property__feature-time-item {
  display: inline-block;
  margin-right: 10px;
  color: #666666; }

.property__feature-open-maps {
  color: #1fc341; }

@media only screen and (min-width: 768px) {
  .property__details-list {
    columns: 2;
    column-gap: 40px; } }

.property__details-list {
  padding-left: 0;
  list-style-type: none; }

.property__details-item {
  position: relative;
  color: #666666;
  margin-bottom: 5px;
  padding-left: 20px; }

.property__details-item:before {
  position: absolute;
  left: 0;
  top: 5px;
  display: inline-block;
  content: "\f042";
  font-family: "FontAwesome";
  font-size: 8px; }

.property__details-item--cat {
  color: #333333;
  font-weight: 500; }

.property__features-list {
  list-style-type: none;
  padding-left: 0; }

@media only screen and (min-width: 30em) {
  .property__features-list {
    columns: 2;
    column-gap: 10px; } }

@media only screen and (min-width: 768px) {
  .property__features-list {
    columns: 3;
    column-gap: 20px; } }

.property__features-item {
  margin-bottom: 10px;
  color: #666666; }

.property__features-icon {
  display: inline-block;
  margin-right: 10px;
  color: #333333; }

.property__accordion-header {
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #eeeeee;
  background-color: #f6f6f6;
  cursor: pointer; }

@media only screen and (min-width: 768px) {
  .property__accordion-header {
    padding: 15px 20px; } }

@media only screen and (min-width: 992px) {
  .property__accordion-header {
    align-items: center; } }

@media only screen and (min-width: 992px) {
  .property__accordion-textcontent {
    display: flex;
    justify-content: space-between;
    align-items: center; } }

.property__accordion-title {
  color: #333333;
  font-size: 16px;
  font-weight: 500; }

@media only screen and (min-width: 992px) {
  .property__accordion-title {
    min-width: 150px; } }

.property__accordion-figure {
  position: relative;
  color: #666666; }

@media only screen and (min-width: 768px) {
  .property__accordion-figure {
    display: inline-block;
    margin-right: 15px;
    padding-right: 15px; }
  .property__accordion-figure:last-child {
    margin-right: 0;
    padding-right: 0; }
  .property__accordion-figure:after {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "\f111";
    font-family: "FontAwesome";
    font-size: 5px; }
  .property__accordion-figure:last-child:after {
    display: none; } }

.property__accordion-figure--cat {
  color: #333333;
  font-weight: 500; }

.property__accordion-expand {
  color: #888888; }

.property__accordion-content {
  display: none;
  text-align: center; }

.property__accordion-content--active {
  display: block; }

@media only screen and (min-width: 992px) {
  .property__feature-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #eeeeee; } }

.property__tab {
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 10px;
  color: #666666;
  transition: 0.3s all ease-out;
  padding-bottom: 5px;
  border-bottom: 3px solid transparent; }

.property__tab:hover {
  color: #333333;
  border-bottom: 3px solid #1fc341; }

.property__tab--active {
  color: #333333;
  border-bottom: 3px solid #1fc341; }

@media only screen and (min-width: 992px) {
  .property__tab {
    margin: 0 0 0 15px;
    padding-bottom: 10px; } }

.property__tab-container {
  overflow-x: auto; }

.property__tab-content {
  display: none;
  margin: 5px 0 0;
  border: 0;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: auto;
  width: 100%; }

@media only screen and (min-width: 992px) {
  .property__tab-content {
    margin: 15px 0 0; } }

.property__tab-content td,
.property__tab-content th {
  border: 0;
  border-bottom: 1px solid #eeeeee;
  min-width: 150px; }

.property__tab-content td {
  color: #333333;
  padding: 15px 0; }

.property__tab-content th {
  padding: 5px 0;
  color: #666666;
  font-weight: 400; }

.property__tab-content.is-visible {
  display: table; }

.list-number {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 15px;
  border-radius: 50%;
  background-color: #adadad;
  color: #ffffff;
  text-align: center;
  line-height: 30px; }

.property__form-field {
  margin-bottom: 20px;
  border: 1px solid #eeeeee;
  color: #666666; }

.property__form-field:focus {
  border-color: #1fc341; }

.property__form-field::placeholder {
  color: #666666; }

.property__form-wrapper {
  position: relative; }

.property__form-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: #adadad;
  font-size: 18px; }

.property__form-submit {
  max-width: 250px;
  background: #1fc341;
  color: #ffffff;
  text-align: center;
  text-transform: uppercase;
  border: 0;
  border-radius: 4px;
  font-family: 'Roboto', Helvetica, Arial, sans-serif;
  font-weight: 500;
  cursor: pointer; }

.contact-company {
  color: #888888;
  font-size: 12px; }

.contact-name {
  font-size: 18px; }

.contact-name a {
  color: #333333;
  transition: 0.3s color ease-out; }

.contact-name a:hover {
  color: #1fc341; }

.contact-number {
  color: #333333;
  font-size: 13px;
  text-transform: uppercase;
  transition: 0.3s color ease-out; }

.contact-number:hover {
  color: #1fc341; }

.similar-home {
  position: relative;
  margin-bottom: 20px; }

div.similar-home:last-of-type {
  margin-bottom: 0; }

.similar-home__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(90deg, #222222 0%, rgba(34, 34, 34, 0) 100%);
  background: -moz-linear-gradient(90deg, #222222 0%, rgba(34, 34, 34, 0) 100%);
  background: -o-linear-gradient(90deg, #222222 0%, rgba(34, 34, 34, 0) 100%);
  background: -ms-linear-gradient(90deg, #222222 0%, rgba(34, 34, 34, 0) 100%);
  background: linear-gradient(0deg, #222222 0%, rgba(34, 34, 34, 0) 100%); }

.similar-home__favorite {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  background-color: rgba(255, 255, 255, 0.93);
  border-radius: 50%;
  text-align: center;
  cursor: pointer; }

.similar-home__favorite .fa {
  color: #bbbbbb;
  font-size: 12px; }

.similar-home__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 10px 5px; }

.similar-home__title {
  color: #ffffff;
  font-size: 15px;
  transition: 0.3s color ease-out; }

.similar-home__price {
  color: #1fc341; }

@media only screen and (min-width: 1200px) {
  .form-calculator__wrapper {
    display: flex;
    justify-content: space-between; } }

.form-calculator__group {
  position: relative;
  margin-bottom: 10px;
  padding: 10px 15px;
  border: 1px solid #eeeeee;
  border-radius: 4px; }

.form-calculator__group .ht-field {
  margin-bottom: 0; }

@media only screen and (min-width: 1200px) {
  .form-calculator__group--larger {
    width: 57%; } }

@media only screen and (min-width: 1200px) {
  .form-calculator__group--smaller {
    width: 40%; } }

.form-calculator__label {
  color: #999999;
  font-size: 12px; }

.form-calculator__icon {
  position: absolute;
  bottom: 18px;
  color: #999999;
  font-size: 16px; }

.form-calculator__field {
  color: #333333; }

.form-calculator__percent {
  right: 20px; }

.form-calculator__currency {
  left: 20px; }

.form-calculator__submit {
  background-color: #1fc341;
  color: #ffffff;
  font-family: 'Roboto', Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer; }

.form-calculator__result {
  display: none;
  margin-top: 10px; }

.mortgage-payment {
  font-size: 16px;
  line-height: 1.5; }

.mortgage-payment span {
  color: #666666; }

.property__slider {
  margin-bottom: 50px; }

.property__slider-images .video-wrapper {
  position: relative; }
  .property__slider-images .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.property__slider--v2 {
  margin-bottom: 30px; }

@media only screen and (min-width: 1200px) {
  .property__slider-container--vertical {
    display: flex; } }

.property__slider-main {
  position: relative; }

.property__slider-main:hover .image-navigation li {
  opacity: 1;
  visibility: visible; }

.image-navigation {
  list-style-type: none; }

.image-navigation li {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s all ease-out;
  padding-left: 0; }

.image-navigation li.image-navigation__prev {
  left: 0; }

.image-navigation li.image-navigation__next {
  right: 0;
  text-align: right; }

.image-navigation li span {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-color: rgba(0, 0, 0, 0.8);
  color: #ffffff;
  line-height: 30px;
  font-size: 18px;
  text-align: center;
  cursor: pointer; }

@media only screen and (min-width: 768px) {
  .image-navigation li span {
    width: 60px;
    height: 60px;
    font-size: 24px;
    line-height: 60px; } }

@media only screen and (min-width: 1200px) {
  .property__slider-main--vertical {
    width: 88%; } }

.slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  color: transparent;
  background-color: transparent;
  width: 60px;
  padding: 0;
  z-index: 9; }
  .slick-arrow.slick-prev {
    left: 0; }
    .slick-arrow.slick-prev:after {
      content: "\f3d2";
      font-family: Ionicons;
      font-size: 24px;
      width: 60px;
      height: 60px;
      line-height: 60px;
      background-color: rgba(0, 0, 0, 0.8);
      color: #ffffff;
      display: inline-block;
      opacity: 0;
      visibility: hidden;
      transition: .3s all ease-out; }
      .slick-arrow.slick-prev:after:hover {
        opacity: 1;
        visibility: visible; }
  .slick-arrow.slick-next {
    right: 0; }
    .slick-arrow.slick-next:after {
      content: "\f3d3";
      font-family: Ionicons;
      font-size: 24px;
      width: 60px;
      height: 60px;
      line-height: 60px;
      background-color: rgba(0, 0, 0, 0.8);
      color: #ffffff;
      display: inline-block;
      opacity: 0;
      visibility: hidden;
      transition: .3s all ease-out; }
      .slick-arrow.slick-next:after:hover {
        opacity: 1;
        visibility: visible; }

.slid-slick:hover .slick-prev:after {
  opacity: 1;
  visibility: visible; }

.slid-slick:hover .slick-next:after {
  opacity: 1;
  visibility: visible; }

.property__slider-info {
  display: inline-block;
  position: absolute;
  bottom: 20px;
  left: 20px;
  padding: 3px 15px;
  background-color: rgba(0, 0, 0, 0.8);
  color: #ffffff;
  border-radius: 4px;
  font-size: 13px;
  text-align: center; }

.property__slider-info i {
  display: inline-block;
  font-size: 16px;
  margin-right: 5px; }

.property__slider-info .sliderInfo {
  display: inline-block;
  font-size: 13px; }

.property__slider-nav {
  position: relative;
  padding: 20px 25px; }

@media only screen and (min-width: 768px) {
  .property__slider-nav {
    padding: 30px 30px; } }

.property__slider-nav .slick-slide {
  margin: 0 5px;
  border: 2px solid transparent; }

.property__slider-nav .slick-current {
  border-color: #1fc341; }

.property__slider-nav .slick-arrow {
  color: #888888;
  font-size: 16px;
  cursor: pointer; }

.property__slider-nav .slick-arrow:hover {
  color: #1fc341; }

.property__slider-nav .slick-disabled,
.property__slider-nav .slick-disabled:hover {
  color: #e5e5e5; }

.property__slider-nav .slick-horizontal-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.property__slider-nav .slick-horizontal-prev-arrow {
  left: 10px; }

.property__slider-nav .slick-horizontal-next-arrow {
  right: 10px;
  text-align: right; }

.property__slider-nav .slick-vertical-arrow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%); }

.property__slider-nav .slick-vertical-prev-arrow {
  top: 5px;
  text-align: center; }

.property__slider-nav .slick-vertical-next-arrow {
  bottom: 5px;
  top: auto;
  text-align: center; }

.property__slider-nav--vertical {
  background-color: #f3f3f3; }

@media only screen and (min-width: 1200px) {
  .property__slider-nav--vertical {
    width: 12%; } }

@media only screen and (min-width: 1200px) {
  .property__slider-nav--vertical .slick-slide {
    margin: 4px 0; } }

.property__slider-nav--horizontal {
  background-color: #ffffff; }

@media only screen and (min-width: 768px) {
  .property__slider-nav--horizontal {
    padding: 20px 25px; } }

.property__slider-item:hover {
  cursor: pointer; }

.property__placeholder {
  position: relative;
  min-height: 600px;
  background-image: url("../images/uploads/single_property.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center; }

.property__controls {
  position: relative;
  z-index: 10;
  top: 30px;
  display: flex;
  justify-content: flex-end; }

.property__control {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.65);
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.35);
  line-height: 30px;
  text-align: center;
  cursor: pointer;
  transition: 0.3s all ease-out; }

.property__control:last-child {
  margin-right: 0; }

@media only screen and (min-width: 768px) {
  .property__control {
    width: 45px;
    height: 45px;
    line-height: 45px; } }

.property__control:hover {
  background-color: #1fc341; }

.property__control--active {
  background-color: #1fc341; }

.property__control-icon {
  display: block;
  color: #ffffff;
  font-size: 16px; }

@media only screen and (min-width: 768px) {
  .property__control-icon {
    font-size: 24px; } }

#property-map {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%; }

.property__map {
  visibility: hidden;
  opacity: 0;
  z-index: -1; }

.property__map--visible {
  visibility: visible;
  opacity: 1;
  z-index: 5; }

/*================= Map =============== */
.gm-iv-address {
  height: auto;
  margin-top: 0; }
  .gm-iv-address .gm-iv-address-description {
    padding-right: 60px; }

/*========================= tax-opalestate_location ==================*/
.tax-opalestate_location .site-main {
  background-color: #F6F6F6; }
  .tax-opalestate_location .site-main .property-list {
    margin-bottom: 0; }

.author .agent-box.row {
  display: flex; }
  .author .agent-box.row .agent-box-image {
    max-width: 200px; }

.noUi-target, .noUi-target * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.noUi-target {
  position: relative;
  direction: ltr; }

.noUi-base {
  width: 100%;
  height: 100%;
  position: relative;
  background-color: #999999;
  border-radius: 3px; }

.noUi-origin {
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0; }

.noUi-handle {
  position: relative;
  z-index: 1; }

.noUi-stacking .noUi-handle {
  z-index: 10; }

.noUi-state-tap .noUi-origin {
  -webkit-transition: left .3s, top .3s;
  transition: left .3s, top .3s; }

.noUi-state-drag * {
  cursor: inherit !important; }

.noUi-base {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.noUi-horizontal {
  height: 6px;
  border-radius: 3px; }
  .noUi-horizontal .noUi-base .noUi-origin .noUi-handle {
    margin-left: -18px; }
  .noUi-horizontal .noUi-base .noUi-origin:first-child .noUi-handle {
    margin-left: 0px; }

.noUi-horizontal .noUi-handle {
  height: 18px;
  width: 18px;
  left: 0px;
  top: -6px; }
  .noUi-horizontal .noUi-handle.noUi-handle-upper {
    margin-left: -18px; }

.noUi-vertical {
  width: 18px; }

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  left: -6px;
  top: -17px; }

.noUi-background {
  background: #dadada;
  border-radius: 3px; }

.noUi-connect {
  background: #33cc33;
  border-radius: 3px; }

.noUi-origin {
  background-color: #33cc33; }
  .noUi-origin:last-child {
    background-color: #999; }

.noUi-dragable {
  cursor: w-resize; }

.noUi-vertical .noUi-dragable {
  cursor: n-resize; }

.noUi-handle {
  border-radius: 50%;
  background: #33cc33;
  border: 3px solid #fff;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  cursor: default; }

.noUi-active {
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB; }

[disabled] .noUi-connect, [disabled].noUi-connect {
  background: #B8B8B8; }

[disabled] .noUi-handle {
  cursor: not-allowed; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BhbGVzdGF0ZS5jc3MiLCJzb3VyY2VzIjpbIm9wYWxlc3RhdGUuc2NzcyIsImJvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCJib290c3RyYXAvX21peGlucy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsImJvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJjb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy92YXJzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvdmFycy9fbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX2VsZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL3ZhcnMvX3dpZGdldC5zY3NzIiwiY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fcnRsLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fZnVuY3Rpb25zLnNjc3MiLCJjb21wb25lbnRzL21peGlucy9fdGVtcGxhdGUtbWl4aW5zLnNjc3MiLCJvcGFsZXN0YXRlL19zdHlsZXMuc2NzcyIsIm9wYWxlc3RhdGUvXzNyZC5zY3NzIiwib3BhbGVzdGF0ZS9fbWFuYWdlbWVudC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5UaGlzIHRoZW1lLCBsaWtlIFdvcmRQcmVzcywgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEdQTC5cblVzZSBpdCB0byBtYWtlIHNvbWV0aGluZyBjb29sLCBoYXZlIGZ1biwgYW5kIHNoYXJlIHdoYXQgeW91J3ZlIGxlYXJuZWQgd2l0aCBvdGhlcnMuXG4qL1xuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJvcGFsZXN0YXRlL3N0eWxlc1wiO1xuQGltcG9ydCBcIm9wYWxlc3RhdGUvM3JkXCI7XG5AaW1wb3J0IFwib3BhbGVzdGF0ZS9tYW5hZ2VtZW50XCI7IiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlICAgICAgIDogIzY2NjY2NjtcbiRsaWdodC1ncmF5ICAgICAgOiBsaWdodGVuKCMwMDAwMDAsIDYwJSkgIWRlZmF1bHQ7ICAgICAgICAvLyAjOTk5OTk5XG4kdmVyeS1saWdodC1ncmF5IDogI2ZhZmFmYSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgLy8gI2ZhZmFmYVxuJHZlcnktZGFyay1ncmF5ICA6IGxpZ2h0ZW4oIzAwMDAwMCwgOSUpICFkZWZhdWx0OyAgICAgICAgIC8vICMxNzE3MTcgXG4kZ3JheS1kYXJrZXIgICAgIDogIzMzMzMzMyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgLy8gIzMzMzMzM1xuJGdyYXktZGFyayAgICAgICA6ICMzMzMzMzMgIWRlZmF1bHQ7ICAgICAgICAgICBcdFx0XHQgIC8vICMzMzMzMzNcbiRncmF5ICAgICAgICAgICAgOiBsaWdodGVuKCMwMDAsIDMzLjUlKSAhZGVmYXVsdDsgICAgICAgICAvLyAjNTU1NTU1XG4kZ3JheS1saWdodCAgICAgIDogbGlnaHRlbigjMDAwLCA0Ni43JSkgIWRlZmF1bHQ7ICAgICAgICAgLy8gIzc3Nzc3N1xuJGdyYXktbGlnaHRlciAgICA6IGxpZ2h0ZW4oIzAwMCwgOTMuNSUpICFkZWZhdWx0OyAgICAgICAgIC8vICNlZWVlZWVcblxuJGJyYW5kLXByaW1hcnkgICA6ICMxZmMzNDEgIWRlZmF1bHQ7XG4kYnJhbmQtc3VjY2VzcyAgIDogIzhhYzg0MiAhZGVmYXVsdDtcbiRicmFuZC1pbmZvICAgICAgOiAjMDdhNWRiICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmcgICA6ICNmYWJkNDcgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyICAgIDogI2VmMTE0YyAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZmZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnUmFsZXdheScsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAnUmFsZXdheScsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICdSb2JvdG8nLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuJGZvbnQtc2l6ZS1tZDogICAgICAgICBcdCAgMTJweCAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC13ZWlnaHQtYmFzZVx0OiA0MDAgIWRlZmF1bHQ7XG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA3MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICRncmF5LWRhcmtlciAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbWQtdmVydGljYWw6ICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1tZC1ob3Jpem9udGFsOiAgICAgMjBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgMjBweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICA0cHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6XHRcdFx0XHQ1MDAgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5Olx0XHRcdFx0JGhlYWRpbmdzLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbiRidG4td2hpdGUtY29sb3I6ICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLWJnOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1ib3JkZXI6ICAgICAgICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwuMikgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDAlKSAhZGVmYXVsdDtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICMzMzMzMzMgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNlZWVlZWUgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAjYWNhY2FjICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgKGNlaWwoJGZvbnQtc2l6ZS1sYXJnZSAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBjdXJzb3IgZm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnMuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuXG4vLz09IERyb3Bkb3duc1xuLy9cbi8vIyMgRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYCAqKmZvciBJRTgqKi5cbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkZ3JheS1kYXJrLCA1JSkgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIERlcHJlY2F0ZWQgYCRkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG5cbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuLy9cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICgoNzUwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICgoOTcwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKCgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjOGFjODQyICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgIzFiYmM5YiAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjNTZiMGVlICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2I1M2YgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2ZmNzg3NyAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAyMHB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMCAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI0ZGRiAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDkwcHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDBweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgIzg4ODg4OCAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgIzMzMzMzMyAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIlxcZjEwNVwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKHdpbGwgYmUgcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgLy8gSUU4IGZpbHRlclxuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gIC8vIFdlYktpdFxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBUZXh0IG92ZXJmbG93XG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgd2lsbCBiZSByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KXtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIi8vIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIFBhbmVsc1xuXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogIzFmYzM0MSkge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMsJjpob3ZlciwmOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWZjMzQxO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLypcbiAqIEdsb2JhbCB2YXJpYWJsZXNcbiAqL1xuQGltcG9ydCBcIi4uL2Jvb3RzdHJhcC92YXJpYWJsZXNcIjtcblxuJGltYWdlLXRoZW1lLXBhdGggICAgICAgICAgICAgICAgOiAnLi4vaW1hZ2VzLycgIWRlZmF1bHQ7XG4kaW1hZ2UtdGhlbWUtc2tpbiAgICAgICAgICAgICAgICA6ICcuLi9pbWFnZXMvJyAhZGVmYXVsdDtcbi8vIHN0YW5kYXJkIGNvbG9yc1xuJHdoaXRlXHRcdCAgICA6ICNGRkYgIWRlZmF1bHQ7XG4kYmxhY2tcdFx0XHQ6ICMwMDAgIWRlZmF1bHQ7XG4kbm9jb2xvclx0XHQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5cbi8vIGNvbG9yIGZvciBkZWZhdWx0IHRoZW1lXG4kdGhlbWUtY29sb3IgICAgOiAjMzNjYzMzICFkZWZhdWx0OyAvKiBtYWluIGNvbG9yIHdoaWNoIHdpbGwgYmUgdXNlZCBmb3IgYWxsIG1haW4gYmxvY2sgc3R5bGVzLi4uICovXG4kYm9yZGVyLWNvbG9yXHQ6ICNlZWVlZWUgIWRlZmF1bHQ7XG5cblxuJHRoZW1lLWNvbG9yLXNlY29uZCAgXHRcdFx0IDogIzIyMzU1YiAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvci1kZWZhdWx0ICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yLWhvdmVyICAgICAgICAgICAgICAgOiAjMzNjYzMzICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yLXNlY29uZGFyeSAgICAgICAgICAgOiAjMWU4OGU1ICFkZWZhdWx0O1xuJGxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG5cbi8vIFRoZW1lIE1hcmdpbiwgUGFkZGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHRoZW1lLW1hcmdpbiAgICA6IDMwcHggIWRlZmF1bHQ7XG4kdGhlbWUtcGFkZGluZyAgIDogMzBweCAhZGVmYXVsdDtcbi8vIGZvbnRzXG4kZm9udC1mYW1pbHktc2Vjb25kIDogJGZvbnQtZmFtaWx5LWJhc2UgIWRlZmF1bHQ7IFxuLyoqXG4gKiBJbXBvcnQgY29tcG9uZW50IHZhcmlhYmxlc1xuICovXG5AaW1wb3J0IFwidmFycy9mb3JtXCI7XG5AaW1wb3J0IFwidmFycy9uYXZcIjtcbkBpbXBvcnQgXCJ2YXJzL2xheW91dFwiO1xuQGltcG9ydCBcInZhcnMvZWxlbWVudHNcIjtcbkBpbXBvcnQgXCJ2YXJzL3dpZGdldFwiO1xuIiwiLy8gU2VsZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kc2VsZWN0LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAzMnB4ICFkZWZhdWx0O1xuJHNlbGVjdC1ib3JkZXItY29sb3IgICAgICAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRzZWxlY3QtcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgICA6IDRweCA2cHggIWRlZmF1bHQ7XG5cbi8vIElucHV0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kaW5wdXQtcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgOiA1cHggNnB4ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgIDogJGZvbnQtc2l6ZS1iYXNlIC0gMTtcblxuJGlucHV0LWdyb3VwLWZvcm0tYmcgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtZm9ybS1tYXJnaW4gICAgICAgICAgICAgICAgOiAwIDAgNXB4IDAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICA6IDZweCAxMXB4ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvciAgICAgICAgICAgICAgICA6ICNmZmYgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgOiA0MnB4ICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9ybS1iZyAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrZXIgIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJ0bi10cmFuc2Zvcm0gICAgICAgICAgICAgICAgICAgICAgICAgIDogdXBwZXJjYXNlICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXZlcnRpY2FsICAgICAgICAgICAgICAgICAgIDogNXB4ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLWhvcml6b250YWwgICAgICAgICAgICAgICAgIDogMjBweCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgICAgOiAzMHB4ICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuXG4kYnRuLWxnLXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGJ0bi1sZy1wYWRkaW5nLWhvcml6b250YWwgICAgICAgICAgICAgIDogMzBweCAhZGVmYXVsdDtcbiRidG4tbGctZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICA6IDE4cHggIWRlZmF1bHQ7XG4kYnRuLWxnLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgOiAkbGluZS1oZWlnaHQtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWxnLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgICAgICAgOiA1cHggIWRlZmF1bHQ7XG5cbiRidG4tc20tcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgICAgICAgICA6IDdweCAhZGVmYXVsdDtcbiRidG4tc20tcGFkZGluZy1ob3Jpem9udGFsICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kYnRuLXNtLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGJ0bi1zbS1saW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICAgIDogJGxpbmUtaGVpZ2h0LXNtYWxsICFkZWZhdWx0O1xuJGJ0bi1zbS1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICAgICAgIDogJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbiRidG4teHMtcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcbiRidG4teHMtcGFkZGluZy1ob3Jpem9udGFsICAgICAgICAgICAgICA6IDEwcHggIWRlZmF1bHQ7XG4kYnRuLXhzLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGJ0bi14cy1saW5lLWhlaWdodCAgICAgICAgICAgICAgICAgICAgIDogJGxpbmUtaGVpZ2h0LXNtYWxsICFkZWZhdWx0O1xuJGJ0bi14cy1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICAgICAgIDogJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbiRidG4tb3V0bGluZS1jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1ob3Zlci1jb2xvciAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgICA6IDM2cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtcGFkZGluZyBcdFx0XHQ6IDNweCAxNXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWJnICAgICAgICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWhvdmVyLWJnICAgICAgICAgICAgICAgICAgIDokdGhlbWUtY29sb3Itc2Vjb25kICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWJvcmRlciAgICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1ib3JkZXItaG92ZXIgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtZm9udC1zaXplICAgICAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgICAgIDogMjhweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1ib3JkZXItcmFkaXVzICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG5cbiRidG4tb3V0bGluZS1zbS1wYWRkaW5nLXZlcnRpY2FsICAgICAgICA6IDhweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1zbS1wYWRkaW5nLWhvcml6b250YWwgICAgICA6IDE4cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtc20tZm9udC1zaXplICAgICAgICAgICAgICAgOiAxMXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXNtLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMS4zICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXNtLWJvcmRlci1yYWRpdXMgICAgICAgICAgIDogM3B4ICFkZWZhdWx0O1xuXG4kYnRuLW91dGxpbmUteHMtcGFkZGluZy12ZXJ0aWNhbCAgICAgICAgOiA1cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUteHMtcGFkZGluZy1ob3Jpem9udGFsICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLXhzLWZvbnQtc2l6ZSAgICAgICAgICAgICAgIDogMTFweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS14cy1saW5lLWhlaWdodCAgICAgICAgICAgICA6IDEuMiAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS14cy1ib3JkZXItcmFkaXVzICAgICAgICAgICA6IDNweCAhZGVmYXVsdDtcblxuJGJ0bi1vdXRsaW5lLWxnLXBhZGRpbmctdmVydGljYWwgICAgICAgIDogMjFweCAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1sZy1wYWRkaW5nLWhvcml6b250YWwgICAgICA6IDQ4cHggIWRlZmF1bHQ7XG4kYnRuLW91dGxpbmUtbGctZm9udC1zaXplICAgICAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWxnLWxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMyAhZGVmYXVsdDtcbiRidG4tb3V0bGluZS1sZy1ib3JkZXItcmFkaXVzICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcblxuJGJ0bi1pbnZlcnNlLWNvbG9yICAgICAgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWhvdmVyLWNvbG9yICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWJnICAgICAgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWhvdmVyLWJnICAgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLWJvcmRlci1jb2xvciAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRidG4taW52ZXJzZS1ib3JkZXItaG92ZXItY29sb3IgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWludmVyc2UtZm9udC1zaXplICAgICAgICAgICAgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJGJ0bi1pbnZlcnNlLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgIDogMTBweCAxNXB4ICFkZWZhdWx0O1xuXG4kYnRuLW91dGxpbmUtaW52ZXJzZS1jb2xvciAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3Itc2Vjb25kICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWludmVyc2UtYmcgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWludmVyc2UtYm9yZGVyLWNvbG9yICAgICAgIDogMXB4IHNvbGlkICRidG4tb3V0bGluZS1pbnZlcnNlLWJnICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWludmVyc2UtaG92ZXItYmcgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWludmVyc2UtaG92ZXItY29sb3IgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1vdXRsaW5lLWludmVyc2UtYm9yZGVyLWhvdmVyLWNvbG9yIDogMXB4IHNvbGlkICR0aGVtZS1jb2xvci1zZWNvbmQgIWRlZmF1bHQ7XG5cbi8vIFNlYXJjaFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNlYXJjaC1iZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJHNlYXJjaC1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgIDogMTJweCAhZGVmYXVsdDtcbiRzZWFyY2gtcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kc2VhcmNoLXdpZHRoICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBhdXRvICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24tYmcgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2VhcmNoLW1haW4tYnV0dG9uLWJnICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc2VhcmNoLW1haW4tYnV0dG9uLWJvcmRlciAgICAgICAgICAgICAgOiAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHNlYXJjaC1tYWluLWJ1dHRvbi1jb2xvciAgICAgICAgICAgICAgIDogJGdyYXktZGFya2VyICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24tYm9yZGVyICAgICAgICAgICAgICAgICAgIDogMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24taG92ZXItYmcgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24tY29sb3IgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJHNlYXJjaC1idXR0b24tc2l6ZSAgICAgICAgICAgICAgICAgICAgIDogMzZweCAhZGVmYXVsdDtcbiRzZWFyY2gtYnV0dG9uLWhvdmVyLWNvbG9yICAgICAgICAgICAgICA6ICRncmF5LWRhcmtlciAhZGVmYXVsdDtcbiRzZWFyY2gtcmFkaXVzICAgICAgICAgICAgICAgICAgICAgICAgICA6IDNweCAhZGVmYXVsdDtcbiRzZWFyY2gtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgICAgICA6IDUwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWJvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzZWFyY2gtaG92ZXItYm9yZGVyICAgICAgICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kc2VhcmNoLWNhdGVnb3JpZXMtYm9yZGVyLXJhZGl1cyAgICAgICAgOiA0cHggIWltcG9ydGFudDtcbiIsIi8vIE1haW4gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG1lZ2FtZW51LWJnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1tZWdhLWJvcmRlciAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lZ2EtbGluZS1oZWlnaHQgICAgICAgICAgICAgICAgICAgOiA3NXB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLW1lZ2Etc2tpbjItYmcgICAgICAgICAgICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItbWVnYS1za2luMi1ib3JkZXIgICAgICAgICAgICAgICAgICA6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lZ2Etc2tpbjItbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAzMHB4ICFkZWZhdWx0OyBcblxuJG5hdmJhci10ZXh0LXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRtZW51LXRleHQtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICA6IHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuJG5hdmJhci1mb250LXNpemUgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItZm9udC13ZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICA6IDQwMCAhZGVmYXVsdDtcbiBcbiRuYXZiYXItbGluay1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstcGFkZGluZyAgICAgICAgICAgICAgICAgICAgICAgOiAzMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgOiAjMzMzMzMzICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWhvdmVyLWNvbG9yICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWhvdmVyLWJnICAgICAgICAgICAgICAgICAgICAgIDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstYWN0aXZlLWNvbG9yICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmstYWN0aXZlLWJnICAgICAgICAgICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1mb250LWZhbWlseVx0XHQgICAgICAgICAgIDogJGZvbnQtZmFtaWx5LWJhc2UgIWRlZmF1bHQ7XG5cbiRuYXZiYXItd2lkZ2V0LXRpdGxlLWNvbG9yICAgICAgICAgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRuYXZiYXItd2lkZ2V0LXRpdGxlLW1hcmdpbiAgICAgICAgICAgICAgICA6IDAgMCAxMHB4IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLXdpZGdldC10aXRsZS1mb250LXNpemUgICAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJG5hdmJhci13aWRnZXQtdGl0bGUtZm9udC13ZWlnaHRcdFx0ICAgOiA5MDAgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZHJvcGRvd24tcGFkZGluZyAgICAgICAgICAgICAgICAgICA6IDhweCAxOHB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1iZyAgICAgICAgICAgICAgICAgICAgICAgIDogI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tc2l6ZSAgICAgICAgICAgICAgICAgICAgICA6IDIwMHB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLWNvbG9yICAgICAgICAgICAgICAgIDogIzY2NjY2NiAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1ob3Zlci1jb2xvciAgICAgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1ob3Zlci1iZyAgICAgICAgICAgICA6ICRub2NvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1saW5rLXRyYW5zZm9ybSAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGluay1mb250LXNpemUgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstZm9udC13ZWlnaHQgICAgICAgICAgOiA1MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWxpbmstYm9yZGVyLWNvbG9yICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcblxuJG5hdmJhci1saW5rLXNtYWxsLXBhZGRpbmcgICAgICAgICAgICAgICAgIDogMThweCAwICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWxhcmdlLXBhZGRpbmcgICAgICAgICAgICAgICAgIDogNDZweCAwIDQ2cHggIWRlZmF1bHQ7ICBcblxuLy8gVmVydGljYWwgTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBUb3AgTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1tZW51dG9wLWZvbnQtd2VpZ2h0XHRcdFx0XHQgICAgOiA4MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLW1lbnV0b3AtZm9udC1zaXplXHRcdFx0XHQgICAgICAgOiAxMnB4ICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLXBhZGRpbmctdG9wXHRcdFx0XHQgICAgOiAyMnB4ICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLXBhZGRpbmctYm90dG9tXHRcdFx0ICAgIDogMThweCAhZGVmYXVsdDtcbiRuYXZiYXItbWVudXRvcC1jb2xvclx0XHRcdFx0XHQgICAgICAgOiAjODI4MjgyICFkZWZhdWx0O1xuJG5hdmJhci1tZW51dG9wLW1hcmdpblx0XHRcdFx0XHQgICAgICAgOiAwIDEwcHggIWRlZmF1bHQ7XG5cbi8vIE9mZi1DYW52YXMgTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtd2lkdGggICAgICAgICAgICAgICAgICAgIDogNjklICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtYmctY2xvc2UgICAgICAgICAgICAgICAgIDogJG5vY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1jb2xvciAgICAgICAgICAgICAgICAgICAgOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1iZyAgICAgICAgICAgICAgICAgICAgICAgOiAjZjVmNWY1ICAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWJvcmRlciAgICAgICAgICAgICAgICAgICA6IHJnYmEoMCwgMCwgMCwgMC4xKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWNvbG9yICAgICAgICAgICAgICAgOiAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstaG92ZXItY29sb3IgICAgICAgICA6ICMwMjgxQUIgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWhvdmVyLWJnICAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLWxpbmstYWN0aXZlLWNvbG9yICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWFjdGl2ZS1iZyAgICAgICAgICAgOiBkYXJrZW4oJG5hdmJhci1vZmZjYW52YXMtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWRpc2FibGVkLWNvbG9yICAgICAgOiAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtbGluay1kaXNhYmxlZC1iZyAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1saW5rLWZvbnQtc2l6ZSAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRuYXZiYXItb2ZmY2FudmFzLWJyYW5kLWNvbG9yICAgICAgICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1icmFuZC1ob3Zlci1jb2xvciAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1icmFuZC1ob3Zlci1iZyAgICAgICAgICAgOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHNlYXJjaFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLWJnICAgICAgICAgICAgICAgIDogbGlnaHRlbigkbmF2YmFyLW9mZmNhbnZhcy1iZywgMjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXNlYXJjaC1iZy1mb2N1cyAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItb2ZmY2FudmFzLXNlYXJjaC1ib3JkZXIgICAgICAgICAgICA6ICRuYXZiYXItb2ZmY2FudmFzLWJnICFkZWZhdWx0O1xuJG5hdmJhci1vZmZjYW52YXMtc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yIDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy1zZWFyY2gtaW5wdXQtYmcgICAgICAgICAgOiB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIC4xMCkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRuYXZiYXItb2ZmY2FudmFzLXRvZ2dsZS1ob3Zlci1iZyAgICAgICAgICA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy10b2dnbGUtaWNvbi1iYXItYmcgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLW9mZmNhbnZhcy10b2dnbGUtYm9yZGVyLWNvbG9yICAgICAgOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4kbmF2YmFyLW9mZmNhbnZhcy1idXR0b24tcG9zaXRpb24gICAgICAgICAgOiAtMTcycHggIWRlZmF1bHQ7IiwiXG4vLyBUb3BiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR0b3BiYXItYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIzA3MWM0NyAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJGdyYXktYmFzZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1ob3Zlci1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgIDogJGdyYXktZGFya2VyICFkZWZhdWx0O1xuJHRvcGJhci1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkZ3JheS1kYXJrZXIgIWRlZmF1bHQ7XG4kdG9wYmFyLWJvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kdG9wYmFyLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDEycHggIWRlZmF1bHQ7XG4kdG9wYmFyLWljb24tY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM2NjY2OTkgIWRlZmF1bHQ7XG4kdG9wYmFyLWljb24tZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7XG4kdG9wYmFyLXRleHQtdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICA6IGNhcGl0YWxpemUgIWRlZmF1bHQ7XG4kdG9wYmFyLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdDogMTFweCAwICFkZWZhdWx0O1xuXG4vLy8vIEhlYWRlclxuXG4kaGVhZGVyLW1haW4tcGFkZGluZyA6IDAgIWRlZmF1bHQ7IFxuJGhlYWRlci1tYWluLW1hcmdpbiA6IDAgIWRlZmF1bHQ7IFxuJGhlYWRlci1iZy1jb2xvcjogIzIyMiAhZGVmYXVsdDtcblxuXG4kbWFzc2JvdHRvbS1oZWFkLWJnXHRcdCA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRtYXNzYm90dG9tLWhlYWQtcGFkZGluZyA6IDZweCA5cHggIWRlZmF1bHQ7XG4kbWFzc2JvdHRvbS1oZWFkLWNvbG9yICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kbWFzc2JvdHRvbS1oZWFkLWJvcmRlci1jb2xvcjogZGFya2VuKCRtYXNzYm90dG9tLWhlYWQtYmcsNCUpIWRlZmF1bHQ7IFxuXG4vKipcbiAqXG4gKi9cblxuICRtYWlubWVudS1iZzogIzIyMjIyMiAhZGVmYXVsdDtcblxuXG5cblxuLy8gRm9vdGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICBcbiRmb290ZXItYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRmb290ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIzg4ODg4OCAhZGVmYXVsdDtcbiRmb290ZXItdHJhbnNmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRmb290ZXItZm9udC1zaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMTNweCAhZGVmYXVsdDsgXG4kZm9vdGVyLWJvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG4kZm9vdGVyLXBhZGRpbmctdG9wICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDYwcHggIWRlZmF1bHQ7XG4kZm9vdGVyLXBhZGRpbmctYm90dG9tICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kZm9vdGVyLXRleHQtaGlnaHRsaWdodCAgICAgICAgICAgICAgICAgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRmb290ZXItbGluay1mb250LXNpemVcdFx0XHRcdFx0XHRcdCAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRmb290ZXItY29sdW1uLW1hcmdpbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAwIDI1cHggMCAhZGVmYXVsdDtcbiRmb290ZXItbGluay1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogI0ZGRiAhZGVmYXVsdDtcbiRmb290ZXItbGluay1ob3Zlci1jb2xvciAgICAgICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1pY29uLWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBkYXJrZW4oJHdoaXRlLCAyMCUpICFkZWZhdWx0O1xuJGZvb3Rlci1pY29uLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxM3B4ICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgOiAxNnB4ICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctbWFyZ2luICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgMCAyNXB4ICFkZWZhdWx0O1xuJGZvb3Rlci1oZWFkaW5nLXBhZGRpbmcgICAgICAgICAgICAgICAgICAgICAgICAgOiAwIDAgMTVweCAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy1kaXNwbGF5ICAgICAgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRmb290ZXItaGVhZGluZy10cmFuc2Zvcm0gICAgICAgICAgICAgICAgICAgICAgIDogdXBwZXJjYXNlICFkZWZhdWx0O1xuJGZvb3Rlci1saXN0LXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJGZvb3Rlci1saXN0LWZvbnQtc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxNHB4ICFkZWZhdWx0OyBcbiRmb290ZXItbGlzdC1tYXJnaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogMCAwIDEwcHggIWRlZmF1bHQ7XG4kZm9vdGVyLWxpc3QtbGlnaHQtaGVpZ2h0ICAgICAgICAgICAgICAgICAgICAgICA6IDIuNSAhZGVmYXVsdDsgIFxuJGZvb3Rlci1oZWFkaW5nLWZ3ZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgOiA0MDAgIWRlZmF1bHQ7XG4kZm9vdGVyLWhlYWRpbmctZmZhbWlseSAgICAgICAgICAgICAgICAgICAgICAgICA6ICRmb250LWZhbWlseS1zZWNvbmQgIWRlZmF1bHQ7XG5cbiRmb290ZXItbmV3c2xldHRlci1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgIDogMjVweCAhZGVmYXVsdDtcbiRmb290ZXItbmV3c2xldHRlci1iZyAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJHRoZW1lLWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1uZXdzbGV0dGVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgOiAjNDg0ODQ4ICFkZWZhdWx0O1xuJGZvb3Rlci1uZXdzbGV0dGVyLWhlYWRpbmctZm9udC1zaXplICAgICAgICAgICAgOiAxOHB4ICFkZWZhdWx0O1xuXG4kZm9vdGVyLXRvcC1iZyBcdFx0XHRcdFx0XHRcdFx0XHQ6ICR3aGl0ZSAhZGVmYXVsdDtcbiRmb290ZXItdG9wLWNvbG9yICBcdFx0XHRcdFx0XHRcdFx0OiAkYmxhY2sgIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1wYWRkaW5nLXRvcFx0XHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0OyBcbiRmb290ZXItdG9wLXBhZGRpbmctYm90dG9tXHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDEycHggIWRlZmF1bHQ7XG4kZm9vdGVyLXRvcC1sZXR0ZXItc3BhY2luZ1x0XHRcdFx0XHRcdDogMnB4ICFkZWZhdWx0O1xuJGZvb3Rlci10b3AtYm9yZGVyLWNvbG9yIFx0XHRcdFx0XHRcdDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuLy8gQ29weXJpZ2h0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAvLyBDb3B5cmlnaHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRjb3B5cmlnaHQtYmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWNvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICM4MDgwODAgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWxpbmstY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1wYWRkaW5nLXRvcCAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmctYm90dG9tICAgICAgICAgICAgICAgICAgICAgICA6IDBweCAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtZm9udC1zaXplXHRcdFx0XHRcdFx0XHQ6IDEycHggIWRlZmF1bHQ7IFxuJGNvcHlyaWdodC1mb250LXdlaWdodFx0XHRcdFx0XHRcdFx0OiA0MDAgIWRlZmF1bHQ7XG5cbiRkZWwtZm9udC1zaXplXHRcdFx0XHRcdFx0XHRcdFx0OiAxMnB4ICFkZWZhdWx0O1xuJGRlbC1jb2xvclx0XHRcdFx0XHRcdFx0XHRcdFx0OiAjOTk5OTk5OyIsIiRiby1wYXJhbGxheC1iZWZvcmUtYmFja2dyb3VuZCA6IHVybChcImh0dHA6Ly92ZW51c2RlbW8uY29tL3dwb3BhbC9taXgvbW9iaWxlL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE0LzExL2JnLWZvb3Rlci1jZC5qcGdcIikhZGVmYXVsdDtcblxuJGVsZW1lbnQtY29sb3ItcHJpbWFyeSAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG5cbiAvKiAtLS0gU0NTUyBGb3IgQWNjb3JkaW9uIC0tLSAqL1xuJGJvLWFjY29yZGlvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0OyBcbiRiby1hY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuJGJvLWFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNlZWUgIWRlZmF1bHQ7XG5cbiAvKiAtLS0gU0NTUyBGb3IgQnJlYWRjcnVtYiAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBCdXR0b25zIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIENhbGwtdG8tYWN0aW9uIC0tLSAqLyR3aGl0ZSA6ICNGRkZGRkYgIWRlZmF1bHQ7XG5cbiAvKiAtLS0gU0NTUyBGb3IgQ29udGVudC1zbGlkZXIgLS0tICovLyogICovXG5cbiRiby1jYXJvdXNlbC1tZC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ0cHggIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtbWQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NHB4ICFkZWZhdWx0O1xuXG4kYm8tY2Fyb3VzZWwtc20td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNHB4ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLXNtLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMzRweCAhZGVmYXVsdDtcblxuJGJvLWNhcm91c2VsLXhzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC14cy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4gXG4vKiBjYXJvdXNlbC1jb250cm9scy12MSAqL1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYxLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1jb250cm9scy12MS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIGRhcmtlbigkYm8tY2Fyb3VzZWwtY29udHJvbHMtdjEtY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjEtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNSkgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWNvbnRyb2xzLXYyICovXG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjItY29sb3I6ICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgZGFya2VuKCRiby1jYXJvdXNlbC1jb250cm9scy12Mi1jb2xvciwgMjUlKSAhZGVmYXVsdDtcblxuLyogY2Fyb3VzZWwtY29udHJvbHMtdjMgKi9cbiRiby1jYXJvdXNlbC1jb250cm9scy12My1jb2xvcjogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGVsZW1lbnQtY29sb3ItcHJpbWFyeSAgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtY29udHJvbHMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJGJvLWNhcm91c2VsLWNvbnRyb2xzLXYzLWJnLCAxNSUpICFkZWZhdWx0O1xuXG5cblxuLyogTmF2aWdhdGlvbiBTdHlsZXMgKi9cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12MSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjEtYmc6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYxLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbC1pbmRpY2F0b3JzLXYyICovXG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Mi1iZzogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjItaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjMgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXYzLWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjMtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsLWluZGljYXRvcnMtdjQgKi9cbiRiby1jYXJvdXNlbC1pbmRpY2F0b3JzLXY0LWJnOiAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjQtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG5cblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NSAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjUtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12NS1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuLyogY2Fyb3VzZWwtaW5kaWNhdG9ycy12NiAqL1xuJGJvLWNhcm91c2VsLWluZGljYXRvcnMtdjYtYmc6ICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYm8tY2Fyb3VzZWwtaW5kaWNhdG9ycy12Ni1ob3Zlci1iZzogICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuIC8qIC0tLSBTQ1NTIEZvciBDb3VudGVycyAtLS0gKi9cbiRiby1jb3VudGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRiby1jb3VudGVyLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICA3MDA7XG4kYm8tY291bnRlci1mb250LXNpemU6ICAgICAgICAgICAgICAgNDhweDtcblxuJGJvLWNvdW50ZXItaWNvbi1mb250LXNpemU6ICAgICAgICAgIDQ2cHg7XG4kYm8tY291bnRlci1oZWFkaW5nLWZvbnQtd2VpZ2h0OiAgICAgNDAwO1xuXG4gLyogLS0tIFNDU1MgRm9yIEhlYWRpbmcgLS0tICovJGJvLWhlYWRpbmctY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3M7XG5cbiAvKiAtLS0gU0NTUyBGb3IgSWNvbi1ib3ggLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgSW50ZXJhY3RpdmUtYmFubmVyIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIExhdGVzdC1wb3N0cyAtLS0gKi8vKiBsYXRlc3QgcG9zdHMgKi9cbiRiby1sYXRlc3QtcG9zdHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tbGF0ZXN0LXBvc3RzLWEtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwO1xuJGJvLWxhdGVzdC1wb3N0cy1hLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmVkO1xuJGJvLWxhdGVzdC1wb3N0cy1mb250LXNpemU6ICAgICAgICAgICAgICAgMTRweDtcbiRiby1sYXRlc3QtcG9zdHMtdGl0bGUtZm9udC1zaXplOiAgICAgICAgIDE4cHg7XG5cbiRiby1sYXRlc3QtcG9zdHMtcHJvZmlsZS1mb250LXNpemU6ICAgICAgIDEzcHg7XG4kYm8tbGF0ZXN0LXBvc3RzLXByb2ZpbGUtY29sb3I6ICAgICAgICAgICAjNjk2OTY5O1xuXG4gLyogLS0tIFNDU1MgRm9yIExpc3QgLS0tICovLyogdmFyaWFibGVzIGZvciBsaXN0ICovXG4kYm8tbGlzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjNjY2ICFkZWZhdWx0OyBcbiRiby1saXN0LWEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRiby1saXN0LWNvbG9yICFkZWZhdWx0OyBcbiRiby1saXN0LWEtY29sb3ItaG92ZXI6ICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICAhZGVmYXVsdDtcblxuLyogdmFyaWFibGVzIGZvciBsaXN0IGxpZ2h0ICovXG5cbiRiby1saXN0LWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNGRkZGRkYgIWRlZmF1bHQ7IFxuJGJvLWxpc3QtbGlnaHQtYS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGJvLWxpc3QtbGlnaHQtY29sb3IgIWRlZmF1bHQ7IFxuJGJvLWxpc3QtbGlnaHQtYS1jb2xvci1ob3ZlcjogICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgICFkZWZhdWx0O1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgTWVzc2FnZSAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBOZXdzbGV0dGVyIC0tLSAqLyRuZXdzbGV0dGVyLXYyLWJnICAgICAgICAgICAgOiBsaWdodGVuKCRncmF5LWxpZ2h0LCA1MCUpICFkZWZhdWx0O1xuJG5ld3NsZXR0ZXItdjMtYmcgICAgICAgICAgICA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuIC8qIC0tLSBTQ1NTIEZvciBQaWVjaGFydCAtLS0gKi9cblxuIC8qIC0tLSBTQ1NTIEZvciBQcmljaW5nIC0tLSAqL1xuXG4gLyogLS0tIFNDU1MgRm9yIFByb2Nlc3Mtc3RlcHMgLS0tICovLyogcHJvY2Vzcy1zdGVwcyAqL1xuJGJvLXByb2Nlc3Mtc3RlcHMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG4kYm8tcHJvY2Vzcy1zdGVwcy1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzAwMDtcblxuJGJvLXByb2Nlc3Mtc3RlcHMtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuJGJvLXByb2Nlc3Mtc3RlcHMtYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuXG4gLyogLS0tIFNDU1MgRm9yIFNlcnZpY2UgLS0tICovLyogdmFyaWFibGVzIGZvciB0YWIgc3R5bGUxIHVzaW5nIGFzIGJhc2Ugb2YgdGFiICovXG5cblxuIC8qIC0tLSBTQ1NTIEZvciBTdHlsZS1pY29uIC0tLSAqLy8qIFZhcmlhYmxlcyBpY29ucyBkZWZhdWx0ICovXG4kYm8tc3R5bGUtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRiby1zdHlsZS1pY29uLWJnLCA1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGJvZGVyZWQgKi9cbiRiby1zdHlsZS1pY29uLWJvZGVyZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1ib2RlcmVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJvLXN0eWxlLWljb24tYm9kZXJlZC1jb2xvciwgMTAlKSFkZWZhdWx0O1xuXG4vKiBWYXJpYWJsZXMgaWNvbnMgZGFya2VyICovXG4kYm8tc3R5bGUtaWNvbi1kYXJrZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tZGFya2VyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLWRhcmtlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1kYXJrZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkYm8tc3R5bGUtaWNvbi1kYXJrZXItYmcsIDM1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGxpZ2h0ICovXG4kYm8tc3R5bGUtaWNvbi1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjMDAwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAjZmZmIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAjZjBmMGYwIWRlZmF1bHQ7XG4kYm8tc3R5bGUtaWNvbi1saWdodC1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGJvLXN0eWxlLWljb24tbGlnaHQtYmcsIDEwJSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIHBsYWluICovXG4kYm8tc3R5bGUtaWNvbi1wbGFpbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tcGxhaW4taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIzAwMCFkZWZhdWx0O1xuJGJvLXN0eWxlLWljb24tcGxhaW4tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQhZGVmYXVsdDtcbiRiby1zdHlsZS1pY29uLXBsYWluLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG5cbi8qIFZhcmlhYmxlcyBpY29ucyBmb3IgbGlnaHQgc3R5bGUgKi9cbiRiby1saWdodC1zdHlsZS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzIWRlZmF1bHQ7XG4kYm8tbGlnaHQtc3R5bGUtaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQhZGVmYXVsdDtcbiRiby1saWdodC1zdHlsZS1pY29uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigjZmZmLCA1JSkhZGVmYXVsdDtcblxuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1jb2xvcjogICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1ob3Zlci1jb2xvcjogICAgICAgICAgZGFya2VuKCNmZmYsIDUlKSFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1iZzogICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGJvLWxpZ2h0LXN0eWxlLWljb24tYm9kZXJlZC1ob3Zlci1iZzogICAgICAgICAgICAgZGFya2VuKCNmZmYsIDUlKSFkZWZhdWx0O1xuXG4vKiBWYXJpYWJsZXMgaWNvbnMgb3V0bGluZSAqL1xuXG4kaWNvbnMtb3V0bGluZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZDFkNjQ2IWRlZmF1bHQ7XG4kaWNvbnMtb3V0bGluZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCFkZWZhdWx0O1xuJGljb25zLW91dGxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGljb25zLW91dGxpbmUtY29sb3IhZGVmYXVsdDtcbiRpY29ucy1vdXRsaW5lLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYhZGVmYXVsdDtcdFx0XG4kaWNvbnMtb3V0bGluZS1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbnMtb3V0bGluZS1jb2xvciFkZWZhdWx0O1xuJGljb25zLW91dGxpbmUtaG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRpY29ucy1vdXRsaW5lLWhvdmVyLWJnLCA1JSkhZGVmYXVsdDtcblxuLyogVmFyaWFibGVzIGljb25zIGludmVyc2UgKi9cblxuJGljb25zLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiFkZWZhdWx0O1xuJGljb25zLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2QxZDY0NiFkZWZhdWx0O1xuJGljb25zLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRpY29ucy1pbnZlcnNlLWJnLCA1JSkhZGVmYXVsdDtcbiRpY29ucy1pbnZlcnNlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICNkMWQ2NDYhZGVmYXVsdDtcdFxuJGljb25zLWludmVyc2UtaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IWRlZmF1bHQ7XG4kaWNvbnMtaW52ZXJzZS1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAkaWNvbnMtaW52ZXJzZS1iZyFkZWZhdWx0O1xuXG5cbiAvKiAtLS0gU0NTUyBGb3IgVGFibGUgLS0tICovXG5cbiAvKiAtLS0gU0NTUyBGb3IgVGFicyAtLS0gKi9cbi8qIHZhcmlhYmxlcyBmb3IgdGFiIHN0eWxlMSB1c2luZyBhcyBiYXNlIG9mIHRhYiAqL1xuJGJvLXRhYnMtYS1jb2xvcjojRkZGRkZGICFkZWZhdWx0OyBcbiRiby10YWJzLWEtY29sb3ItYWN0aXZlOiMwMDAwMDAgIWRlZmF1bHQ7XG5cbiRiby10YWJzLXBhZGRpbmc6IDEwcHggMjBweCAhZGVmYXVsdDsgXG4kYm8tdGFicy1iYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRiby10YWJzLWJhY2tncm91bmQtaG92ZXI6ICNmNmY2ZjYgIWRlZmF1bHQ7XG4kYm8tdGFicy1jb250ZW50LWJhY2tncm91bmQ6I2Y2ZjZmNiAhZGVmYXVsdDtcblxuJGJvLXRhYnMtYm9yZGVyLWNvbG9yIDogI2VlZSAhZGVmYXVsdDtcbiRiby10YWJzLWNvbnRlbnQtYm9yZGVyOiAgMXB4IHNvbGlkICRiby10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRiby10YWJzLWNvbnRlbnQtcGFkZGluZzogMTVweCAyMHB4IWRlZmF1bHQ7XG5cblxuLyogdGFiIHN0eWxlIHZlcnNpb24gNSAqL1xuJGJvLXRhYnMtcHJpbWFyeS1iYWNrZ3JvdW5kLWhvdmVyOiMwMDAwMDAhZGVmYXVsdDtcbiRiby10YWJzLXByaW1hcnktYmFja2dyb3VuZDojRkZGRkZGICFkZWZhdWx0O1xuXG4vKiB0YWIgc3R5bGUgdmVyc2lvbiA2ICovXG4kYm8tdGFicy12Ni1oZWFkaW5nLWJhY2tncm91bmQ6ICNGRkZGRkYgIWRlZmF1bHQ7IFxuXG4kYm8tdGFicy12Ni1hLWNvbG9yIDogIzAwMDAwMCAhZGVmYXVsdDtcbiRiby10YWJzLXY2LWEtY29sb3ItYWN0aXZlOnJlZCAhZGVmYXVsdDtcbiRiby10YWJzLXY2LWhlYWRpbmctcGFkZGluZzogMTBweCAyMHB4O1xuJGJvLXRhYnMtdjYtaGVhZGluZy1ib3JkZXItdG9wLWNvbG9yOiMwMDAwMDAgIWRlZmF1bHQ7IFxuXG4kYm8tdGFicy12Ni1oZWFkaW5nLWJvcmRlci1jb2xvcjojZWVlICFkZWZhdWx0OyAgXG4kYm8tdGFicy12Ni1jb250ZW50LWJvcmRlci1jb2xvcjoxcHggc29saWQgJGJvLXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4gLyogLS0tIFNDU1MgRm9yIFRlc3RpbW9uaWFscyAtLS0gKi8vKiB0ZXN0aW1vbmlhbHMgZGVmYXVsdCAqL1xuJGJvLXRlc3RpbW9uaWFscy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1xuJGJvLXRlc3RpbW9uaWFscy1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjNjk2OTY5O1x0XHRcdFx0XHRcdFx0XG5cblxuLyogdGVzdGltb25pYWxzLXYxICovXG4kYm8tdGVzdGltb25pYWxzLXYxLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tdGVzdGltb25pYWxzLXYxLWEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM2OTY5Njk7XG4kYm8tdGVzdGltb25pYWxzLXYxLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICNmM2YzZjM7XG4kYm8tdGVzdGltb25pYWxzLXYxLWxpZ2h0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICNmZmY7XG4kYm8tdGVzdGltb25pYWxzLXYxLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWRhcms7XG5cbi8qIHRlc3RpbW9uaWFscyBsaWdodCAqL1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1hLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJGJvLXRlc3RpbW9uaWFscy1saWdodC1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuXG5cblxuIC8qIC0tLSBTQ1NTIEZvciBUeXBvZ3JhcGh5IC0tLSAqL1xuJGJvLWJsb2NrcXVvdGUtaWNvbi1iYWNrZ3JvdW5kICA6ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJvLWJsb2NrcXVvdGUtaWNvbi1jb2xvciAgICAgICA6ICNGRkZGRkYgIWRlZmF1bHQ7XG4kYm8tYmxvY2txdW90ZS1pY29uLWZvbnQtc2l6ZSAgIDogMTdweCAhZGVmYXVsdDtcbiRiby1ibG9ja3F1b3RlLWljb24tbGluZS1oZWlnaHQgOiAyMnB4ICFkZWZhdWx0O1xuXG4kYm8tYmxvY2txdW90ZS1jb2xvciAgICAgICAgICAgIDogIzAwMDAwMCAhZGVmYXVsdDtcbiIsIi8qKlxuICogICBCbG9ja3MgTGF5b3V0IFNlbGVjdG9yc1xuICovXG4kYmxvY2stcHJlZml4ICAgICAgICAgICAgICAgICAgICA6ICd3aWRnZXQnICFkZWZhdWx0O1xuJGJsb2NrLXNlbGVjdG9yICAgICAgICAgICAgICAgICAgOiAnd2lkZ2V0ICcgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1zZWxlY3RvciAgICAgICAgICA6ICd3aWRnZXQtdGl0bGUsIC53aWRnZXR0aXRsZScgIWRlZmF1bHQ7XG4kYmxvY2stY29udGVudC1zZWxlY3RvciAgICAgICAgICA6ICd3aWRnZXQtY29udGVudCcgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1yZXZlcnNlZC1zZWxlY3RvciA6ICd3aWRnZXQtdGl0bGUtcmV2ZXJzZWQnICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wcmVmaXggICAgICAgICAgICAgICAgOiAnd3BiLWNvbnRhaW5lcicgIWRlZmF1bHQ7XG5cblxuXG4vLyBCb3ggTW9kdWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJsb2NrLW1vZHVsZS1tYXJnaW4tYm90dG9tICAgICAgICAgICAgICAgICAgICAgOiA2MHB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAwcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWJvcmRlci1jb2xvciAgICAgICAgICAgICAgICAgICAgICA6IG5vbmUgIWRlZmF1bHQ7XG5cbiRibG9jay1tb2R1bGUtaGVhZGluZy1jb2xvclx0XHRcdFx0XHRcdDogIzMzMzMzMyAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogMHB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLXRyYW5zZm9ybSAgICAgICAgICAgICAgICAgOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctbGluZS1oZWlnaHQgICAgICAgICAgICAgICA6IG5vcm1hbCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1iZyAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhlYWRpbmctcGFkZGluZyAgICAgICAgICAgICAgICAgICA6IDAgMCAyNXB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLW1hcmdpbiAgICAgICAgICAgICAgICAgICAgOiAwIDAgMzBweCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1mb250LXNpemUgICAgICAgICAgICAgICAgIDogMjBweCAhZGVmYXVsdDtcbiRibG9jay1tb2R1bGUtaGVhZGluZy1mb250LXdlaWdodCAgICAgICAgICAgICAgIDogNzAwICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLXNob3ctc2VwYXJhdG9yICAgICAgICAgICAgOiBub25lICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1oZWFkaW5nLWltYWdlLXBvc2l0aW9uICAgICAgICAgICAgOiAwIDAgIWRlZmF1bHQ7XG5cbiRibG9jay1tb2R1bGUtY29udGVudC1iZyAgICAgICAgICAgICAgICAgICAgICAgIDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtY29sb3JcdFx0XHRcdFx0XHQ6ICNiYmIgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtYm9yZGVyICAgICAgICAgICAgICAgICAgICA6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1jb250ZW50LXBhZGRpbmcgICAgICAgICAgICAgICAgICAgOiAyMHB4ICFkZWZhdWx0O1xuJGJsb2NrLW1vZHVsZS1jb250ZW50LW1hcmdpbiAgICAgICAgICAgICAgICAgICAgOiAxcHggIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWNvbnRlbnQtcmFkaXVzICAgICAgICAgICAgICAgICAgICA6IDBweCAhZGVmYXVsdDtcblxuJGJsb2NrLW1vZHVsZS1oaWdobGlnaHRlZC1iZyAgICAgICAgICAgICAgICAgICAgOiAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG4kYmxvY2stbW9kdWxlLWhpZ2hsaWdodGVkLWJvcmRlciAgICAgICAgICAgICAgICA6IHNvbGlkIDJweCAkdGhlbWUtY29sb3IgIWRlZmF1bHQ7XG5cbiRibG9jay1tb2R1bGUtZm9vdGVyLWhlYWRpbmctY29sb3IgICAgICAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuXG4kYmxvY2stcHJvZHVjdC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kYmxvY2staGVhZGluZy1sZXR0ZXItc3BhY2luZyAgICAgICAgICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG5cbi8vIFNpZGViYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRibG9jay1zaWRlYmFyLW1vZHVsZS1ib3JkZXIgICAgICAgICAgICAgICAgICAgIDogbm9uZSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWJveC1wYWRkaW5nICAgICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDsgXG4kYmxvY2stc2lkZWJhci1ib3gtbWFyZ2luICAgICAgICAgICAgICAgICAgICAgICA6IDAgMCAzMHB4ICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci1saXN0LXBhZGRpbmctdmVydGljYWwgICAgICAgICAgICA6IDEzcHggMHB4IDEzcHggMTNweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtYm9yZGVyLWNvbG9yICAgICAgICAgICAgICAgIDogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1tYXJnaW4gXHRcdFx0XHQ6IDAgMCAyMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1tYXJnaW4gICAgICAgICAgICBcdFx0OiAwICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWJnICAgICAgICAgICAgOiAkbm9jb2xvciAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1wYWRkaW5nICAgICAgIDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1tYXJnaW4gICAgXHQ6IDAgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oZWFkaW5nLWhpZ2h0bGlnaHQtY29sb3IgICAgICAgICA6ICRibGFjayAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctaGlnaHRsaWdodC1tYXJnaW4tYm90dG9tIDogMHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWZvbnQtc2l6ZSAgICAgOiAxNHB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGVhZGluZy1oaWdodGxpZ2h0LWZvbnQtd2VpZ2h0ICAgOiA5MDAgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWNvbnRlbnQtYmdcdFx0XHQ6ICRub2NvbG9yICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1jb250ZW50LWNvbG9yXHRcdFx0OiAjNjY2NjY2ICFkZWZhdWx0OyBcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtY29udGVudC1wYWRkaW5nXHRcdDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtYm9yZGVyICAgXHRcdFx0XHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSkgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1oaWdodGxpZ2h0LWZvbnQtc2l6ZSBcdFx0XHQ6IDEycHggIWRlZmF1bHQ7XHRcbiRibG9jay1zaWRlYmFyLWhpZ2h0bGlnaHQtdHJhbnNmb3JtIFx0XHRcdDogdXBwZXJjYXNlICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItaGlnaHRsaWdodC1mb250LXdlaWdodFx0XHRcdDogMzAwICFkZWZhdWx0O1x0XHRcdFx0XHRcdFxuJGJsb2NrLXNpZGViYXItbGluay1oaWdodGxpZ2h0LWNvbG9yICAgICAgICAgICAgOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1saW5rLWhpZ2h0bGlnaHQtaG92ZXItY29sb3IgICAgICA6ICR0aGVtZS1jb2xvciAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1ib3JkZXItY29sb3IgICAgIDogIzM5MzkzOSAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1mb250LXNpemUgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWxpc3QtaGlnaHRsaWdodC1wYWRkaW5nICAgICAgICAgIDogMTdweCAxNXB4ICFkZWZhdWx0O1xuJGJsb2NrLXNpZGViYXItbGlzdC1oaWdodGxpZ2h0LWltYWdlICAgICAgICAgICAgOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9ZG90LmpwZycpIDAgMjJweCBuby1yZXBlYXQgIWRlZmF1bHQ7XG4kYmxvY2stc2lkZWJhci1saXN0LWltYWdlICAgICAgICAgICAgICAgICAgICAgICA6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aH1kb3QuanBnJykgMCAyMnB4IG5vLXJlcGVhdCAhZGVmYXVsdDtcblxuJGJsb2NrLXNpZGViYXItaGVhZGluZy1wYWRkaW5nICAgICAgICAgICAgICAgICAgOiAwIDAgMzBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctbWFyZ2luICAgICAgICAgICAgICAgICAgIDogMCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctZm9udC1zaXplICAgICAgICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctY29sb3IgICAgICAgICAgICAgICAgICAgIDogJGJsYWNrICFkZWZhdWx0OyBcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctbGluZS1oZWlnaHQgICAgICAgICAgICAgIDogMjBweCAhZGVmYXVsdDtcbiRibG9jay1zaWRlYmFyLWhlYWRpbmctZm9udC13ZWlnaHRcdFx0XHRcdDogOTAwICFkZWZhdWx0O1xuXG4kYmxvY2stc2lkZWJhci13aWRnZXQtYm9yZGVyICAgICAgICAgICAgICAgICAgICA6IDFweCBzb2xpZCBsaWdodGVuKCRib3JkZXItY29sb3IsIDMlKSAhZGVmYXVsdDtcblxuLyoqKioqKioqKiBMQVlPVVQgKioqKioqKioqKioqKiovIiwiLyoqXG4gKiBJbXBvcnQgY29tcG9uZW50IHZhcmlhYmxlc1xuICovXG5AaW1wb3J0ICdtaXhpbnMvcnRsJzsgXG5AaW1wb3J0ICdtaXhpbnMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJ21peGlucy90ZW1wbGF0ZS1taXhpbnMnOyIsIi8vIFN1cHBvcnQgZm9yIFJUTCAoUmlnaHQgdG8gTGVmdCkgJiBub24tbGF0aW4gZm9udHNcclxuXHJcbiRydGwtbGVmdCA6IGxlZnQ7XHJcbiRydGwtcmlnaHQgOiByaWdodDtcclxuJHJ0bC1jZW50ZXI6IGNlbnRlcjtcclxuXHJcbi8vIEJBU0lDIENPTlZFUlRFUiAoaWdub3JlIHRoZXNlKVxyXG5cclxuQG1peGluIHJ0bC1iYXNlLXNpbXBsZSAoJHByb3BlcnR5LCAkZGlyZWN0aW9uKSB7XHJcbiAgI3skcHJvcGVydHl9OiRkaXJlY3Rpb247XHJcbiAgLnJ0bCAmIHtcclxuICAgIEBpZiAkZGlyZWN0aW9uID09ICRydGwtcmlnaHQge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06JHJ0bC1sZWZ0O1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06JHJ0bC1yaWdodDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1peGluIHJ0bC1iYXNlLWluaGVyaXQgKCRwcm9wZXJ0eSwgJGRpcmVjdGlvbiwgJHZhbHVlLCAkaW5oZXJpdCA6IGluaGVyaXQpIHtcclxuICAjeyRwcm9wZXJ0eX0tI3skZGlyZWN0aW9ufTogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSAkcnRsLXJpZ2h0IHtcclxuICAgICAgI3skcHJvcGVydHl9LSN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAjeyRwcm9wZXJ0eX0tI3skcnRsLXJpZ2h0fTogJHZhbHVlO1xyXG4gICAgfVxyXG4gICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1iYXNlLXRvcHJpZ2h0Ym90dG9tbGVmdCAoJHByb3BlcnR5LCAkdCwgJHIsICRiLCAkbCkge1xyXG4gICN7JHByb3BlcnR5fTogJHQgJHIgJGIgJGw7XHJcbiAgLnJ0bCAmIHtcclxuICAgICN7JHByb3BlcnR5fTogJHQgJGwgJGIgJHI7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCT0RZIFNUWUxFU1xyXG5AbWl4aW4gcnRsLWRpcmVjdGlvbiAoJGZvckJvZHkgOiB0cnVlKSB7XHJcbiAgZGlyZWN0aW9uOiBsdHI7XHJcbiAgQGlmICRmb3JCb2R5IHtcclxuICAgICYucnRsIHtcclxuICAgICAgZGlyZWN0aW9uOiBydGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIC5ydGwgJiB7XHJcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1mb250LWZhbWlseSAoJGx0ciwgJHJ0bCwgJGZvckJvZHkgOiBmYWxzZSkge1xyXG4gIGZvbnQtZmFtaWx5OiAkbHRyO1xyXG4gIEBpZiAkZm9yQm9keSB7XHJcbiAgICAmLnJ0bCwgJi5ub24tbGF0aW4ge1xyXG4gICAgICBmb250LWZhbWlseTokcnRsO1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAucnRsICYsIC5ub24tbGF0aW4gJiB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiRydGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTUFSR0lOXHJcblxyXG5AbWl4aW4gcnRsLW1hcmdpbiAoJHQsICRyLCAkYiwgJGwpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS10b3ByaWdodGJvdHRvbWxlZnQobWFyZ2luLCR0LCAkciwgJGIsICRsKTtcclxufVxyXG5AbWl4aW4gcnRsLW1hcmdpbi1sZWZ0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KG1hcmdpbiwkcnRsLWxlZnQsJHZhbHVlKTtcclxufVxyXG5AbWl4aW4gcnRsLW1hcmdpbi1yaWdodCAoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtaW5oZXJpdChtYXJnaW4sJHJ0bC1yaWdodCwkdmFsdWUpO1xyXG59XHJcblxyXG4vLyBQQURESU5HXHJcblxyXG5AbWl4aW4gcnRsLXBhZGRpbmcgKCR0LCAkciwgJGIsICRsKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2UtdG9wcmlnaHRib3R0b21sZWZ0KHBhZGRpbmcsJHQsICRyLCAkYiwgJGwpO1xyXG59XHJcbkBtaXhpbiBydGwtcGFkZGluZy1sZWZ0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KHBhZGRpbmcsJHJ0bC1sZWZ0LCR2YWx1ZSk7XHJcbn1cclxuQG1peGluIHJ0bC1wYWRkaW5nLXJpZ2h0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KHBhZGRpbmcsJHJ0bC1yaWdodCwkdmFsdWUpO1xyXG59XHJcblxyXG4vLyBCT1JERVJcclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLWxlZnQgKCR2YWx1ZSkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLWluaGVyaXQoYm9yZGVyLCRydGwtbGVmdCwkdmFsdWUpO1xyXG59XHJcbkBtaXhpbiBydGwtYm9yZGVyLXJpZ2h0ICgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1pbmhlcml0KGJvcmRlciwkcnRsLXJpZ2h0LCR2YWx1ZSk7XHJcbn1cclxuXHJcbi8vIFBPU0lUSU9OXHJcblxyXG5AbWl4aW4gcnRsLWxlZnQgKCR2YWx1ZSkge1xyXG4gICN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICAjeyRydGwtbGVmdH06IGF1dG87XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBydGwtcmlnaHQgKCR2YWx1ZSkge1xyXG4gICN7JHJ0bC1yaWdodH06ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAjeyRydGwtcmlnaHR9OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENMRUFSXHJcblxyXG5AbWl4aW4gcnRsLWNsZWFyLWxlZnQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZShjbGVhciwgJHJ0bC1sZWZ0KTtcclxufVxyXG5AbWl4aW4gcnRsLWNsZWFyLXJpZ2h0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUoY2xlYXIsICRydGwtcmlnaHQpO1xyXG59XHJcblxyXG4vLyBURVhULUFMSUdOXHJcblxyXG5AbWl4aW4gcnRsLXRleHQtYWxpZ24tbGVmdCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKHRleHQtYWxpZ24sICRydGwtbGVmdCk7XHJcbn1cclxuQG1peGluIHJ0bC10ZXh0LWFsaWduLXJpZ2h0ICgpIHtcclxuICBAaW5jbHVkZSBydGwtYmFzZS1zaW1wbGUodGV4dC1hbGlnbiwgJHJ0bC1yaWdodCk7XHJcbn1cclxuQG1peGluIHJ0bC10ZXh0LWFsaWduLWNlbnRlciAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKHRleHQtYWxpZ24sICRydGwtY2VudGVyKTtcclxufVxyXG5cclxuLy8gRkxPQVRcclxuXHJcbkBtaXhpbiBydGwtZmxvYXQtbGVmdCAoKSB7XHJcbiAgQGluY2x1ZGUgcnRsLWJhc2Utc2ltcGxlKGZsb2F0LCAkcnRsLWxlZnQpO1xyXG59XHJcbkBtaXhpbiBydGwtZmxvYXQtcmlnaHQgKCkge1xyXG4gIEBpbmNsdWRlIHJ0bC1iYXNlLXNpbXBsZShmbG9hdCwgJHJ0bC1yaWdodCk7XHJcbn1cclxuXHJcbi8vIEJBQ0tHUk9VTkQtUE9TSVRJT05cclxuXHJcbkBtaXhpbiBydGwtYmFja2dyb3VuZC1wb3NpdGlvbi1sZWZ0ICgkdmVydGljYWwpIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRydGwtbGVmdCAkdmVydGljYWw7XHJcbiAgLnJ0bCAmIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246JHJ0bC1yaWdodCAkdmVydGljYWw7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBydGwtYmFja2dyb3VuZC1wb3NpdGlvbi1yaWdodCAoJHZlcnRpY2FsKSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjokcnRsLXJpZ2h0ICR2ZXJ0aWNhbDtcclxuICAucnRsICYge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjokcnRsLWxlZnQgJHZlcnRpY2FsO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHJ0bC1iYWNrZ3JvdW5kLXBvc2l0aW9uLXBlcmNlbnQgKCR2ZXJ0aWNhbCwgJGhvclBlcmNlbnQpIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRob3JQZXJjZW50ICR2ZXJ0aWNhbDtcclxuICAucnRsICYge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjoxMDAlIC0gJGhvclBlcmNlbnQgJHZlcnRpY2FsO1xyXG4gIH1cclxufVxyXG5cclxuLy8gVEVYVC1TSEFET1cgJiBCT1gtU0hBRE9XXHJcblxyXG5AbWl4aW4gcnRsLXRleHQtc2hhZG93ICgkeCwgJHJlc3QpIHtcclxuICB0ZXh0LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgLnJ0bCAmIHtcclxuICAgIHRleHQtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gIH1cclxufVxyXG5AbWl4aW4gcnRsLWJveC1zaGFkb3cgKCR4LCAkcmVzdCkge1xyXG4gIC1tb3otYm94LXNoYWRvdzogJHggJHJlc3Q7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkeCAkcmVzdDtcclxuICBib3gtc2hhZG93OiAkeCAkcmVzdDtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMSAqICR4ICRyZXN0O1xyXG4gICAgYm94LXNoYWRvdzogLTEgKiAkeCAkcmVzdDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJPUkRFUi1SQURJVVNcclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLXJhZGl1cy10b3ByaWdodCAoJHRsLCAkdHIsICRiciwgJGJsKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkdGwsICR0ciwgJGJyLCAkYmw7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkdGwsICR0ciwgJGJyLCAkYmw7XHJcbiAgYm9yZGVyLXRvcC1yYWRpdXM6ICR0bCwgJHRyLCAkYnIsICRibDtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkdHIsICR0bCwgJGJsLCAkYnI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICR0ciwgJHRsLCAkYmwsICRicjtcclxuICAgIGJvcmRlci10b3AtcmFkaXVzOiAkdHIsICR0bCwgJGJsLCAkYnI7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtdG9wcmlnaHQgKCR2YWx1ZSkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLXRvcC0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skcnRsLXJpZ2h0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRydGwtcmlnaHR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQgKCR2YWx1ZSkge1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHJ0bC1yaWdodH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gIC5ydGwgJiB7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skcnRsLWxlZnR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLXJpZ2h0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci1ib3R0b20tI3skcnRsLXJpZ2h0fS1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcnRsLWJvcmRlci1yYWRpdXMtdG9wbGVmdCAoJHZhbHVlKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcCN7JHJ0bC1sZWZ0fTogJHZhbHVlO1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgYm9yZGVyLXRvcC0jeyRydGwtbGVmdH0tcmFkaXVzOiAkdmFsdWU7XHJcbiAgLnJ0bCAmIHtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtcmlnaHR9OiAkdmFsdWU7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLXJpZ2h0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRydGwtbGVmdH06IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICAgIGJvcmRlci10b3AtI3skcnRsLWxlZnR9LXJhZGl1czogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBydGwtYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0ICgkdmFsdWUpIHtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tI3skcnRsLWxlZnR9OiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICBib3JkZXItYm90dG9tLSN7JHJ0bC1sZWZ0fS1yYWRpdXM6ICR2YWx1ZTtcclxuICAucnRsICYge1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1yaWdodH06ICR2YWx1ZTtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtcmlnaHR9LXJhZGl1czogJHZhbHVlO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbSN7JHJ0bC1sZWZ0fTogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgYm9yZGVyLWJvdHRvbS0jeyRydGwtbGVmdH0tcmFkaXVzOiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG4iLCIvLyBGdW5jdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFBvc2l0aW9uIG1peGluXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQHBhcmFtIFtzdHJpbmddICRwb3NpdGlvbjogcG9zaXRpb24gdHlwZVxuLy8gQHBhcmFtIFtsaXN0XSAkYXJnczogbGlzdCBvZiBvZmZzZXRzIGFuZCB2YWx1ZXNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uLCAkYXJncykge1xuICAgIEBlYWNoICRvIGluIHRvcCByaWdodCBib3R0b20gbGVmdCB7XG4gICAgICAgICRpOiBpbmRleCgkYXJncywgJG8pO1xuICAgICAgICBAaWYgJGlcbiAgICAgICAgICAgIGFuZCAkaSArIDEgPD0gbGVuZ3RoKCRhcmdzKVxuICAgICAgICAgICAgYW5kIHR5cGUtb2YoIG50aCgkYXJncywgJGkgKyAxKSApID09IG51bWJlciB7XG4gICAgICAgICAgICAjeyRvfTogbnRoKCRhcmdzLCAkaSArIDEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG59XG5cblxuLy8gQWJzb2x1dGUgcG9zaXRpb25pbmcgbWl4aW5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBAcGFyYW0gW2xpc3RdICRhcmdzOiBsaXN0IG9mIG9mZnNldHMgYW5kIHZhbHVlc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBtaXhpbiBhYnNvbHV0ZSgkYXJncykge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAkYXJncyk7XG59XG5cbi8vIEFycm93IG1peGluXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQHBhcmFtIFtzdHJpbmddICRkaXJlY3Rpb246IGFycm93IGRpcmVjdGlvblxuLy8gQHBhcmFtIFtsaXN0XSAkcG9zaXRpb246IGxpc3Qgb2Ygb2Zmc2V0cyBhbmQgdmFsdWVzXG4vLyBAcGFyYW0gW2NvbG9yXSAkY29sb3IgKGluaGVyaXQpOiBhcnJvdyBjb2xvclxuLy8gQHBhcmFtIFtudW1iZXJdICRzaXplICgxZW0pOiBhcnJvdyBzaXplXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIHRyaWFuZ2xlKCRkaXJlY3Rpb24sICRwb3NpdGlvbiwgJGNvbG9yOiBjdXJyZW50Q29sb3IsICRzaXplOiAxZW0pIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhlIGRpcmVjdGlvbiBpcyB2YWxpZFxuICAgIEBpZiBub3QgaW5kZXgodG9wIHJpZ2h0IGJvdHRvbSBsZWZ0LCAkZGlyZWN0aW9uKSB7XG4gICAgICAgIEB3YXJuIFwiRGlyZWN0aW9uIG11c3QgYmUgb25lIG9mIHRvcCwgcmlnaHQsIGJvdHRvbSBvciBsZWZ0LlwiO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUoJHBvc2l0aW9uKTsgLy8gUG9zaXRpb25cbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDApOyAvLyBTaXplXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIGJvcmRlci0je29wcG9zaXRlLXBvc2l0aW9uKCRkaXJlY3Rpb24pfTogJHNpemUgKiAxLjUgc29saWQgJGNvbG9yO1xuICAgICAgICAkcGVycGVuZGljdWxhci1ib3JkZXJzOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSB0b3Agb3IgJGRpcmVjdGlvbiA9PSBib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICAgJHBlcnBlbmRpY3VsYXItYm9yZGVycztcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IG9yICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogICAgJHBlcnBlbmRpY3VsYXItYm9yZGVycztcbiAgICAgICAgfVxuICAgIH1cbn1cbiBcbi8vIEZvbnQgc2l6ZSAtIHJlbVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGZ1bmN0aW9uIHBhcnNlSW50KCRuKSB7IC8qIDIgKi9cbiAgQHJldHVybiAkbiAvICgkbiAqIDAgKyAxKTtcbn1cblxuQG1peGluIGZvbnQtc2l6ZSgkcHJvcGVydHksICR2YWx1ZXMpIHtcbiAgJHB4IDogKCk7IC8qIDMgKi9cbiAgJHJlbTogKCk7IC8qIDMgKi9cblxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7IC8qIDQgKi9cblxuICAgIEBpZiAkdmFsdWUgPT0gMCBvciAkdmFsdWUgPT0gYXV0byB7IC8qIDUgKi9cbiAgICAgICRweCA6IGFwcGVuZCgkcHggLCAkdmFsdWUpO1xuICAgICAgJHJlbTogYXBwZW5kKCRyZW0sICR2YWx1ZSk7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgJHVuaXQ6IHVuaXQoJHZhbHVlKTsgICAgLyogNiAqL1xuICAgICAgJHZhbDogcGFyc2VJbnQoJHZhbHVlKTsgLyogNiAqL1xuXG4gICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHsgIC8qIDcgKi9cbiAgICAgICAgJHB4IDogYXBwZW5kKCRweCwgICR2YWx1ZSk7XG4gICAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAoJHZhbCAvIDEwICsgcmVtKSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBcInJlbVwiIHsgLyogNyAqL1xuICAgICAgICAkcHggOiBhcHBlbmQoJHB4LCAgKCR2YWwgKiAxMCArIHB4KSk7XG4gICAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcHggPT0gJHJlbSB7ICAgICAvKiA4ICovXG4gICAgI3skcHJvcGVydHl9OiAkcHg7ICAvKiA5ICovXG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3BlcnR5fTogJHB4OyAgLyogOSAqL1xuICAgICN7JHByb3BlcnR5fTogJHJlbTsgLyogOSAqL1xuICB9XG59XG5cblxuLy89PSBCb3JkZXJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gYm9yZGVyKCAkY29vcmRpbmF0ZXM6IDAgMCAwIDAsICRjb2xvdXI6ICRib3JkZXItY29sb3IsICRzdHlsZTogc29saWQgKSB7XG4gICAgJHRvcDogbnRoKCRjb29yZGluYXRlcywgMSk7XG4gICAgJHJpZ2h0OiBudGgoJGNvb3JkaW5hdGVzLCAyKTtcbiAgICAkYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKTtcbiAgICAkbGVmdDogbnRoKCRjb29yZGluYXRlcywgNCk7XG4gICAgQGlmIG5vdCh1bml0bGVzcygkdG9wKSkge1xuICAgICAgICBib3JkZXItdG9wOiAkdG9wICRzdHlsZSAkY29sb3VyO1xuICAgIH1cbiAgICBAaWYgbm90KHVuaXRsZXNzKCRyaWdodCkpIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkcmlnaHQgJHN0eWxlICRjb2xvdXI7XG4gICAgfVxuICAgIEBpZiBub3QodW5pdGxlc3MoJGJvdHRvbSkpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbSAkc3R5bGUgJGNvbG91cjtcbiAgICB9XG4gICAgQGlmIG5vdCh1bml0bGVzcygkbGVmdCkpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRsZWZ0ICRzdHlsZSAkY29sb3VyO1xuICAgIH1cbn1cblxuLy8gU3RhdGUgYW5kIGhvdmVyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIHN0YXRlLWhvdmVyLWRlZmF1bHQoJHRpbWUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyLWNvbG9yKXtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAkdGltZSk7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuQG1peGluIHN0YXRlLWhvdmVyKCR0aW1lLCRoZWlnaHQsJGNvbG9yKXtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMCAwIDAgJGNvbG9yKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAkdGltZSBjdWJpYy1iZXppZXIoMC44LDAsMCwxKSk7XG4gICAgJjpob3ZlcntcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgJHRpbWUgY3ViaWMtYmV6aWVyKDAuOCwwLDAsMSkpO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgKC0kaGVpZ2h0KSAwIDAgJGNvbG9yKTtcbiAgICB9XG59XG5cbkBtaXhpbiBzdGF0ZS1ob3Zlci0yKCRiYWNrZ3JvdW5kKXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IC01MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgc2NhbGUoMCk7XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcigxMDAlLDEwMCUpO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuM3MsMHMpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoMC4xOSwxLDAuMjIsMSkgMC4zcyxvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMTksMSwwLjIyLDEpKTtcbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBzY2FsZSgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjZzIGN1YmljLWJlemllcigwLjE5LDEsMC4yMiwxKSxvcGFjaXR5IDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksMSwwLjIyLDEpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi8vPT0gRmxleGlibGUgTGF5b3V0XG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AbWl4aW4gZmxleGJveCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4lZmxleGJveCB7XG4gICAgQGluY2x1ZGUgZmxleGJveDtcbn1cblxuQG1peGluIGlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuJWlubGluZS1mbGV4IHtcbiAgICBAaW5jbHVkZSBpbmxpbmUtZmxleDtcbn1cblxuXG5cbi8vIFJldGluYSBTcHJpdGUgTWl4aW5zXG5cbkBtaXhpbiByZXRpcmVhbGFuZC1zcHJpdGUtYmFja2dyb3VuZCgkdXJsLCRwb3NpdGlvbiwkd2lkdGgsJGhlaWdodCl7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHVybCk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHBvc2l0aW9uO1xuICAgIHdpZHRoOiR3aWR0aDtcbiAgICBoZWlnaHQ6JGhlaWdodDtcbn1cblxuLyoqIGVsZW1lbnRzIG1peGlucyAqKi9cblxuQG1peGluIGJvcmRlci1leGNsdWRlLXRvcCgkYm9yZGVyLWRlZXAsICRib3JkZXItdHlwZSAsICRib3JkZXItY29sb3IgKXtcbiAgIGJvcmRlci1ib3R0b206ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItbGVmdDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1yaWdodDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbn1cblxuQG1peGluIGJvcmRlci1leGNsdWRlLWJvdHRvbSgkYm9yZGVyLWRlZXAsICRib3JkZXItdHlwZSAsICRib3JkZXItY29sb3IgKXtcbiAgIGJvcmRlci10b3A6ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItbGVmdDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1yaWdodDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbn1cblxuQG1peGluIGJvcmRlci1leGNsdWRlLWxlZnQoJGJvcmRlci1kZWVwLCAkYm9yZGVyLXR5cGUgLCAkYm9yZGVyLWNvbG9yICl7XG4gICBib3JkZXItdG9wOiAkYm9yZGVyLWRlZXAgJGJvcmRlci10eXBlICRib3JkZXItY29sb3IgO1xuICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1yaWdodDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbn1cblxuQG1peGluIGJvcmRlci1leGNsdWRlLXJpZ2h0KCRib3JkZXItZGVlcCwgJGJvcmRlci10eXBlICwgJGJvcmRlci1jb2xvciApe1xuICAgYm9yZGVyLXRvcDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbiAgIGJvcmRlci1ib3R0b206ICRib3JkZXItZGVlcCAkYm9yZGVyLXR5cGUgJGJvcmRlci1jb2xvciA7XG4gICBib3JkZXItbGVmdDogJGJvcmRlci1kZWVwICRib3JkZXItdHlwZSAkYm9yZGVyLWNvbG9yIDtcbn1cblxuQG1peGluIHJvdW5kZWQtY29ybmVycyAoJHJhZGl1cykge1xuICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgLW1zLWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAtby1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGNsZWFyYm94c3R5bGUoKXtcbiAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICBib3JkZXI6bm9uZTtcbn1cblxuQG1peGluIGNsZWFyZmxvYXQoKXtcbiAgIGZsb2F0OiBub25lO1xuICAgd2lkdGg6IDEwMCU7XG59XG4gXG5cbkBtaXhpbiB0cmFuc2Zvcm0tc3R5bGUoJHRyYW5zZm9ybS1zdHlsZSl7XG4gICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogJHRyYW5zZm9ybS1zdHlsZTsgICAgICAgICAgICAgICAgICAgIFxuICAgLW1vei10cmFuc2Zvcm0tc3R5bGU6ICR0cmFuc2Zvcm0tc3R5bGU7ICAgICAgICAgICAgICAgICAgICBcbiAgIC1tcy10cmFuc2Zvcm0tc3R5bGU6ICR0cmFuc2Zvcm0tc3R5bGU7ICAgICAgICAgICAgICAgICAgICBcbiAgIC1vLXRyYW5zZm9ybS1zdHlsZTogJHRyYW5zZm9ybS1zdHlsZTsgICAgICAgICAgICAgICAgICAgIFxuICAgdHJhbnNmb3JtLXN0eWxlOiAkdHJhbnNmb3JtLXN0eWxlO1xufVxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkYmFja2ZhY2UtdmlzaWJpbGl0eSl7XG4gICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkYmFja2ZhY2UtdmlzaWJpbGl0eTsgIC8qIFczQyAqL1xuICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkYmFja2ZhY2UtdmlzaWJpbGl0eTsgLyogU2FmYXJpICYgQ2hyb21lICovXG4gICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICRiYWNrZmFjZS12aXNpYmlsaXR5OyAvKiBGaXJlZm94ICovXG4gICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogJGJhY2tmYWNlLXZpc2liaWxpdHk7IC8qIEludGVybmV0IEV4cGxvcmVyICovXG4gICAtby1iYWNrZmFjZS12aXNpYmlsaXR5OiAkYmFja2ZhY2UtdmlzaWJpbGl0eTsgLyogT3BlcmEgKi9cbn1cblxuQG1peGluIGFuaW1hdGlvbi10aGVtZSgkYW5pbWF0aW9uLWR1cmF0aW9uLCAkYW5pbWF0aW9uLWZpbGwtbW9kZSwgJGFuaW1hdGlvbi1uYW1lKXtcbiAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uOyBcbiAgIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uOyBcbiAgIC1tcy1hbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247IFxuICAgLW8tYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uOyBcbiAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjsgXG5cbiAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGFuaW1hdGlvbi1maWxsLW1vZGU7XG4gICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRhbmltYXRpb24tZmlsbC1tb2RlO1xuICAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6ICRhbmltYXRpb24tZmlsbC1tb2RlO1xuICAgLW8tYW5pbWF0aW9uLWZpbGwtbW9kZTogJGFuaW1hdGlvbi1maWxsLW1vZGU7XG4gICBhbmltYXRpb24tZmlsbC1tb2RlOiAkYW5pbWF0aW9uLWZpbGwtbW9kZTtcblxuICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbi1uYW1lO1xuICAgLW1vei1hbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbi1uYW1lOyBcbiAgIC1tcy1hbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbi1uYW1lOyBcbiAgIC1vLWFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7IFxuICAgYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb24tbmFtZTsgXG59XG5cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpe1xuICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgLW1zLXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAtby1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTsgICAgXG59XG5cbi8qKlxuKiBUcmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiBwcm9wZXJ0eUBtaXhpbiBcbiovXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuIFxuXG5AbWl4aW4gYXBwZWFyYW5jZSgkYXBwZWFyYW5jZSl7XG4gICBhcHBlYXJhbmNlOiAkYXJndW1lbnRzO1xuICAgLW1vei1hcHBlYXJhbmNlOiAkYXJndW1lbnRzO1xuICAgLW1zLWFwcGVhcmFuY2U6ICRhcmd1bWVudHM7XG4gICAtby1hcHBlYXJhbmNlOiAkYXJndW1lbnRzO1xuICAgLXdlYmtpdC1hcHBlYXJhbmNlOiAkYXJndW1lbnRzOyBcbn1cblxuXG4vKmJhY2tncm91bmQgUkdCQVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1peGluIHJnYmEoJGNvbG91ciwgJGFscGhhKVxue1xuICAgJGFscGhhQ29sb3VyOiBoc2xhKGh1ZSgkY29sb3VyKSwgc2F0dXJhdGlvbigkY29sb3VyKSwgbGlnaHRuZXNzKCRjb2xvdXIpLCAkYWxwaGEpO1xuICAgJGllQWxwaGFDb2xvdXI6IGFyZ2IoJGFscGhhQ29sb3VyKTsgICBcbiAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXI7IFxuICAgYmFja2dyb3VuZC1jb2xvcjogJGFscGhhQ29sb3VyOyAgICAgICBcbiAgIHpvb206IDE7IFxuICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcXDk7ICAgXG4gICBcbiAgIFxufVxuXG5cbkBtaXhpbiBib3JkZXItcmdiYSgkY29sb3VyLCAkYWxwaGEpXG57XG4gICAkYWxwaGFDb2xvdXI6IGhzbGEoaHVlKCRjb2xvdXIpLCBzYXR1cmF0aW9uKCRjb2xvdXIpLCBsaWdodG5lc3MoJGNvbG91ciksICRhbHBoYSk7XG4gICAkaWVBbHBoYUNvbG91cjogYXJnYigkYWxwaGFDb2xvdXIpOyAgIFxuICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyOyBcbiAgIGJvcmRlci1jb2xvcjogJGFscGhhQ29sb3VyOyAgICAgICBcbiAgIHpvb206IDE7IFxuICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudFxcOTtcbiAgXG59XG5cbi8vY29weXJpZ2h0XG5cbi8vc3ViIGhlYWRpbmcgKGgyLGgzKSBkZWZpbmVcbkBtaXhpbiBzdWItaGVhZGluZyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjb2xvcjogJGJsb2NrLWhlYWRpbmctY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQ6IDYwMCAxNHB4LzIwcHggJGZvbnQtY3VzdG9tO1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbiAgbWluLXdpZHRoOiAxMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAkdGhlbWUtYmctZGVmYXVsdDtcbn1cbkBtaXhpbiBzdWItaGVhZGluZy1iZWZvcmUge1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICByaWdodDogNDUlO1xuICB0b3A6IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICR0aGVtZS1iZy1kZWZhdWx0O1xufVxuXG4vL2JhY2tncm91bmRcbkBtaXhpbiBiYWNrZ3JvdW5kLWhvdmVyIHtcbiAgY29sb3I6ICRiYXNlLXRleHQtY29sb3I7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjI4LCA1MCwgNDAsIDAuMyk7XG59XG5cbi8qaW5saW5lLWJsb2NrXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbkBtaXhpbiBpbmxpbmUtYmxvY2soKSB7XG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAqZGlzcGxheTogaW5saW5lO1xuICAgem9vbTogMTsgICBcbn1cblxuLy8gU2l6aW5nIHNob3J0Y3V0c1xuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuXG5cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJveC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAuYm94LWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAgLmJveC1jb250ZW50IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG4gICYgPiAuYm94LWNvbnRlbnR7XG4gICAgICBib3JkZXItY29sb3I6JGJvcmRlcjtcbiAgfVxuICAmID4gLmJveC1mb290ZXIge1xuICAgICsgLmJveC1jb2xsYXBzZSAuYm94LWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBidXR0b24tM2QoJHN1ZmZpeGNsYXNzLCAkaGVpZ2h0M2QgLCRjb2xvcjNkKXtcbiAgYm9yZGVyOiAwO1xuICBAaWYgKCRzdWZmaXhjbGFzcyA9PSBcImVtcHR5XCIpIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW8tYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1tcy1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgfVxuICBAZWxzZSB7XG4gICYuYnRuLSN7JHN1ZmZpeGNsYXNzfXtcbiAgICAgYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtby1ib3gtc2hhZG93OiAwICRoZWlnaHQzZCAkY29sb3IzZCBpbnNldDtcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMCAkaGVpZ2h0M2QgJGNvbG9yM2QgaW5zZXQ7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgICAgLW1zLWJveC1zaGFkb3c6IDAgJGhlaWdodDNkICRjb2xvcjNkIGluc2V0O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWludmVyc2UoICRzdWZmaXhjbGFzcywgICRjb2xvciAsJGJhY2tncm91bmQgKXtcbiBcbiAgJi5idG4tI3skc3VmZml4Y2xhc3N9e1xuICAgICAgJjpob3ZlcnsgXG4gICAgICAgIGNvbG9yOiRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUoICRzdWZmaXhjbGFzcywgJGNvbG9yLCAkaG92ZXJjb2xvciApe1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAmLmJ0bi0jeyRzdWZmaXhjbGFzc317XG4gICAgICBjb2xvcjokY29sb3I7XG4gICAgICAmOmhvdmVye1xuICAgICAgICAgIGNvbG9yOiRob3ZlcmNvbG9yO1xuICAgICAgfVxuICB9XG59XG4vLy8gYnV0dG9uIHZhcmlhbnQgb3V0bGluZVxuQG1peGluIGJ1dHRvbi12YXJpYW50LW91dGxpbmUoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yaG92ZXIsICRiZ2hvdmVyLCAkYm9yZGVyaG92ZXIgKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGNvbG9yaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnaG92ZXI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcmhvdmVyIDtcbiAgfVxuICAub3BlbiAmIHsgJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3Job3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdob3ZlcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyaG92ZXIgO1xuICB9IH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gIC5vcGVuICYgeyAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfSB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuLy8gaWNvbiB2YXJpYW50IGludmVyc2VcblxuQG1peGluIGljb25zLWludmVyc2UoICRzdWZmaXhjbGFzcywgICRjb2xvciAsJGJhY2tncm91bmQgKXtcbiBcbiAgJi5pY29ucy0jeyRzdWZmaXhjbGFzc317XG4gICAgICAmOmhvdmVyeyBcbiAgICAgICAgY29sb3I6JGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgfVxuICB9XG59XG4vLyBpY29uIHZhcmlhbnQgb3V0bGluZVxuXG5AbWl4aW4gaWNvbnMtb3V0bGluZSggJHN1ZmZpeGNsYXNzLCAkY29sb3IsICRob3ZlcmNvbG9yICl7XG4gICYuaWNvbnMtI3skc3VmZml4Y2xhc3N9e1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6JGNvbG9yO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgICBjb2xvcjokaG92ZXJjb2xvcjtcbiAgICAgIH1cbiAgfVxufVxuXG4vLyBCbG9ja1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJsb2NrLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBcbiAgYm9yZGVyOiBzb2xpZCAxcHggJGJvcmRlcjtcblxuICAmIC4jeyRibG9jay1oZWFkaW5nLXNlbGVjdG9yfSB7XG4gICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn0ge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbiAgJiA+IC4jeyRibG9jay1wcmVmaXh9LWZvb3RlciB7XG4gICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stcHJlZml4fS1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG5cbi8qKioqL1xuLyoqKiovXG5AbWl4aW4gY29udGFpbmVyLWxheW91dC12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRsaW5rY29sb3IgKXtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGF7XG4gICAgICBjb2xvcjokbGlua2NvbG9yOyBcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7IFxuICAgICAgfSAgXG4gICAgfSAgICAgICAgIFxufVxuXG5AbWl4aW4gd2lkZ2V0LWhlYWRpbmctc3R5bGUoKXtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9ZG90LWJnLnBuZycpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCBib3R0b207XG4gICAgICAmLnN0eWxlLTIge1xuICAgICAgICBib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgICAgIC1tb3otYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAgICAgYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAud2lkZ2V0LWhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9ZG90LWJnLnBuZycpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGNlbnRlcjtcbiAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgYm94LW9yZGluYWwtZ3JvdXA6IDI7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgICAgICAgICAtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xuICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICNhY2FjYWM7XG4gICAgICAgIH1cbiAgICAgICAgYS5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zdHlsZS0zIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDIzJSAwO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnN0eWxlLTQge1xuICAgICAgICAvL2JhY2tncm91bmQ6IHVybCgnI3skaW1hZ2UtdGhlbWUtcGF0aH1oZWFkaW5nLXRpdGxlLWJnLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgYm90dG9tO1xuICAgICAgICAud2lkZ2V0LWhlYWRpbmcge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLndpZGdldC1oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24sIC53aWRnZXQtZGVzY3tcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgICBhLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgICBzcGFuLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgICAmLm5vbGluayB7XG4gICAgICAgIC53aWRnZXQtaGVhZGluZyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbn1cblxuQG1peGluIHdpZGdldC1zcGVjaWNhbC1zdHlsZSgpe1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLndpZGdldC1oZWFkaW5ne1xuICAgIGZsZXg6IDE7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpe1xuICAgICAgZmxleDogYXV0bztcbiAgICB9XG4gIH1cbiAgJi50ZXh0LXdoaXRlIHtcbiAgICAud2lkZ2V0LWhlYWRpbmcge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfSAgICBcbiAgfVxuICAuZGVzY3JpcHRpb257XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgICY6aG92ZXJ7XG4gICAgICBjb2xvcjogZGFya2VuKCR0aGVtZS1jb2xvciw1JSk7XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cbn0iLCIvLyBCb3ggU2l6ZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBtaXhpbiBib3gtc2l6ZSgkYmFja2dyb3VuZCwgJHBhZGRpbmctdG9wLCRwYWRkaW5nLWJvdHRvbSl7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZy10b3A7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmctYm90dG9tO1xyXG59XHJcblxyXG4vLyBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlciwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvci1ob3ZlciwgJGJvcmRlci1ob3ZlciwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIGJvcmRlcjogJGJvcmRlcjtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xyXG4gICAgICAgIGJvcmRlcjogJGJvcmRlci1ob3ZlcjtcclxuICAgIH1cclxuICAgIC5mYSwuaWNvbntcclxuICAgICAgICBmb250LXNpemU6ICRpY29uLWZvbnQtc2l6ZS1iYXNlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQmxvY2tcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gYmxvY2stdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICYgLiN7JGJsb2NrLWhlYWRpbmctc2VsZWN0b3J9IHtcclxuICAgICAgICAmIHNwYW46YmVmb3JlLCAmIHNwYW46YWZ0ZXJ7IGJhY2tncm91bmQ6JHdoaXRlOyB9XHJcbiAgICAgICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XHJcbiAgICAgICAgKyAuI3skYmxvY2stcHJlZml4fS1jb2xsYXBzZSAuI3skYmxvY2stY29udGVudC1zZWxlY3Rvcn0ge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiAuI3skYmxvY2stcHJlZml4fS1mb290ZXIge1xyXG4gICAgICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLXByZWZpeH0tYm9keSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmxvY2stZWxlbWVudHMtc3R5bGVzKCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIsICR0ZXh0LWNvbG9yLCAkdGV4dC1jb2xvci1wcmltYXJ5KXtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAgIGJhY2tncm91bmQ6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgJiAuI3skYmxvY2staGVhZGluZy1zZWxlY3Rvcn0ge1xyXG4gICAgICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xyXG4gICAgICAgICsgLiN7JGJsb2NrLXByZWZpeH0tY29sbGFwc2UgLiN7JGJsb2NrLWNvbnRlbnQtc2VsZWN0b3J9IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmID4gLiN7JGJsb2NrLXByZWZpeH0tZm9vdGVyIHtcclxuICAgICAgICArIC4jeyRibG9jay1wcmVmaXh9LWNvbGxhcHNlIC4jeyRibG9jay1wcmVmaXh9LWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKiovXHJcbkBtaXhpbiBjb250YWluZXItbGF5b3V0LXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGxpbmtjb2xvciwgICR0b3BiYXItbGluay1jb2xvci1ob3ZlciApe1xyXG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYXtcclxuICAgICAgICBjb2xvcjokbGlua2NvbG9yO1xyXG4gICAgfVxyXG4gICAgYTpob3ZlcntcclxuICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLz09IElubGluZSBibG9ja1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gaW5saW5lLWJsb2NrICgkaGFzbGF5b3V0IDogdHJ1ZSl7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgQGlmICRoYXNsYXlvdXQgPT0gdHJ1ZSB7XHJcbiAgICAgICAgLmx0LWllOCAmIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB6b29tOiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy89PSB2ZXJ0aWNhbCBibG9ja1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdmVydGljYWwtY2VudGVyKCAkd2lkdGg6IDEwMHB4LCAkaGVpZ2h0OiAxMDBweCkge1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuQG1peGluIHZlcnRpY2FsLWFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcclxuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLy89PSBUcmFuc2xhdGUgWCAtIFkgLSBaXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2xhdGVYKCR4KSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgkeCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR4KTsgLy8gSUU5IG9ubHlcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgkeCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHgpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNsYXRlWSgkeSkge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkeSk7IC8vIElFOSBvbmx5XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHkpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR5KTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zbGF0ZVooJHopIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKCR6KTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooJHopOyAvLyBJRTkgb25seVxyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKCR6KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigkeik7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNmb3JtXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2Zvcm0oJGFyZ3VtZW50KXtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIC1tcy10cmFuc2Zvcm06ICgkYXJndW1lbnQpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiAoJGFyZ3VtZW50KTtcclxuICAgIHRyYW5zZm9ybTogKCRhcmd1bWVudCk7XHJcbn1cclxuXHJcbi8vPT0gVHJhbnNmb3JtXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lMSwkdGltZTIpe1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6ICgkdGltZTEsJHRpbWUyKTtcclxuICAgIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAoJHRpbWUxLCR0aW1lMik7XHJcbn1cclxuXHJcbi8vPT0gQmFja2dyb3VuZCBTaXplXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBiYWNrZ3JvdW5kLXNpemUoJHNpemUxLCRzaXplMikge1xyXG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6ICgkc2l6ZTEsJHNpemUyKTtcclxuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICAtbXMtYmFja2dyb3VuZC1zaXplOiAoJHNpemUxLCRzaXplMik7XHJcbiAgICAtby1iYWNrZ3JvdW5kLXNpemU6ICgkc2l6ZTEsJHNpemUyKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogKCRzaXplMSwkc2l6ZTIpO1xyXG59XHJcblxyXG4vLz09IEJhY2tncm91bmQgb3JpZ2luXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBiYWNrZ3JvdW5kLW9yaWdpbigkdmFsdWUxLCR2YWx1ZTIpe1xyXG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICAtbW96LWJhY2tncm91bmQtb3JpZ2luOiAoJHZhbHVlMSwkdmFsdWUyKTtcclxuICAgIC1tcy1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICAtby1iYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogKCR2YWx1ZTEsJHZhbHVlMik7XHJcbn1cclxuXHJcbi8vPT0gQm9yZGVyIHJhZGl1c1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgICBib3JkZXItcmFkaXVzICAgICAgICAgOiAkcmFkaXVzO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzIDogJHJhZGl1cztcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1cyAgICA6ICRyYWRpdXM7XHJcbiAgICAtbXMtYm9yZGVyLXJhZGl1cyAgICAgOiAkcmFkaXVzO1xyXG4gICAgLW8tYm9yZGVyLXJhZGl1cyAgICAgIDogJHJhZGl1cztcclxufVxyXG5cclxuLy89PSBUZXh0IFNoYWRvd1xyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdGV4dC1zaGFkb3coJHNoYWRvdykge1xyXG4gICAgdGV4dC1zaGFkb3cgICAgICAgICA6ICRzaGFkb3c7XHJcbiAgICAtd2Via2l0LXRleHQtc2hhZG93IDogJHNoYWRvdztcclxuICAgIC1tb3otdGV4dC1zaGFkb3cgICAgOiAkc2hhZG93O1xyXG4gICAgLW1zLXRleHQtc2hhZG93ICAgICA6ICRzaGFkb3c7XHJcbiAgICAtby10ZXh0LXNoYWRvdyAgICAgIDogJHNoYWRvdztcclxufVxyXG5cclxuLy89PSBUcmFuc2Zvcm0gT3JpZ2luXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW5YLCRvcmlnaW5ZKSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4gOiAkb3JpZ2luWCAkb3JpZ2luWTtcclxuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbiAgICA6ICRvcmlnaW5YICRvcmlnaW5ZO1xyXG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW4gICAgIDogJG9yaWdpblggJG9yaWdpblk7IC8vIElFOSBvbmx5XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luICAgICAgICAgOiAkb3JpZ2luWCAkb3JpZ2luWTtcclxufVxyXG5cclxuLy89PSBhcHBlYXJhbmNlXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBhcHBlYXJhbmNlKCkge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlIDogbm9uZTtcclxuICAgIC1tb3otYXBwZWFyYW5jZSAgICA6IG5vbmU7XHJcbiAgICAtby1hcHBlYXJhbmNlICAgICAgOiBub25lO1xyXG4gICAgLW1zLWFwcGVhcmFuY2UgICAgIDogbm9uZTtcclxuICAgIGFwcGVhcmFuY2UgICAgICAgICA6IG5vbmU7XHJcbn1cclxuXHJcbi8vPT0gc2VsZWN0aW9uXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRwcmVmaXhlczogKFwiLW1vei1cIiwgXCJcIik7XHJcbkBtaXhpbiBzZWxlY3Rpb24oJGNvbG9yLCAkYmFja2dyb3VuZCkge1xyXG4gICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xyXG4gICAgICAgIDo6I3skcHJlZml4fXNlbGVjdGlvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy89PSBhbmltYXRpb24gZmlsbCBtb2RlXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsKSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsO1xyXG4gICAgLW1vei1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbDtcclxuICAgIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsO1xyXG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGw7XHJcbn1cclxuXHJcbi8vPT0gZmlsdGVyXHJcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBmaWx0ZXIoJGFyZ3VtZW50KXtcclxuICAgIGZpbHRlciAgICAgICAgIDogJGFyZ3VtZW50O1xyXG4gICAgLXdlYmtpdC1maWx0ZXIgOiAkYXJndW1lbnQ7XHJcbiAgICAtbW96LWZpbHRlciAgICA6ICRhcmd1bWVudDtcclxuICAgIC1vLWZpbHRlciAgICAgIDogJGFyZ3VtZW50O1xyXG4gICAgLW1zLWZpbHRlciAgICAgOiAkYXJndW1lbnQ7XHJcbn1cclxuXHJcbi8vIENsZWFyIExpc3RzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQG1peGluIGNsZWFyLWxpc3QoKXtcclxuICAgIHBhZGRpbmcgICAgOiAwO1xyXG4gICAgbWFyZ2luICAgICA6IDA7XHJcbiAgICBsaXN0LXN0eWxlIDogbm9uZTtcclxufVxyXG5cclxuLy8gRm9ybWFydCBsaXN0cyB3aWRnZXRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gbGlzdHMtc3R5bGUoKSB7XHJcbiAgICB1bCxvbHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhci1saXN0KCk7XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2hpbGRyZW57XHJcbiAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBsaTpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogQmFzaWMgU3R5bGVzXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLm9wYWxlc3RhdGUtcG9wdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5wb3B1cC1oZWFkIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgID4gc3BhbiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG4gIC5wb3B1cC1ib2R5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MHB4O1xuICAgIHotaW5kZXg6IDk5OTtcblxuICAgIHBhZGRpbmc6IDIwcHggMzBweCAzMHB4O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coNXB4IDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgLjgpKTtcbiAgICBtaW4td2lkdGg6IDQwMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBoNiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgY29sb3I6ICMyMjI7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdHJpYW5nbGUodG9wLCAwcHgsICRoZWFkZXItYmctY29sb3IsIDEwcHgpO1xuICAgICAgbWFyZ2luOiAwIDAgMCAtMTBweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogLTE0cHg7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAmLmFjdGl2ZSAucG9wdXAtYm9keSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgfVxuICAucG9wdXAtY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4ub3BhbGVzdGF0ZS1yZXN1bHRzIHtcbiAgc3BhbiB7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICB9XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5tZWRpYS1kcmFnLWRyb3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBib3JkZXI6IDJweCBkYXNoZWQgI2RmZGZkZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4O1xufVxuXG4ubWVkaWEtZHJhZy1kcm9wIGg0IHtcbiAgY29sb3I6ICM4YjkyOTM7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG4ubWVkaWEtZHJhZy1kcm9wIC5mYSB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4ucm93LWdyb3VwLWZlYXR1cmVzIHtcbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4vLy8gbGFiZWwgLy9cbnVsLnByb3BlcnR5LXN0YXR1cyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjlkMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICB9XG59XG5cbi5saXN0LWRldGFpbHMge1xuICAucHJvcGVydHktbWV0YS1saXN0IHtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjNzKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgID4gbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgbWluLXdpZHRoOiAzMHB4O1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAuYWRkIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sYWJlbC1wcm9wZXJ0eSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3OXB4KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmFkZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTc5cHgpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTIzXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC4zcyk7XG4gICAgICB9XG4gICAgfVxuICAgIC5pY29uLXByb3BlcnR5LWFyZWFzaXplOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA0N1wiO1xuICAgIH1cbiAgICAuaWNvbi1wcm9wZXJ0eS1iZWRyb29tczpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYyMzZcIjtcbiAgICB9XG4gICAgLmljb24tcHJvcGVydHktYmF0aHJvb21zOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjJjZFwiO1xuICAgIH1cbiAgICAuaWNvbi1wcm9wZXJ0eS1wYXJraW5nOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjFiOVwiO1xuICAgIH1cbiAgICAuaWNvbi1wcm9wZXJ0eS1hbW91bnRyb29tczpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYxYWRcIjtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbGcpIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAuYWRkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmxhYmVsLXByb3BlcnR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgID4gbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgLmRldGFpbHMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYXV0aG9yLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xufVxuXG4jb3BhbGVzdGF0ZS1tYXAtcHJldmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI29wYWxlc3RhdGUtbWFwLXByZXZpZXcgKyAuY29udGFpbmVyIC5zZWFyY2gtcHJvcGVyaWVzLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5tYXBQbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC03MHB4O1xuICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICBzcGFuLmZhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLy8gQ2Fyb3VzZWxcbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgJi5vcGFsZXN0YXRlLWxlZnQge1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG4gICYub3BhbGVzdGF0ZS1yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMzBweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gIH1cbn1cblxuLnByb3BlcnR5LXByZXZpZXcge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAub3dsLWNhcm91c2VsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgLjMpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgICYub3BhbGVzdGF0ZS1yaWdodCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5wcm9wZXJ0eS1hdHRhY2htZW50cyB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIExvYWRpbmcgbWFwXG4uc2stZm9sZGluZy1jdWJlIHtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVooNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVooNDVkZWcpO1xufVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogNTAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5zay1mb2xkaW5nLWN1YmUgLnNrLWN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1mb2xkQ3ViZUFuZ2xlIDIuNHMgaW5maW5pdGUgbGluZWFyIGJvdGg7XG4gIGFuaW1hdGlvbjogc2stZm9sZEN1YmVBbmdsZSAyLjRzIGluZmluaXRlIGxpbmVhciBib3RoO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xufVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooOTBkZWcpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlWig5MGRlZyk7XG59XG5cbi5zay1mb2xkaW5nLWN1YmUgLnNrLWN1YmUzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlWigxODBkZWcpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlWigxODBkZWcpO1xufVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlNCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMjcwZGVnKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMjcwZGVnKTtcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTI6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTM6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC42cztcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuOXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC45cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWZvbGRDdWJlQW5nbGUge1xuICAwJSwgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoLTE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgtMTgwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDI1JSwgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDkwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVZKDE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWSgxODBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1mb2xkQ3ViZUFuZ2xlIHtcbiAgMCUsIDEwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoLTE4MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAyNSUsIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogQXJjaGl2ZSBQcm9wZXJ0eSBQYWdlOiBBcmNoaXZlICsgVGF4b25vbXkgUGFnZVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLm9wYWxlc2F0ZS1hcmNoaXZlLXRvcCB7XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgI29wYWxlc3RhdGUtc29ydGFibGUtZm9ybSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgICBjb250ZW50OiBcIlxcZjBkN1wiO1xuICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxuICAuc29ydCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuc29ydGFibGUtZHJvcGRvd24ge1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICBtaW4td2lkdGg6IDIxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgbWluLXdpZHRoOiAxNzBweDtcbiAgICB9XG4gIH1cbiAgPiBkaXYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAuZmxleC1jZW50ZXIge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgPiBkaXYge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgLmZsZXgtY2VudGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxNXB4IDI1cHggMCAyNXB4O1xuICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAtMTVweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIC5mbGV4LWNlbnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC5wdWxsLWxlZnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5saXN0LXByb3BlcnR5LXN0YXR1cyB7XG4gICAgICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3Byb3BlcnR5LWZpbHRlci1zdGF0dXMge1xuICA+IHNwYW4ge1xuICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbiAgLmxpc3QtcHJvcGVydHktc3RhdHVzIHtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIGxpIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguMzVzKTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtdHlwZS1hcmNoaXZlLW9wYWxlc3RhdGVfcHJvcGVydHkge1xuICAub3BhbGVzdGF0ZS1yb3dzIGFydGljbGUgLmVudHJ5LXN1bW1hcnkge1xuICAgIG1pbi1oZWlnaHQ6IDQ2cHg7XG4gIH1cbiAgLm9wYWxlc2F0ZS1hcmNoaXZlLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgLm9wYWxlc2F0ZS1hcmNoaXZlLXRvcCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gZ3JpZCBsYXlvdXRcbi5wcm9wZXJ0eS1hZGRyZXNzIHtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLm9wYWxlc3RhdGUtcm93cyB7XG4gIC5maXJzdC1jaGlsZCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgYXJ0aWNsZSB7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgLmFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB0b3A6IDM1cHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAucHJvcGVydHktZ3JvdXAtbGFiZWwge1xuICAgICAgei1pbmRleDogNDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDdweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgfVxuICAgIGRpdi5wcm9wZXJ0eS1sYWJlbCB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgLmxhYmVsLWZlYXR1cmVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxuICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1ib3gtaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIGhlYWRlciAucHJvcGVydHktc3RhdHVzIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIGhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAucHJvcGVydHktcHJpY2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgICAgcGFkZGluZzogMCA3cHg7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS10b2dnbGUtZmF2b3JpdGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgJi5mYS1oZWFydC1vIHtcbiAgICAgICAgY29sb3I6ICNiYmJiYmI7XG4gICAgICB9XG4gICAgICAmLmZhLWhlYXJ0IHtcbiAgICAgICAgY29sb3I6ICNmZjQwNDA7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuZW50cnktY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDI1cHggMTVweCAyNXB4O1xuICAgICAgaS5wcm9wZXJ0eS10b2dnbGUtZmF2b3JpdGUge1xuICAgICAgICAmLmZhLWhlYXJ0LW8ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAmLmZhLWhlYXJ0IHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuYXV0aG9yLWxpbmsge1xuICAgICAgLmF2YXRhciB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvcGVydHktbGlzdC1zdHlsZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgLmFicy1jb2wtaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMzBweCAwO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1hYnMtYm90dG9tIHtcbiAgICAgIH1cbiAgICAgIC5lbnRyeS1zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgfVxuICAgICAgLnByb3BlcnR5LWJveC1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4tdmlldy1tb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb3BlcnR5LXByaWNlIHtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIC5wcm9wZXJ0eS1wcmljZS1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvcGVydHktbGlzdC1zdHlsZS12MiB7XG4gICAgICAuYWJzLWNvbC1pdGVtIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmVudHJ5LXN1bW1hcnkge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAyNXB4IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcbiAgICAgICAgY29sb3I6ICM4ODg4ODg7XG4gICAgICAgID4gaDUge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgICAgID4gcCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMjhweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIC5tb3JlLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saXN0LWRldGFpbHMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAucHJvcGVydHktcHJpY2Uge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1hZGRyZXNzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY29udGVudC1saXN0IHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMzBweCAyMHB4O1xuICAgICAgICAgIC5idG4tZGV0YWlscyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb3BlcnR5LWxpc3Qtc3R5bGUtdjMge1xuICAgICAgaGVhZGVyIHtcbiAgICAgICAgLnByb3BlcnR5LXN0YXR1cyBsaSxcbiAgICAgICAgLnByb3BlcnR5LWdyb3VwLWxhYmVsIC5sYWJlbC1mZWF0dXJlZCxcbiAgICAgICAgLnByb3BlcnR5LWxhYmVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAzcHggMTJweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgICAgLnByb3BlcnR5LWdyb3VwLWxhYmVsIHtcbiAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGVudC1saXN0IHtcbiAgICAgICAgLmFicy1jb2wtaXRlbSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgICAuaXRlbS1oZWFkZXIge1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZW50cnktdGl0bGUge1xuICAgICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yIGVhc2Utb3V0O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmxpc3RpbmdfX2RldGFpbHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIC5idG4tZGV0YWlscyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgICAgLmxpc3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4IDE1cHggMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICAgIC5wcm9wZXJ0eS1saXN0LXN0eWxlLXY0IHtcbiAgICAgIC5wcm9wZXJ0eS1saXN0IHtcbiAgICAgICAgLmNvbnRlbnQtbGlzdCB7XG4gICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDdweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RpbmdfX2RldGFpbHMge1xuICAgICAgICAgIC5vcGVuLWhvdXNlcyB7XG4gICAgICAgICAgICAub3Blbi1ob3VzZXNfX2J0biB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggOHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIzNTViO1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm9wZW4taG91c2VzX19kZXNjIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubXktcHJvcGVydGllcy1ib3R0b20ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgLmluZm8tdGl0bGUge1xuICAgICAgICAuZW50cnktc3VtbWFyeSB7XG4gICAgICAgICAgJi5mbGV4LWNlbnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC5wcm9wZXJ0eS1hZGRyZXNzIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpe1xuICAub3BhbGVzdGF0ZS1yb3dzID4ucm93e1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5vcGFsZXN0YXRlX3Byb3BlcnR5IHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4vLy8gcHJvcGVydGllcyBsaXN0XG4ucHJvcGVydHktbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVhZGVyIHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gICYuY29udGVudC1wcm9wZXJ0eS1saXN0LXYyIHtcbiAgICAucHJvcGVydHktYm94LWltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICAgIC5jb250ZW50LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICBsZWZ0OiAyNXB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICAucHJvcGVydHktcHJpY2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb3BlcnR5LWFkZHJlc3Mge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmVhdHVyZWQgUHJvcGVydGllc1xuLm9wYWxlc2F0ZS1mZWF0dXJlZC1wcm9wZXJ0eSB7XG4gIG1hcmdpbjogMCAtMTVweDtcbiAgLml0ZW0ge1xuICAgIGFydGljbGUge1xuICAgICAgLnByb3BlcnR5LXByaWNlIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb3BlcnR5LWxpc3Qge1xuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5lbnRyeS1zdW1tYXJ5IHtcbiAgICAgICAgY29sb3I6ICNhY2FjYWM7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLnN0eWxlLTIge1xuICAgICAgYXJ0aWNsZSB7XG4gICAgICAgIC5wcm9wZXJ0eS1tZXRhIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgbWluLXdpZHRoOiAxOTVweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNyk7XG4gICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE0MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuICAmLnN0eWxlLTR7XG4gICAgbWFyZ2luOiAwIC0ycHg7XG4gICAgLml0ZW17XG4gICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC5yb3d7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zdHlsZS0yIHtcbiAgICAgIC5vd2wtY29udHJvbHMge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KXtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIC5pdGVte1xuICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLyBNYW51YWwgUHJvcGVydHlcbi5tYW51YWwtcHJvcGVydGllcyB7XG4gIC5vd2wtY2Fyb3VzZWwtcGxheSAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzMzNTQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjMzMzU0O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgJi5yaWdodCB7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgfVxuICB9XG4gIC5vcGFsZXN0YXRlLXJvd3Mge1xuICAgIGFydGljbGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMTVweCAyNXB4IDI1cHggMjVweDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb3BlcnR5LXByaWNlIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgICAgIC5wcm9wZXJ0eS1wcmljZS1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiA0MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktbWV0YS1saXN0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjogMCAtOHB4IDE1cHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAubGFiZWwtcHJvcGVydHkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc3R5bGUtMSwgJi5zdHlsZS0yIHtcbiAgICAuaXRlbSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYXJ0aWNsZS5vcGFsZXN0YXRlX3Byb3BlcnR5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4ucHJvcGVydHktdjIge1xuICAuZW50cnktY29udGVudCB7XG4gICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1hZGRyZXNzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2ZTYzNjI7XG4gICAgfVxuICAgIC5tb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXgtd2lkdGg6IDI2NHB4O1xuICAgICAgLm51bWJlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGEwM2Y7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjMzRkO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9wZXJ0eS12MyB7XG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubW9yZSB7XG4gICAgICAucHJpY2Uge1xuICAgICAgICBwYWRkaW5nOiAgMCAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUzNTU5O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICAgICAgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubnVtYmVye1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5wcm9wZXJ0eS12Mixcbi5wcm9wZXJ0eS12M3tcbiAgLmVudHJ5LWNvbnRlbnR7XG4gICAgQG1lZGlhKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAuZW50cnktdGl0bGUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1hZGRyZXNzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgIH1cbiAgICAgIC5tb3JlIHtcbiAgICAgICAgLnByaWNle1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICAubnVtYmVye1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucHJvcGVydHktdjQge1xuICAuZW50cnktY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAucHJvcGVydHlfX21haW4taXRlbSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDMwcHggMjBweCAzMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgZmxleDogMjtcbiAgICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1tZXRhLWxpc3Qge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIC5wcm9wZXJ0eV9fc3RhdCB7XG4gICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLnByaWNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMzU1YjtcbiAgICAgICAgZmxleDogMjtcbiAgICAgICAgcGFkZGluZzogNTVweCAwO1xuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubW9yZSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogMTVweCA3NXB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5wcm9wZXJ0eV9fbWFpbi1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDEwcHggMjBweDtcbiAgICAgICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnByb3BlcnR5LWFkZHJlc3Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnByb3BlcnR5LW1ldGEtbGlzdCB7XG4gICAgICAgICAgLnByb3BlcnR5X19maWd1cmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxpbmsge1xuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAubW9yZSB7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53aWRnZXQud2lkZ2V0LWVzdGF0ZS1wcm9wZXJ0eSB7XG4gIC53aWRnZXQtY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm93bC1jYXJvdXNlbCB7XG4gICAgLml0ZW0ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLndpZGdldCB7XG4gIC5zZWFyY2gtcHJvcGVyaWVzLWZvcm0ge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICB9XG4gICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBib3JkZXItY29sb3I6ICNlZWVlZWU7XG4gICAgfVxuICAgIC5idG4tc2VhcmNoIHtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHRoZW1lLWNvbG9yLCA1JSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9wYWwtc2xpZGUtcmFuZ2VyIHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAubm9VaS1vcmlnaW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRncmF5O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2lkZ2V0LXByb3BlcnRpZXMge1xuICBhcnRpY2xlIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICB9XG4gIGFydGljbGU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLm1lZGlhLWxlZnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1ib3gtaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzIyMjIyMiAwJSwgcmdiYSgzNCwgMzQsIDM0LCAwKSAxMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmVudHJ5LXRpdGxlIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yIGVhc2Utb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgLnByb3BlcnR5LXByaWNlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAucHJvcGVydHktcHJpY2UtbGFiZWwge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLm1lZGlhIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5tZWRpYS1sZWZ0LFxuICAgIC5tZWRpYS1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWVkaWEtYm9keSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBQcm9wZXJ0aWVzIFN0YXRpY1xuLndpZGdldC1lc3RhdGUtYnJvd3NlLXNpbmdsZS1jYXRlZ29yeSxcbi53aWRnZXQtZXN0YXRlLWJyb3dzZS1zaW5nbGUtdHlwZSB7XG4gIC5wcm9wZXJ0eS1jYXRlZ29yeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLnByb3BlcnR5LWNhdGVnb3J5LWltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMXMpO1xuICAgIH1cbiAgICAuc3RhdGljLWNvbnRlbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigxcyk7XG4gICAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1jYXRlZ29yeS1jb3VudCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgxLjEpO1xuICAgICAgfVxuICAgICAgLnN0YXRpYy1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53aWRnZXQtZXN0YXRlLWJyb3dzZS1zaW5nbGUtY2F0ZWdvcnkge1xuICAucHJvcGVydHktY2F0ZWdvcnkgLnN0YXRpYy1jb250ZW50IGg1IHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gIH1cbn1cblxuLndpZGdldC1lc3RhdGUtYnJvd3NlLXNpbmdsZS1sb2NhdGlvbiB7XG4gIC5wcm9wZXJ0eS1jYXRlZ29yeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBzY2FsZSgxLjEpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIH1cbiAgfVxuICAuc3RhdGljLWNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvcGVydHktY2F0ZWdvcnktaW1hZ2Uge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMXMpO1xuICAgIH1cbiAgfVxuICAmLnN0eWxlLWNhcm91c2VsIHtcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG4gICAgLm93bC1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgIH1cbiAgICAub3dsLWNvbnRyb2xzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cbiAgfVxufVxuXG4ub3ZlcmxhcC1jYXJvdXNlbC1wcm9wZXJ0eSB7XG4gIC5vd2wtY2Fyb3VzZWwtcGxheSB7XG4gICAgLmNhcm91c2VsLWNvbnRyb2xzIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgIGxlZnQ6IDE4JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMTglO1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDJweDtcbiAgfVxuICAub3BhbGVzdGF0ZS1yb3dzIHtcbiAgICBtYXJnaW46IDAgLTI1JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGFydGljbGUge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAxNSUgNTBweCA1MHB4O1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktcHJpY2Utd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnByb3BlcnR5LXByaWNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZW50cnktdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktbWV0YS1saXN0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luOiAwIC04cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICNiN2I3Yjc7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtaW4td2lkdGg6IDg1cHg7XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGk6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktYm94LWltYWdlOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjNzKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCkgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAwLjUpKSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAucHJvcGVydHktYm94LWltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSguMyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgLm9wYWxlc3RhdGUtcm93cyB7XG4gICAgICBhcnRpY2xlIHtcbiAgICAgICAgLnByb3BlcnR5LXByaWNlLXdyYXBwZXIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAucHJvcGVydHktcHJpY2Uge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub3BhbGVzYXRlLWFnZW50LWdyaWQtdjIge1xuICAmLm9wYWxlc3RhdGUtcm93cyB7XG4gICAgYXJ0aWNsZSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAuYWdlbnQtYm94LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgfVxuICAgICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgICAucHJvcGVydHktbGFiZWwge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkdGhlbWUtY29sb3Itc2Vjb25kO1xuICAgICAgfVxuICAgICAgJi5hZ2VudC13aXRoLWJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmNmY2ZjY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIC5hZ2VudC13aXRoLWJ1dHRvbl9fd3JhcHBlciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5hZ2VudC1ib3gtaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAzNyU7XG4gICAgICAgICAgLmFnZW50LXdpdGgtYnV0dG9uX193cmFwcGVyIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWdlbnQtd2l0aC1idXR0b25fX2FnZW50IHtcbiAgICAgICAgICB3aWR0aDogNjMlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuYWdlbnQtd2l0aC1idXR0b25fX2FnZW50LW5hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFnZW50LXdpdGgtYnV0dG9uX19hZ2VudC1wb3NpdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgICAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgICAuYWdlbnQtd2l0aC1idXR0b25fX2N0YSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICAuYWdlbnQtYm94LWltYWdlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnN0eWxlLWNhcm91c2VsIHtcbiAgICAub3dsLWl0ZW0ge1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgIH1cbiAgfVxuICAuY2Fyb3VzZWwtY29udHJvbHMge1xuICAgICYuc3R5bGUtMiB7XG4gICAgICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgICAgICYubGVmdCB7XG4gICAgICAgICAgcmlnaHQ6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUHJvcGVydGllcyBDYXJvdXNlbFxuLm9wYWxlc2F0ZS1wcm9wZXJ0aWVzLWNhcm91c2VsIHtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xufVxuXG4ub3BhbGVzYXRlLXJlY2VudC1wcm9wZXJ0eSB7XG4gIC5jYXJvdXNlbC1jb250cm9scyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogLTgwcHg7XG4gIH1cbiAgLmNhcm91c2VsLWNvbnRyb2wge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5vcGFsZXNhdGUtcm93IHtcbiAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICAmLmZsZXgtY2VudGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFNpbmdsZSBQcm9wZXJ0eSBQYWdlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucHJvcGVydHktaW5mb3JtYXRpb24ge1xuICB1bC5saXN0LWluZm8ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIH1cbiAgICAgICYucHJvcGVydHktbGFiZWwtYWRkcmVzcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgdWwubGlzdC1pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50LWJvdHRvbSBoNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnByb3BlcnR5LXNhbWUtYWdlbnQtc2VjdGlvbiB7XG4gIC5vcGFsZXN0YXRlX3Byb3BlcnR5IHtcbiAgICAucHJvcGVydHktbGlzdC1zdHlsZS12MiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAucHJvcGVydHktbWV0YS1saXN0ID4gbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cbiAgICB9XG4gIH1cbiAgLm9wYWxlc3RhdGUtcm93cyBhcnRpY2xlIC5wcm9wZXJ0eS1saXN0LXN0eWxlLXYyIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5vcGFsZXNhdGUtZmVhdHVyZWQtcHJvcGVydHkge1xuICAmLnN0eWxlLTIge1xuICAgIC5vd2wtY29udHJvbHMge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNhcm91c2VsLWNvbnRyb2wuc3R5bGUtMyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvcGVydHktZ3JpZC1zdHlsZS12NSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnByb3BlcnR5LWxpc3Qge1xuICAgIC5wcm9wZXJ0eS1ncm91cC1sYWJlbCB7XG4gICAgICB0b3A6IDExMHB4O1xuICAgIH1cbiAgICAucHJvcGVydHktc3RhdHVzIHtcbiAgICAgIHRvcDogODBweDtcbiAgICB9XG4gICAgaGVhZGVyIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5saXN0LWRldGFpbHMgLnByb3BlcnR5LW1ldGEtbGlzdCBpOmJlZm9yZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuICAuY29udGVudC1saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMTBweCAyNXB4IDIzcHg7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzA1MDYwNiAwJSwgcmdiYSg1LCA2LCA2LCAwLjk5KSAxJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAuYWJzLWNvbC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgLmZsZXgtY2VudGVyIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cbiAgICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC5hYnMtY29sLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMjBweCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvcGVydHktYWRkcmVzcyB7XG4gICAgICAgICAgY29sb3I6ICMyMjI7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvcGVydHktbWV0YSB7XG4gICAgICAgIG1pbi13aWR0aDogMTI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hYnNvbHV0ZSB7XG4gICAgdG9wOiAxMTBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5vcGFsZXN0YXRlLXJvd3Mge1xuICAgICYuc3R5bGUtMiB7XG4gICAgICAuaXRlbSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5hYnMtY29sLWl0ZW0ge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYXJ0aWNsZSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbi5vcGFsZXN0YXRlX3Byb3BlcnR5IC5lbnRyeS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC5pbmZvLXRpdGxlIHtcbiAgICBmbGV4OiBhdXRvO1xuICB9XG59XG5cbi5nb29nbGUtbWFwLXRhYnMge1xuICAubmF2Lm5hdi10YWJzIHtcbiAgICA+IGxpIHtcbiAgICAgID4gYSB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBAaW5jbHVkZSBzaXplKDQwcHgsIDQwcHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzMzNTQgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGFiLWNvbnRlbnQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ucHJvcGVydHktYnV0dG9uLWVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMzBweDtcbiAgdG9wOiAtMjVweDtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDJweCAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5wcm9wZXJ0eS1tYXAtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgI3Byb3BlcnR5LW1hcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gICNwcm9wZXJ0eS1zZWFyY2gtcGxhY2VzIHtcbiAgICBib3R0b206IDI1cHg7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICAuYnRuLW1hcC1zZWFyY2gge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgc3F1YXJlKDQwcHgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgJi5mYS1ob3NwaXRhbC1vIHtcbiAgICAgICAgICBjb2xvcjogI2IzZTE4MDtcbiAgICAgICAgfVxuICAgICAgICAmLmZhLXBsdXMtc3F1YXJlIHtcbiAgICAgICAgICBjb2xvcjogI2VjOGY3MztcbiAgICAgICAgfVxuICAgICAgICAmLmZhLWdyYWR1YXRpb24tY2FwIHtcbiAgICAgICAgICBjb2xvcjogIzhmYmZlNDtcbiAgICAgICAgfVxuICAgICAgICAmLmZhLXNob3BwaW5nLWJhc2tldCB7XG4gICAgICAgICAgY29sb3I6ICM5ZDRjZmE7XG4gICAgICAgIH1cbiAgICAgICAgJi5mYS1zdWJ3YXkge1xuICAgICAgICAgIGNvbG9yOiAjZmFiZDQ3O1xuICAgICAgICB9XG4gICAgICAgICYuZmEtYmFuayB7XG4gICAgICAgICAgY29sb3I6ICM2ZWFkZmI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGVtIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBwYWRkaW5nOiAxcHggM3B4O1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC4zNXMpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgICAmOmhvdmVyLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc3R5bGUtMiB7XG4gICAgLmdvb2dsZS1tYXAtdGFicyB7XG4gICAgICAubmF2LXRhYnMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsaSBhIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNjUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlLW91dDtcbiAgICAgICAgICAucHJvcGVydHlfX2NvbnRyb2wtaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBBcmNoaXZlIEFnZW50IHBhZ2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLm9wYWxlc3RhdGVfYWdlbnQge1xuICAmLmFnZW50LWdyaWQtc3R5bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMzVweCAhaW1wb3J0YW50O1xuICB9XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgLmFnZW50LWJveC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgfVxuICAuYWdlbnQtam9iIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuYWdlbnQtaW5mbyB7XG4gICAgcGFkZGluZzogMTVweCAwIDVweDtcbiAgICBjb2xvcjogIzgwODA4MDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbiAgLm1vcmUtbGluayB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuICB9XG4gIC5iby1zb2NpYWwtaWNvbnMge1xuICAgIG1hcmdpbjogMCAtM3B4O1xuICAgIFtjbGFzc149XCJiby1zb2NpYWwtXCJdIHtcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguM3MpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYnItc29jaWFsLXNoYXJlIHtcbiAgICAuYm8tc29jaWFsLWljb25zIFtjbGFzc149XCJiby1zb2NpYWwtXCJdIGkge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBvc3QtdGh1bWJuYWlsIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmFnZW50LWdvb2dsZS1tYXAtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICA+IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cbiAgLnRlYW0taGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLmFnZW50LWxldmVscyB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY29sb3I6ICNmYWZhZmE7XG4gICAgfVxuICB9XG4gIC5hZ2VudC1ib3gtaW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hZ2VudC1mb290ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAucHJvcGVydHktbGFiZWwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci1zZWNvbmQ7XG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWdlbnQtczIge1xuICAgIC50ZWFtLWhlYWRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc29jaWFscyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTEsIDMzLCA3NiwgMC45KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2Utb3V0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQwcHgsIDApO1xuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgLmZhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgICAuYWdlbnQtYm9keSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgfVxuICAgIC5hZ2VudC1ib3gtdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuYWdlbnQtaW5mbyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICNhY2FjYWM7XG4gICAgfVxuICAgIC5pbmZvIHtcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5zb2NpYWxzIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICB9XG4gIC5hZ2VudC1zMyB7XG4gICAgLnRlYW0taGVhZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgPiBkaXYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZ2VudC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gICAgLmFnZW50LWJveC10aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuYWdlbnQtaW5mbyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICNhY2FjYWM7XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1sYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgQGluY2x1ZGUgc3F1YXJlKDMwcHgpO1xuICAgICAgaSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50ZWFtLXYyIHtcbiAgICAuYWdlbnQtYm94LWltYWdlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgLnRlYW0tdjF7XG4gICAgLnRvb2x0aXB7XG4gICAgICAudG9vbHRpcC1hcnJvd3tcbiAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wb3N0LXR5cGUtYXJjaGl2ZS1vcGFsZXN0YXRlX2FnZW50IHtcbiAgLm9wYWxlc3RhdGVfYWdlbnQge1xuICAgIC5hZ2VudC1ib3gtaW1hZ2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFNpbmdsZSBBZ2VudCBwYWdlXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5zaW5nbGUge1xuICAuYm8tc29jaWFsLWljb25zIHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjb2xvcjogI2FkYWRhZDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgY29sb3IgZWFzZS1vdXQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi5zaW5nbGVfX2NvbnRhY3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGkge1xuICAgIGEsIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yIGVhc2Utb3V0O1xuICAgIH1cbiAgICAuZmEge1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB3aWR0aDogMS4yODU3MTQyOWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogMC4zcyBjb2xvciBlYXNlLW91dDtcbiAgICAgICYuZmEtbW9iaWxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGEsIC5mYSB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaW5nbGUtb3BhbGVzdGF0ZV9hZ2VudCB7XG4gIC5jb250YWN0LWZvcm1fX2hlYWRlci1jb250YWluZXIge1xuICAgIC50ZWFtLWhlYWRlciB7XG4gICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgICAuYWdlbnQtbGV2ZWxzIHtcbiAgICAgICAgYm90dG9tOiAtMzBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250YWN0LWluZm8ge1xuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBwIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hZ2VudC1ib3gtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYShtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAuY29udGFjdC1pbmZvIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWdlbnQtYm94IHtcbiAgICAuYWdlbnRzLXNpbmdsZV9faW5uZXIge1xuICAgICAgLmFnZW50LXByZXZpZXcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLmFnZW50LXByZXZpZXcge1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgLmFnZW50LWJveC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIH1cbiAgICAgIC5hZ2VudC1qb2Ige1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgICAuYm8tc29jaWFsLWljb25zIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuYWdlbnQtYm94LWJpbyB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgLmFnZW50LXByZXZpZXcge1xuICAgICAgLnRlYW0taGVhZGVyIHtcbiAgICAgICAgLnByb3BlcnR5LWxhYmVsIHtcbiAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5hZ2VudC1sZXZlbHMge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgY29sb3I6ICNmYWZhZmE7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMpIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5vcGFsZXN0YXRlLWNvbnRhY3QtZm9ybSB7XG4gICAgLmJ0biB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxuICAubXktcHJvcGVydHkge1xuICAgIHBhZGRpbmc6IDQwcHggMCAxMDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDE0MHB4IDAgNzBweDtcbiAgICB9XG4gIH1cbiAgLmZvcm0tY29udGFjdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIC5jb250YWN0LWZvcm1fX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICB9XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBtaW4taGVpZ2h0OiAxMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgfVxuICB9XG59XG5cbmJvZHkuYXV0aG9yIHtcbiAgLmFnZW50LWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAuYWdlbnQtYm94LWJpbyB7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIH1cbn1cblxuLm9wYWxlc3RhdGVfYWdlbnQge1xuICAuYWdlbnQtYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGgvMjtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hZ2VudC1jb250YWN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgICBwYWRkaW5nOiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC0gNSkgJGdyaWQtZ3V0dGVyLXdpZHRoICRncmlkLWd1dHRlci13aWR0aDtcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweCA3cHg7XG4gICAgfVxuICB9XG4gIC5hZ2VudC1ib3gtbWV0YSB7XG4gICAgPiBkaXYge1xuICAgICAgJi5hZ2VudC1ib3gtcG9zaXRpb24ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgIH1cbiAgICAgICYuYWdlbnQtYm94LXBob25lIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFnZW50LWNvbnRhY3QtZm9ybS1jb250YWluZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBoMyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2Utb3V0O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCR0aGVtZS1jb2xvciwgNSUpO1xuICAgIH1cbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIG1pbi1oZWlnaHQ6IDExMHB4O1xuICB9XG59XG5cbi5zaW5nbGUtb3BhbGVzdGF0ZV9vZmZpY2Uge1xuICAuYWdlbnQtY29udGFjdC1mb3JtLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5wcm9wZXJ0eS1hZ2VudC1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnByb3BlcnR5LXNhbWUtYWdlbnQtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBGaW5kIEFnZW50IHBhZ2VcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnNlYXJjaC1hZ2VudHMtd3JhcCB7XG4gIC5vcGFsZXN0YXRlLXNlYXJjaC1hZ2VudHMtZm9ybSB7XG4gICAgbWFyZ2luOiAwIDAgODBweDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgLjEpKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLm9wYWxlc3RhdGUtc2VhcmNoLWFnZW50cy1mb3JtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLXNlY29uZDtcbiAgcGFkZGluZzogMTBweCAxNXB4IDE1cHg7XG4gIC5zZWFyY2gtYWdlbnQtdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGNvbG9yOiAkZ3JheS1kYXJrO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgfVxuICAuYnRuLXNlYXJjaCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NzlweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubm9VaS1oYW5kbGUge1xuICAgIGJhY2tncm91bmQ6ICNkYWRhZGE7XG4gIH1cbiAgLm5vVWktYmFja2dyb3VuZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICB9XG4gIC5vcGFsLXNsaWRlLXJhbmdlciB7XG4gICAgbGFiZWwge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogNDVweDtcbiAgICBjb2xvcjogJGdyYXktZGFyaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgbGluZS1oZWlnaHQ6IDMxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxuICAub3BhbC1yb3c6bGFzdC1jaGlsZCB7XG4gICAgLmNvbC1tZC0zIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAmLmNvbC1tZC00OmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRlYW0taGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuYWdlbnQtbGV2ZWxzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAucHJvcGVydHktbGFiZWwge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIEBpbmNsdWRlIHRyaWFuZ2xlKGJvdHRvbSwgMHB4LCAkYnJhbmQtd2FybmluZywgNDBweCk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcDogc29saWQgJGJyYW5kLXdhcm5pbmcgNDBweDtcbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdG9wOiAtMzVweDtcbiAgICAgIGxlZnQ6IDdweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogIE9mZmljZSBwYWdlIGFuZCBzdHlsZVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vLyBncmlkIHN0eWxlXG4ub2ZmaWNlLWdyaWQtc3R5bGUge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAub2ZmaWNlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgLmFnZW50LWJveC1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm9mZmljZS1ib2R5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMHB4O1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAkYm9yZGVyLWNvbG9yO1xuICAgIC5vZmZpY2UtbG9nbyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIG1heC13aWR0aDogNTBweDtcbiAgICB9XG4gICAgLm9mZmljZS1jb250ZW50IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggNXB4O1xuICAgIH1cbiAgfVxuICAub2ZmaWNlLWJveC1tZXRhIHtcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHggMjVweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggJGJvcmRlci1jb2xvcjtcbiAgICAub2ZmaWNlLWJveC1lbWFpbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICBpIHtcbiAgICAgIG1pbi13aWR0aDogMjBweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxNXB4O1xuICAgIH1cbiAgfVxuICAub2ZmaWNlLWJveC10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5wcm9wZXJ0eS1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgdHJpYW5nbGUoYm90dG9tLCAwcHgsICRicmFuZC13YXJuaW5nLCA0MHB4KTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiA0MHB4O1xuICAgIGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbG9yOiB5ZWxsb3c7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbiAgfVxuICAuYXV0aG9yLWxpbmsge1xuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtdHlwZS1hcmNoaXZlLW9wYWxlc3RhdGVfb2ZmaWNlIHtcbiAgLnBhZ2UtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gU2luZ2xlIE9mZmljZVxuLnNpbmdsZS1vcGFsZXN0YXRlX29mZmljZSB7XG4gIC5vcGFsZXN0YXRlX29mZmljZSB7XG4gICAgLm9mZmljZS10aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAucHJvcGVydHktbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBjb2xvcjogeWVsbG93O1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1hZ2VudC1jb250YWN0IHtcbiAgICAgIC5hZ2VudC1ib3gge1xuICAgICAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAuYm8tc29jaWFsLWljb25zIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm9wYWxlc3RhdGUtYm94IHtcbiAgICAgICYub2ZmaWNlLWFkZHJlc3MtbWFwIHtcbiAgICAgICAgI3Byb3BlcnR5LW1hcCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wcm9wZXJ0eS1vZmZpY2Utc2VjdGlvbiB7XG4gICAgLnByb3BlcnR5LW1ldGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgLmxhYmVsLXByb3BlcnR5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgLnByb3BlcnR5LW9mZmljZS1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub3BhbGVzdGF0ZS1ib3gge1xuICAmLnByb3BlcnR5LXNhbWUtYXV0aG9yLXNlY3Rpb24ge1xuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG59XG5cbi5vZmZpY2UtdGFicyB7XG4gIC5uYXYubmF2LXRhYnMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgPiBsaSB7XG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweCAwIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDMycHg7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMXB4IDAgMDtcbiAgICAgICAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWItY29udGVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICAub3BhbGVzdGF0ZS1ib3gge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAtMzBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1vZmZpY2Utc2VjdGlvbiB7XG4gICAgICBtYXJnaW46IC0zMHB4IC0zMHB4IC0zMXB4O1xuICAgIH1cbiAgICAub3BhbGVzYXRlLWFnZW50cyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cykge1xuICAgICAgICAuYWdlbnQtYm94LWltYWdlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRlYW0tdjEge1xuICAgIC50ZWFtLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMCAwO1xuICAgIH1cbiAgICAudGVhbS1pbmZvIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLnNpbmdsZS1vcGFsZXN0YXRlLWNvbnRhaW5lciB7XG4gID4gYXJ0aWNsZSB7XG4gICAgLnByb3BlcnR5LW9mZmljZS1zZWN0aW9uIHtcbiAgICAgID4gaDMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLm9wYWxlc3RhdGUtcm93cyBhcnRpY2xlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIHVsLnByb3BlcnR5LW1ldGEtbGlzdCB7XG4gICAgICAgIC5sYWJlbC1wcm9wZXJ0eSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1tZXRhLWxpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBpOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1saXN0IHtcbiAgICAgICAgLmFicy1jb2wtaXRlbTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hYnMtY29sLWl0ZW0ge1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAwIDMwcHg7XG4gICAgICB9XG4gICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgIC5wcm9wZXJ0eS1hYnMtYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAuZW50cnktY29udGVudC1ib3R0b20ge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgICAucHJvcGVydHktc3RhdHVzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1tZXRhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGhlbWUtY29sb3IsIC44KTtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIC5lbnRyeS1jb250ZW50LWJvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC50b29sdGlwIHtcbiAgICAgICAgJi50b3AgLnRvb2x0aXAtYXJyb3csXG4gICAgICAgICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3csXG4gICAgICAgICYudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgfVxuICAgICAgICAmLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgICAgICB9XG4gICAgICAgICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgICAgICB9XG4gICAgICAgICYuYm90dG9tIC50b29sdGlwLWFycm93LFxuICAgICAgICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93LFxuICAgICAgICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm9mZmljZS10YWJzIC5uYXYtdGFicyB7XG5cbiAgICB9XG4gIH1cbn1cblxuI29mZmljZS10ZWFtIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgYXJ0aWNsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ub3BhbGVzdGF0ZS1sb2FkLW1vcmUge1xuICBtYXJnaW46IDMwcHggMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBTaG9ydGNvZGVzIFN0eWxlc1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vLy8gc2VhcmNoIGZvcm1cbi5wcm9wZXJ0eS1zZWFyY2gtc3R5bGUye1xuICAuc2VhcmNoLXByb3Blcmllcy1mb3Jte1xuICAgIGxhYmVse1xuICAgICAgY29sb3I6ICRncmF5LWRhcms7XG4gICAgfVxuICAgICNvcGFsZXN0YXRlLXNlYXJjaC1mb3Jte1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgcGFkZGluZzogOXB4IDE1cHggMHB4O1xuICAgIH1cbiAgfVxufVxuLnNlYXJjaC1wcm9wZXJpZXMtZm9ybSB7XG4gIGNvbG9yOiAjYWNhY2FjO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gICNvcGFsZXN0YXRlLXNlYXJjaC1mb3JtIHtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggNHB4IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMzU1YjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuICAuYWR2YW5jZWQtZmllbGRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5idG4tc2VhcmNoIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLW91dDtcbiAgICBoZWlnaHQ6IDQxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvZHJvcGRvd24ucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogOTYlO1xuICB9XG4gIHVsLmxpc3QtaW5saW5lIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICBoMyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3OXB4KSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAjb3BhbGVzdGF0ZS1zZWFyY2gtZm9ybSxcbiAgLm9wYWxlc3RhdGUtc2VhcmNoLWZvcm0ge1xuICAgIC5vcGFsLXJvdyB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIC8qIFRoZSBDU1MgRm9yIFNlbGVjdCBEcm9wZG93biAqL1xuICAgICAgICA+IHNlbGVjdCB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogVGFyZ2V0dGluZyBXZWJraXQgYnJvd3NlcnMgb25seS4gRkYgd2lsbCBzaG93IHRoZSBkcm9wZG93biBhcnJvdyB3aXRoIHNvIG11Y2ggcGFkZGluZy4gKi9cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICAgICAgICAgID4gc2VsZWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHhcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgfVxuICBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQobWF4LXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuICAub3BhbC1zbGlkZS1yYW5nZXIge1xuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDlweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIH1cbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5jb3N0LXByaWNlLWNvbnRlbnQsXG4gIC5hcmVhLXJhbmdlLWNvbnRlbnQge1xuICAgIGxhYmVsIHtcbiAgICAgIGhlaWdodDogMzFweDtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3OXB4KSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm9wYWwtc2xpZGUtcmFuZ2VyIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIC5zbGlkZS1yYW5nZXItYmFyIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjb3BhbGVzdGF0ZS1zZWFyY2gtZm9ybS12IHtcbiAgICAuc2xpZGUtcmFuZ2VyLWJhciB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICAubWFpbi1saXN0aW5nX19mb3JtLXNlbGVjdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAubWFpbi1saXN0aW5nX19mb3JtLXJhZGlvIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5tYWluLWxpc3RpbmdfX2Zvcm0tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTBjXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWFpbi1saXN0aW5nX19mb3JtLWRlc2Mge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzg4ODg4ODtcbiAgICAgIH1cbiAgICAgIC5tYWluLWxpc3RpbmdfX2Zvcm0tcmFkaW86Y2hlY2tlZCB+IC5tYWluLWxpc3RpbmdfX2Zvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIC5vcGFsLXNsaWRlLXJhbmdlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAuYnRuLXNlYXJjaCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG59XG5cbi8vLyBzZWFyY2ggZm9ybSB2ZXJ0aWNhbFxuLm9wYWxlc3RhdGUtc2VhcmNoLXByb3BlcnRpZXMtdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAuc2VhcmNoLXByb3Blcmllcy1mb3JtIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgdWwubGlzdC1wcm9wZXJ0eS1zdGF0dXMsXG4gICAgdWwubGlzdC1pbmxpbmUge1xuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQobWF4LXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1zZWFyY2gge1xuICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZChtYXgtd2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9wYWxlc3RhdGUtc2VhcmNoLWZvcm0gPiAucm93OmZpcnN0LWNoaWxkID4gZGl2IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbi5zaWRlYmFyIHtcbiAgLndpZGdldC53aWRnZXRfb3BhbGVzdGF0ZV9zZWFyY2hfcHJvcGVydGllc193aWRnZXQge1xuICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAxNXB4IHJnYmEoMCwgMCwgMCwgLjEpKTtcbiAgICAuc2VhcmNoLXByb3Blcmllcy1mb3JtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgLnJvdzpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICB1bC5saXN0LWlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICB1bC5saXN0LXByb3BlcnR5LXN0YXR1cyxcbiAgICAgIHVsLmxpc3QtaW5saW5lIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ0bi1zZWFyY2gge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgICB9XG4gICAgICAub3BhbGVzdGF0ZS1zZWFyY2gtZm9ybSA+IC5yb3c6Zmlyc3QtY2hpbGQgPiBkaXYge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAud2lkZ2V0LWNvbnRlbnQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlIHtcbiAgLndpZGdldC53aWRnZXRfb3BhbGVzdGF0ZV9zZWFyY2hfcHJvcGVydGllc193aWRnZXQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLnNpZGViYXItc2luZ2xlLXByb3BlcnR5IHtcbiAgLndpZGdldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgLnNlYXJjaC1wcm9wZXJpZXMtZm9ybSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAud2lkZ2V0LXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTG9jYXRpb24gU2VhcmNoIEZvcm1cbi5idG4tbW9kYWwtbG9jYXRpb25zIHtcbiAgY29sb3I6ICNhY2FjYWM7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkZWRlZGU7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNlMWVlZjM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1jb2xvcjogI2RlZGVkZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbiNtb2RhbC1sb2NhdGlvbnMge1xuICAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogMzBweCAzNXB4O1xuICAgIC5jb2wtc20tMTIgPiBoMyB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICB9XG4gICAgLmxvY2F0aW9ucyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgPiBkaXYge1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxvY2F0aW9uLWJvdHRvbSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICB9XG4gIH1cbiAgLmNsb3NlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgQGluY2x1ZGUgc3F1YXJlKDM2cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIExvY2F0aW9uU2VhcmNoIEZvcm1cbi5vcGFsZXN0YXRlLXNlYXJjaC1sb2NhdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAuMSk7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbn1cblxuLm9wYWxlc3RhdGUtcXVpY2stc2VhcmNoLWZvcm0ge1xuICAucXVpY2stc2VhcmNoLXBsYWNlcy1mb3JtLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgID4gZGl2IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbC1sZy0zIHtcbiAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dCxcbiAgICBzZWxlY3Qge1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMnB4IDJweCAycHggMDtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RlZGVkZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAjYWNhY2FjO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNlMWVlZjM7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDJweDtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNkZWRlZGU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZGVkZWRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDJweDtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNkZWRlZGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4tc2VhcmNoIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIEBpbmNsdWRlIHNxdWFyZSg0NHB4KTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjNzKTtcbiAgICB9XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIHN0eWxlIGJveCBpbmZvcm1hdGlvbiB3aGljaCBzaG93cyBpbiBnb29nbGUgbWFwc1xuLmluZm9Cb3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gID4gaW1nIHtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDI1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIHBhZGRpbmc6IDEzcHg7XG4gIH1cbn1cblxuLm9wYWxlc3RhdGUtc2VhcmNoLXByb3BlcnRpZXMge1xuICAuaW5mb0JveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5tYXAtaW5mby1wcmV2aWV3IHtcbiAgICAgIC5wcm9wZXJ0eS1zdGF0dXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tYXAtaW5mby1wcmV2aWV3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA1cHggcmdiYSgwLCAwLCAwLCAuMykpO1xuICBhIGltZyB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLmluZm8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgLnByb3AtdGl0bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbjogMTVweCAwIDhweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIC5wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb3AtYWRkcmVzcyB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgfVxuICB9XG4gIC5wcm9wZXJ0eS1tZXRhLWxpc3Qge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgID4gbGkge1xuICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6ICNjY2M7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubGFiZWwtcHJvcGVydHkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hcnJvdy1kb3duIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDA7XG4gICAgYm90dG9tOiAtMTNweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogMTEycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucHJvcGVydHktc3RhdHVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1cHg7XG4gICAgbGVmdDogNXB4O1xuICB9XG59XG5cbiNvcGFsZXN0YXRlLW1hcC1wcmV2aWV3IHtcbiAgLmNsdXN0ZXIge1xuICAgID4gZGl2IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcmNoaXZlIG5hdmlnYXRpb25cblxuLm9wYWxlc2xhdGUtYXJjaGl2ZS1jb250YWluZXIge1xuICAub3BhbGVzYXRlLWFyY2hpdmUtdG9wIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIH1cbiAgLm9wYWxlc3RhdGUtcm93cyBhcnRpY2xlIC5wcm9wZXJ0eS1saXN0LXN0eWxlLXYyIC5lbnRyeS1zdW1tYXJ5ID4gcCB7XG4gICAgbWF4LWhlaWdodDogMTYwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBQcm9wZXJ0aWVzIFNlYXJjaDogTm9SZXN1bHRcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXByb3BlcnR5LXNlYXJjaC1yZXN1bHRze1xuICAjb3BhbGVzdGF0ZS1tYXAtcHJldmlld3tcbiAgICBoZWlnaHQ6IDcwdmggIWltcG9ydGFudDtcbiAgfVxufVxuLm9wYWxlc2F0ZS1yZWNlbnQtcHJvcGVydHksXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXByb3BlcnR5LXNlYXJjaC1yZXN1bHRzIHtcbiAgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgLnNlYXJjaGZvcm0ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIC5wYnItc2VhcmNoIHtcbiAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbiAgICAgICAgfVxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXByb3BlcnR5LXNlYXJjaC1yZXN1bHRzIHtcbiAgI29wYWxlc3RhdGUtc2VhcmNoLWZvcm0ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG4gIC5vcGFsZXN0YXRlLXNlYXJjaC1wcm9wZXJ0aWVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgPiAuaW5uZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMzU1YjtcbiAgICB9XG4gICAgLnNlYXJjaC1wcm9wZXJpZXMtZm9ybSB7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5zaXRlLW1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgI21haW4tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgICAucGJyLXBhZ2luYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2xpZGVyLXByb3BlcnR5LWZlYXR1cmVkIHtcbiAgLm9wYWxlc2F0ZS1yZWNlbnQtcHJvcGVydHkgLm5vdGhpbmctd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDI1cHggMzBweCAzMHB4O1xuICAgIC5wYWdlLWNvbnRlbnQgLnNlYXJjaGZvcm0gLnBici1zZWFyY2ggaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG4gICYuc3R5bGUtMSwgJi5zdHlsZS0yIHtcbiAgICAudmNfLmNvbC1zbS0xMiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBBamF4IE1hcCBTZWFyY2hcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYWpheC1tYXAtc2VhcmNoIHtcbiAgbWFyZ2luOiAwIC0xNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjM1NWI7XG4gICAgI29wYWxlc3RhdGUtc2VhcmNoLWZvcm0ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC5zZWFyY2gtZm9ybS1hamF4IHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFkdmFuY2VkLWZpZWxkcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IGRpdi5yb3cub3BhbC1yb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgICNvcGFsZXN0YXRlLW1hcC1wcmV2aWV3IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgI29wYWxlc3RhdGUtbWFwLXByZXZpZXcge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwdmggIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICBvcmRlcjogMTtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2VhcmNoLXByb3Blcmllcy1mb3JtIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICB9XG4gIH1cbn1cblxuLmFqYXgtc2VhcmNoLWZvcm0ge1xuICAjb3BhbGVzdGF0ZS1zZWFyY2gtZm9ybSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgfVxufVxuXG4ub3BhbGVzdGF0ZS1tb3JlLXNlYXJjaC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5vcGFsZXN0YXRlLXBvcHVwIGJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuXG4jb3BhbGVzYXRlLXByb3BlcnRpZXMtYWpheCB7XG4gIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDMwcHggMCAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAub3BhbGVzdGF0ZS1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIC44KTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLXRoZW1lLXBhdGh9bG9hZGluZy5naWYnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICAub3BhbGVzYXRlLWFyY2hpdmUtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ub3BhbGVzbGF0ZS1hamF4LXNlYXJjaC1yZXN1bHRzLWNvbnRhaW5lciB7XG4gIC5vcGFsZXN0YXRlLXJvd3Mge1xuICAgIC5tYXAtYWN0aXZlIGFydGljbGUge1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICB9XG4gIH1cbn1cbiNvcGFsZXNhdGUtcHJvcGVydGllcy1hamF4e1xuICAucGJyLXBhZ2luYXRpb257XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgLnBhZ2luYXRpb257XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGxpLmFjdGl2ZXtcbiAgICAgICAgYXtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIE1lbWJlcnNoaXAgcGFnZVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm1lbWJlcnNoaXAtcGFja2FnZXMge1xuICAucm93IHtcbiAgICA+IGRpdiB7XG4gICAgICAmLmZpcnN0IHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9wZXJ0eS1zdWJtaXNzaW9uLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAucGFuZWwtYm9keSB7XG4gICAgPiBoMyB7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtKSB7XG4gICAgJi5zcGFjZS1wYWRkaW5nLWxyLTQwLnNwYWNlLXBhZGRpbmctdGItMzAge1xuICAgICAgcGFkZGluZzogMCAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgJi5zcGFjZS1wYWRkaW5nLWxyLTQwLnNwYWNlLXBhZGRpbmctdGItMzAge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uZW50cnktY29udGVudC1wYWdlIHtcbiAgLm9wYWxlc2F0ZS1mb3JtLXdyYXBwZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5vcGFsbWVtYmVyc2hpcC1idXR0b24ge1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3IgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm9wYWxtZW1iZXJzaGlwLWxvZ2luLWZvcm0ge1xuICAub3BhbG1lbWJlcnNoaXAtYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLmNtYi1yb3cge1xuICAuY21iLXRkIHtcbiAgICBwLFxuICAgIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgfVxuICB9XG4gICYuY21iMi1pZC1vcGFsZXN0YXRlLXBwdC1tYXAge1xuICAgIC5yb3cge1xuICAgICAgPiBkaXYge1xuICAgICAgICAuY29sLXNtLTEyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmNtYjItaWQtb3BhbGVzdGF0ZS1wcHQtcHVibGljLWZhY2lsaXRpZXMtZ3JvdXAtMC1vcGFsZXN0YXRlLXBwdC1wdWJsaWMtZmFjaWxpdGllcy1rZXkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAmLmNtYjItaWQtb3BhbGVzdGF0ZS1wcHQtcHVibGljLWZhY2lsaXRpZXMtZ3JvdXAtMC1vcGFsZXN0YXRlLXBwdC1wdWJsaWMtZmFjaWxpdGllcy12YWx1ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5jbWItcmVtb3ZlLWZpZWxkLXJvdyB7XG4gICAgLmJ0biB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxuICAuY21iLWFkZC1yb3cge1xuICAgIC5idG4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbn1cblxuLmNtYjItd3JhcCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jbWIyLXdyYXAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmNtYjItd3JhcCBzZWxlY3Qge1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKC41cyk7XG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG59XG5cbnNwYW4uY21iMi1tZXRhYm94LWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5jbWIyLXdyYXAgdGV4dGFyZWEge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oLjVzKTtcbn1cblxuLmNtYjItd3JhcCB7XG4gICYuZm9ybS10YWJsZSB7XG4gICAgLmNtYjItbWV0YWJveCB7XG4gICAgICAuY21iLXJlcGVhdC1ncm91cC13cmFwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jbWItcm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgJi5jbWItcmVtb3ZlLWZpZWxkLXJvdyxcbiAgICAmLmNtYi1yZXBlYXRhYmxlLWdyb3VwaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5jbWItZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLmNtYi1mb3JtIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0aGVtZS1jb2xvcjtcbiAgcGFkZGluZzogMTNweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oLjVzKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkdGhlbWUtY29sb3IsIDUlKTtcbiAgfVxuICAmLmJ0bi1zdWJtaXQtY21iIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogLTU4cHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5ncm91cC1hbWVuaXRpZXMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBzcGFuIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLmNtYjItbGlzdCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4uY21iMi1lbGVtZW50IC51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLFxuLmNtYjItZWxlbWVudCAudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucGFuZWwge1xuICAub3BhbG1lbWJlcnNoaXAtc2hvcHBpbmdjYXJ0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgY2FwdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgfVxuICB9XG59XG5cbiNvcGFsbWVtYmVyc2hpcC1jaGVja291dC1mb3JtIHtcbiAgLmJpbGxpbmctZmllbGRzIHtcbiAgICA+IGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuICB9XG4gIC5vcGFsLXBhbmVsLWhlYWRpbmcge1xuICAgID4gaDMge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbiAgfVxuICAub3BhbC1wYW5lbC1ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbi5teS1mYXZvcml0ZSB7XG4gIC5wYW5lbCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgLnBhbmVsLWJvZHkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbiAgLnNlYXJjaGZvcm0gLnBici1zZWFyY2ggLmZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA1cHggMTVweCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgLnNlYXJjaGZvcm0gLnBici1zZWFyY2ggLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gIH1cbn1cblxuLm15LXByb3BlcnRpZXMge1xuICAubGlzdC10YWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHVsIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguMzVzKTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShib3R0b20sIDBweCwgJGJyYW5kLXByaW1hcnksIDZweCk7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjM1cyk7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhbmVsLWJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLm9wYWxlc3RhdGVfcHJvcGVydHkge1xuICAgICAgLnByb3BlcnR5LWxpc3Qtc3R5bGUge1xuXG4gICAgICB9XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4ub3BhbG1lbWJlcnNoaXAtZGFzaGJvYXJkLWNvbnRhaW5lciB7XG4gIC5wYW5lbC1kZWZhdWx0IHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLnByb3BlcnR5LXN1Ym1pc3Npb24tZm9ybSB7XG4gID4gaDEge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb3BlcnR5LXN1Ym1pc3Npb24tZm9ybSAucXVpY2t0YWdzLXRvb2xiYXIgaW5wdXQuYnV0dG9uLFxuLnByb3BlcnR5LXN1Ym1pc3Npb24tZm9ybSAucXVpY2t0YWdzLXRvb2xiYXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2MgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1NTU7XG4gIHBhZGRpbmc6IDAgOHB4IDFweDtcbn1cblxuLmNtYi1mb3JtIC5xdWlja3RhZ3MtdG9vbGJhciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLmNtYi1mb3JtIC5xdWlja3RhZ3MtdG9vbGJhciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDAgI2NjYyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgbWFyZ2luOiAycHggIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5tZW1iZXJzaGlwLWhpc3RvcnksXG4ucGF5bWVudC1kZXRhaWwsXG4ucGF5bWVudC1kZXRhaWwgLnBhbmVsLWJvZHkge1xuICA+IGgyIHtcbiAgICBtYXJnaW46IDVweCAwIDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbn1cblxuLm1lbWJlcnNoaXAtcGF5bWVudC1pbmZvLFxuLm1lbWJlcnNoaXAtcGF5bWVudC1hZGRyZXNzIHtcbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm9wYWxtZW1iZXJzaGlwLWRhc2hib2FyZC1jb250YWluZXIge1xuICAucGFuZWwtYm9keSB7XG4gICAgPiBoMyB7XG4gICAgICBtYXJnaW46IDVweCAwIDEwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICA+IHVsIHtcbiAgICAgID4gbGkge1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbWJlcnNoaXAtY29udGVudCB7XG4gICAgPiB1bCB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiN1c2VyLXByb2ZpbGUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogTWVtYmVyc2hpcCB3aWRnZXRcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ud2lkZ2V0X29wYWxlc3RhdGVfcHJvZmlsZV9pbmZvX3dpZGdldCB7XG4gIC5wcm9maWxlLXRvcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuICAubmF2LXBpbGxzID4gbGkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgPiBhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2lkZ2V0X29wYWxtZW1iZXJzaGlwX2N1cnJlbnRfcGFja2FnZSB7XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgID4gbGkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53aWRnZXRfb3BhbG1lbWJlcnNoaXBfcXVpY2tfcHVyY2hhc2Uge1xuICAuZHJvcGRvd24tbWVudS1zZWxlY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgLmJ0biB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAuY2FyZXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqXG4gKi9cbi5tZXRhYm94LWZpZWxkcy1mcm9udCB7XG4gIC5jbWItdGgge1xuICAgIHdpZHRoOiAzMCU7XG5cbiAgfVxuICAuY21iLXRkIHtcbiAgICB3aWR0aDogNjklXG4gIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQtcGFnZSB7XG4gIC5zbGlkZXItc2VhcmNoLXRyYW5zcGFyZW50LFxuICAuc2xpZGVyLWFnZW50LXNlYXJjaCB7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDFzKTtcbiAgfVxuICAuc2xpZGVyLXNlYXJjaC10cmFuc3BhcmVudC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTglO1xuICAgIHdpZHRoOiA2NCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDMzMHB4O1xuICAgIC5zbGlkZXItc2VhcmNoLXRyYW5zcGFyZW50IHtcbiAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgfVxuICAgIC5zZWFyY2gtcHJvcGVyaWVzLWZvcm0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgNTEsIDg0LCAuNik7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItYWdlbnQtc2VhcmNoLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxOCU7XG4gICAgd2lkdGg6IDY0JTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRvcDogNDAwcHg7XG4gICAgLnNsaWRlci1hZ2VudC1zZWFyY2gge1xuICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICB9XG4gICAgLm9wYWxlc3RhdGUtc2VhcmNoLWFnZW50cy1mb3JtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAuc2VhcmNoLWFnZW50LXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnJvdzpsYXN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmV4cGFuZC1zZWFyY2gge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaSB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3NHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBsaW5lLWhlaWdodDogNzRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjNzKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG4gICAgfVxuICB9XG4gIHNwYW4ge1xuICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tcGhvbmUpIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbn1cblxuLmV4cGFuZC1zZWFyY2gtd3JhcHBlciB7XG4gIC5vcGFsZXN0YXRlLXNlYXJjaC1wcm9wZXJ0aWVzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC4zcyk7XG4gIH1cbiAgJi5hY3RpdmUge1xuICAgIC5vcGFsZXN0YXRlLXNlYXJjaC1wcm9wZXJ0aWVzIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgICAuZXhwYW5kLXNlYXJjaCB7XG4gICAgICBpIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDY4XCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9wYWxlc2F0ZS1wcm9wZXJ0aWVzLXNsaWRlciB7XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5pdGVtIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGFydGljbGUge1xuICAgIC5lbnRyeS1jb250ZW50LXdyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIC44KTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgIGxlZnQ6IDI2JTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC0yNiUsIC01MCUpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzKSB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgLmVudHJ5LXN1bW1hcnksXG4gICAgICAgIC5lbnRyeS1jb250ZW50LWJvdHRvbSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICB0b3A6IDU1JTtcbiAgICAgICAgbGVmdDogMzIlO1xuICAgICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnByb3BlcnR5LW1ldGEtbGlzdCB7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4IDVweDtcbiAgICAgICAgfVxuICAgICAgICAucHJvcGVydHktcHJpY2Uge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuZW50cnktdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1wcmljZSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIHBhZGRpbmc6IDVweCAzMHB4XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50LWJvdHRvbSB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1tZXRhLWxpc3Qge1xuICAgICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgID4gbGkgLmxhYmVsLXByb3BlcnR5IHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMzBweCAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1ncm91cC1sYWJlbCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogLTI1cHg7XG4gICAgICBkaXYucHJvcGVydHktbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBpLnByb3BlcnR5LXRvZ2dsZS1mYXZvcml0ZSB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5hdXRob3ItbGluayAuYXZhdGFyIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDVweCByZ2JhKDAsIDAsIDAsIC41KSk7XG4gICAgfVxuICAgIC5wcm9wZXJ0eS1ib3gtaW1hZ2UtaW5uZXIge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBjdXJzb3I6IG5vcm1hbDtcbiAgICB9XG4gIH1cbiAgLmNhcm91c2VsLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgc3F1YXJlKDUwcHgpO1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgICAgQGluY2x1ZGUgc3F1YXJlKDMwcHgpO1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG4gIH1cbn1cblxuI3N5bmMyIHtcbiAgLm93bC1jb250cm9scyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNwYWNlLW1hcmdpbi1ib3R0b20tMzBwIHtcbiAgI29wYWxlc3RhdGUtc2VhcmNoLWFnZW50cy1mb3JtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgMTBweCByZ2JhKCRibGFjaywgLjEpKTtcbiAgfVxufVxuXG4uZmVhdHVyZWQtbGlzdGluZyB7XG4gIHBhZGRpbmc6IDkwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbn1cblxuLmZlYXR1cmVkLWxpc3RpbmctLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLmZlYXR1cmVkLWxpc3RpbmdfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZlYXR1cmVkLWxpc3RpbmdfX2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4udGFic19mZWF0dXJlZCB7XG4gIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC50YWJzIHtcbiAgICBsYWJlbCB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlByb3BlcnR5IC8gLnByb3BlcnR5XG4qKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnNpbmdsZS1vcGFsZXN0YXRlX3Byb3BlcnR5IHtcbiAgLmFnZW50cy1zaW5nbGVfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAuYWdlbnQtcHJldmlldyB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgfVxufVxuXG4uc2luZ2xlLXByb3BlcnR5LWJyZWFkY3J1bWIge1xuICAuYnJlYWRjcnVtYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucHJvcGVydHlfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLnByb3BlcnR5X19oZWFkZXItLXYzIHtcbiAgcGFkZGluZzogMCAwIDQ1cHg7XG59XG5cbi5wcm9wZXJ0eV9fdGl0bGUtLWItbWFyZ2luIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnByb3BlcnR5X19wcmljZS0tYi1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4ucHJvcGVydHlfX21ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucHJvcGVydHlfX3R5cGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjMWZjMzQxO1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4ucHJvcGVydHlfX25hbWUge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1heC13aWR0aDogNDIwcHg7XG59XG5cbi5wcm9wZXJ0eV9fYWRkcmVzcyB7XG4gIGNvbG9yOiAjODg4ODg4O1xufVxuXG4ucHJvcGVydHlfX2FkZHJlc3MtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wcm9wZXJ0eV9fc3RhdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzg4ODg4ODtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucHJvcGVydHlfX3N0YXQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnByb3BlcnR5X19maWd1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLnByb3BlcnR5X19wcmljZS1wcmltYXJ5IHtcbiAgLnByb3BlcnR5LXByaWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgY29sb3I6ICMxZmMzNDE7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fcHJpY2Utc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM4ODg4ODg7XG59XG5cbi5wcm9wZXJ0eV9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgLnByb3BlcnR5X19pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIC5kcm9wLXNoYXJlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHRoZW1lLWNvbG9yLCA1JSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucHJvcGVydHlfX2l0ZW0uZHJvcGRvd24tc2hhcmV7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmRyb3Atc2hhcmV7XG4gICAgdG9wOiAtNjBweDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMjQwcHgpe1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCl7XG4gICAgICB0b3A6IC01cHg7XG4gICAgICBsZWZ0OiA1NXB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDUwMHB4KXtcbiAgICAgIHRvcDogNjBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjklKTtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wcm9wZXJ0eV9faXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9faXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ucHJvcGVydHlfX2l0ZW0tZGVzYyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLnByb3BlcnR5X19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnByb3BlcnR5X19pY29uLFxuLnByb3BlcnR5LXRvZ2dsZS1mYXZvcml0ZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjM1NWI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9wZXJ0eV9fbWFpbiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wcm9wZXJ0eV9fbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fbWFpbi1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAucHJvcGVydHktc3RhdHVzLFxuICAucHJvcGVydHlfX3N0YXRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAucHJvcGVydHlfX21haW4taXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLnByb3BlcnR5X19tYWluLWl0ZW06YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogODBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xuICB9XG4gIC5wcm9wZXJ0eV9fbWFpbi1pdGVtOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5wcm9wZXJ0eV9fbWFpbi1pdGVtOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnByb3BlcnR5X19tYWluLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3BlcnR5X19oZWFkZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG59XG5cbi5wcm9wZXJ0eV9fY29udGFpbmVyIC53aWRnZXQge1xuICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlLW91dDtcbn1cblxuLnByb3BlcnR5X19jb250YWluZXIgLndpZGdldDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggN3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ucHJvcGVydHlfX2ZlYXR1cmUtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNpbmdsZS1vcGFsZXN0YXRlX3Byb3BlcnR5IHtcbiAgLnByb3BlcnR5X19mZWF0dXJlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cblxuLnByb3BlcnR5X19mZWF0dXJlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLmJveC1pbmZvIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5mbHVpZC13aWR0aC12aWRlby13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4ud2lkZ2V0X19jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgI2xpbmtmZWF0dXJlZC1hdXRob3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgLmNvbnRhY3QtZm9ybV9faGVhZGVyIHtcbiAgICAgIC50ZWFtLWhlYWRlciB7XG4gICAgICAgIG1heC13aWR0aDogNzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgICAgIC5hZ2VudC1sZXZlbHMge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9wZXJ0eS1hZ2VudC1jb250YWN0IHtcbiAgICAgICAgLmFnZW50LWJveCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICYucm93IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIC5jb2wtc20tNiB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWdlbnQtYm94LW1ldGEge1xuICAgICAgICAgICAgICAuYWdlbnQtYm94LXRpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmFnZW50LWpvYiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4ODg4ODg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmFnZW50LWJveC1lbWFpbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuYWdlbnQtYm94LXBob25lIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmJvLXNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY29udGFjdC1pbmZvIHtcbiAgICAgIHAge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgICAuYWdlbnQtam9iIHtcbiAgICAgICAgY29sb3I6ICM4ODg4ODg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICB9XG4gICAgICAuYWdlbnQtYm94LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yIGVhc2Utb3V0O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hZ2VudHMtc2luZ2xlX19jb250YWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgLmFnZW50LWJveC1waG9uZSB7XG4gICAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBjb2xvciBlYXNlLW91dDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub3BhbGVzdGF0ZS1jb250YWN0LWZvcm0ge1xuICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgbWluLWhlaWdodDogMTMwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2luZ2xlLW9wYWxlc3RhdGVfcHJvcGVydHkge1xuICAjbGlua2ZlYXR1cmVkLWF1dGhvciB7XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmNvbnRhY3QtZm9ybV9faGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIC50ZWFtLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgLnByb3BlcnR5LWxhYmVsIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgdG9wOiAyN3B4O1xuICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmOWQwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbnRhY3QtaW5mbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb3BlcnR5X19mZWF0dXJlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB0cmFuc2l0aW9uOiAwLjVzIGJveC1zaGFkb3cgZWFzZS1vdXQ7XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggN3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9wZXJ0eV9fZmVhdHVyZSB7XG4gICAgcGFkZGluZzogMjVweCA0MHB4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZSBwIHtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZS10aXRsZS0tYi1zcGFjaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZS1zY2hlZHVsZSB7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcGVydHlfX2ZlYXR1cmUtc2NoZWR1bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb3BlcnR5X19mZWF0dXJlLWN0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTBweCA0MnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIzNTViO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3BlcnR5X19mZWF0dXJlLWN0YSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cblxuLnByb3BlcnR5X19mZWF0dXJlLXRpbWUtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcGVydHlfX2ZlYXR1cmUtdGltZS1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZS10aW1lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZS1vcGVuLW1hcHMge1xuICBjb2xvcjogIzFmYzM0MTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcGVydHlfX2RldGFpbHMtbGlzdCB7XG4gICAgY29sdW1uczogMjtcbiAgICBjb2x1bW4tZ2FwOiA0MHB4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fZGV0YWlscy1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5wcm9wZXJ0eV9fZGV0YWlscy1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzY2NjY2NjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5wcm9wZXJ0eV9fZGV0YWlscy1pdGVtOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogXCJcXGYwNDJcIjtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgZm9udC1zaXplOiA4cHg7XG59XG5cbi5wcm9wZXJ0eV9fZGV0YWlscy1pdGVtLS1jYXQge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnByb3BlcnR5X19mZWF0dXJlcy1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAucHJvcGVydHlfX2ZlYXR1cmVzLWxpc3Qge1xuICAgIGNvbHVtbnM6IDI7XG4gICAgY29sdW1uLWdhcDogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9wZXJ0eV9fZmVhdHVyZXMtbGlzdCB7XG4gICAgY29sdW1uczogMztcbiAgICBjb2x1bW4tZ2FwOiAyMHB4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fZmVhdHVyZXMtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuXG4ucHJvcGVydHlfX2ZlYXR1cmVzLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5wcm9wZXJ0eV9fYWNjb3JkaW9uLWhlYWRlciB7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZWVlZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9wZXJ0eV9fYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnByb3BlcnR5X19hY2NvcmRpb24taGVhZGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnByb3BlcnR5X19hY2NvcmRpb24tdGV4dGNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb3BlcnR5X19hY2NvcmRpb24tdGl0bGUge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wcm9wZXJ0eV9fYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fYWNjb3JkaW9uLWZpZ3VyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3BlcnR5X19hY2NvcmRpb24tZmlndXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLnByb3BlcnR5X19hY2NvcmRpb24tZmlndXJlOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIC5wcm9wZXJ0eV9fYWNjb3JkaW9uLWZpZ3VyZTphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjb250ZW50OiBcIlxcZjExMVwiO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgZm9udC1zaXplOiA1cHg7XG4gIH1cbiAgLnByb3BlcnR5X19hY2NvcmRpb24tZmlndXJlOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb3BlcnR5X19hY2NvcmRpb24tZmlndXJlLS1jYXQge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnByb3BlcnR5X19hY2NvcmRpb24tZXhwYW5kIHtcbiAgY29sb3I6ICM4ODg4ODg7XG59XG5cbi5wcm9wZXJ0eV9fYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9wZXJ0eV9fYWNjb3JkaW9uLWNvbnRlbnQtLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wcm9wZXJ0eV9fZmVhdHVyZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7XG4gIH1cbn1cblxuLnByb3BlcnR5X190YWIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2Utb3V0O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5wcm9wZXJ0eV9fdGFiOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMWZjMzQxO1xufVxuXG4ucHJvcGVydHlfX3RhYi0tYWN0aXZlIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMWZjMzQxO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wcm9wZXJ0eV9fdGFiIHtcbiAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnByb3BlcnR5X190YWItY29udGFpbmVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLnByb3BlcnR5X190YWItY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgdGFibGUtbGF5b3V0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAucHJvcGVydHlfX3RhYi1jb250ZW50IHtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fdGFiLWNvbnRlbnQgdGQsXG4ucHJvcGVydHlfX3RhYi1jb250ZW50IHRoIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZTtcbiAgbWluLXdpZHRoOiAxNTBweDtcbn1cblxuLnByb3BlcnR5X190YWItY29udGVudCB0ZCB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBwYWRkaW5nOiAxNXB4IDA7XG59XG5cbi5wcm9wZXJ0eV9fdGFiLWNvbnRlbnQgdGgge1xuICBwYWRkaW5nOiA1cHggMDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wcm9wZXJ0eV9fdGFiLWNvbnRlbnQuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4ubGlzdC1udW1iZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRhZGFkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cblxuLnByb3BlcnR5X19mb3JtLWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5cbi5wcm9wZXJ0eV9fZm9ybS1maWVsZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzFmYzM0MTtcbn1cblxuLnByb3BlcnR5X19mb3JtLWZpZWxkOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuXG4ucHJvcGVydHlfX2Zvcm0td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb3BlcnR5X19mb3JtLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjb2xvcjogI2FkYWRhZDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4ucHJvcGVydHlfX2Zvcm0tc3VibWl0IHtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgYmFja2dyb3VuZDogIzFmYzM0MTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY29udGFjdC1jb21wYW55IHtcbiAgY29sb3I6ICM4ODg4ODg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmNvbnRhY3QtbmFtZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLmNvbnRhY3QtbmFtZSBhIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHRyYW5zaXRpb246IDAuM3MgY29sb3IgZWFzZS1vdXQ7XG59XG5cbi5jb250YWN0LW5hbWUgYTpob3ZlciB7XG4gIGNvbG9yOiAjMWZjMzQxO1xufVxuXG4uY29udGFjdC1udW1iZXIge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yIGVhc2Utb3V0O1xufVxuXG4uY29udGFjdC1udW1iZXI6aG92ZXIge1xuICBjb2xvcjogIzFmYzM0MTtcbn1cblxuLnNpbWlsYXItaG9tZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuZGl2LnNpbWlsYXItaG9tZTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2ltaWxhci1ob21lX19vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMjIyMjIyIDAlLCByZ2JhKDM0LCAzNCwgMzQsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg5MGRlZywgIzIyMjIyMiAwJSwgcmdiYSgzNCwgMzQsIDM0LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMjIyMjIyIDAlLCByZ2JhKDM0LCAzNCwgMzQsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMjIyMjIyIDAlLCByZ2JhKDM0LCAzNCwgMzQsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzIyMjIyMiAwJSwgcmdiYSgzNCwgMzQsIDM0LCAwKSAxMDAlKTtcbn1cblxuLnNpbWlsYXItaG9tZV9fZmF2b3JpdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Myk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zaW1pbGFyLWhvbWVfX2Zhdm9yaXRlIC5mYSB7XG4gIGNvbG9yOiAjYmJiYmJiO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5zaW1pbGFyLWhvbWVfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMTBweCA1cHg7XG59XG5cbi5zaW1pbGFyLWhvbWVfX3RpdGxlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdHJhbnNpdGlvbjogMC4zcyBjb2xvciBlYXNlLW91dDtcbn1cblxuLnNpbWlsYXItaG9tZV9fcHJpY2Uge1xuICBjb2xvcjogIzFmYzM0MTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvcm0tY2FsY3VsYXRvcl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuLmZvcm0tY2FsY3VsYXRvcl9fZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uZm9ybS1jYWxjdWxhdG9yX19ncm91cCAuaHQtZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9ybS1jYWxjdWxhdG9yX19ncm91cC0tbGFyZ2VyIHtcbiAgICB3aWR0aDogNTclO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb3JtLWNhbGN1bGF0b3JfX2dyb3VwLS1zbWFsbGVyIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG59XG5cbi5mb3JtLWNhbGN1bGF0b3JfX2xhYmVsIHtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmZvcm0tY2FsY3VsYXRvcl9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxOHB4O1xuICBjb2xvcjogIzk5OTk5OTtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uZm9ybS1jYWxjdWxhdG9yX19maWVsZCB7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG4uZm9ybS1jYWxjdWxhdG9yX19wZXJjZW50IHtcbiAgcmlnaHQ6IDIwcHg7XG59XG5cbi5mb3JtLWNhbGN1bGF0b3JfX2N1cnJlbmN5IHtcbiAgbGVmdDogMjBweDtcbn1cblxuLmZvcm0tY2FsY3VsYXRvcl9fc3VibWl0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmYzM0MTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZvcm0tY2FsY3VsYXRvcl9fcmVzdWx0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLm1vcnRnYWdlLXBheW1lbnQge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5tb3J0Z2FnZS1wYXltZW50IHNwYW4ge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuLnByb3BlcnR5X19zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuLnByb3BlcnR5X19zbGlkZXItaW1hZ2Vze1xuICAudmlkZW8td3JhcHBlcntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaWZyYW1le1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvcGVydHlfX3NsaWRlci0tdjIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucHJvcGVydHlfX3NsaWRlci1jb250YWluZXItLXZlcnRpY2FsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW1haW46aG92ZXIgLmltYWdlLW5hdmlnYXRpb24gbGkge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uaW1hZ2UtbmF2aWdhdGlvbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmltYWdlLW5hdmlnYXRpb24gbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZS1vdXQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmltYWdlLW5hdmlnYXRpb24gbGkuaW1hZ2UtbmF2aWdhdGlvbl9fcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5pbWFnZS1uYXZpZ2F0aW9uIGxpLmltYWdlLW5hdmlnYXRpb25fX25leHQge1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5pbWFnZS1uYXZpZ2F0aW9uIGxpIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZS1uYXZpZ2F0aW9uIGxpIHNwYW4ge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnByb3BlcnR5X19zbGlkZXItbWFpbi0tdmVydGljYWwge1xuICAgIHdpZHRoOiA4OCU7XG4gIH1cbn1cblxuLnNsaWNrLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiA2MHB4O1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiA5O1xuICAmLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZjNkMlwiO1xuICAgICAgZm9udC1mYW1pbHk6IElvbmljb25zO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IC4zcyBhbGwgZWFzZS1vdXQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zbGljay1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmM2QzXCI7XG4gICAgICBmb250LWZhbWlseTogSW9uaWNvbnM7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogLjNzIGFsbCBlYXNlLW91dDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbi5zbGlkLXNsaWNrOmhvdmVyIHtcbiAgLnNsaWNrLXByZXYge1xuICAgICY6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvcGVydHlfX3NsaWRlci1pbmZvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMjBweDtcbiAgcGFkZGluZzogM3B4IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLWluZm8gaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnByb3BlcnR5X19zbGlkZXItaW5mbyAuc2xpZGVySW5mbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDIwcHggMjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcGVydHlfX3NsaWRlci1uYXYge1xuICAgIHBhZGRpbmc6IDMwcHggMzBweDtcbiAgfVxufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYgLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luOiAwIDVweDtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW5hdiAuc2xpY2stY3VycmVudCB7XG4gIGJvcmRlci1jb2xvcjogIzFmYzM0MTtcbn1cblxuLnByb3BlcnR5X19zbGlkZXItbmF2IC5zbGljay1hcnJvdyB7XG4gIGNvbG9yOiAjODg4ODg4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnByb3BlcnR5X19zbGlkZXItbmF2IC5zbGljay1hcnJvdzpob3ZlciB7XG4gIGNvbG9yOiAjMWZjMzQxO1xufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYgLnNsaWNrLWRpc2FibGVkLFxuLnByb3BlcnR5X19zbGlkZXItbmF2IC5zbGljay1kaXNhYmxlZDpob3ZlciB7XG4gIGNvbG9yOiAjZTVlNWU1O1xufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYgLnNsaWNrLWhvcml6b250YWwtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW5hdiAuc2xpY2staG9yaXpvbnRhbC1wcmV2LWFycm93IHtcbiAgbGVmdDogMTBweDtcbn1cblxuLnByb3BlcnR5X19zbGlkZXItbmF2IC5zbGljay1ob3Jpem9udGFsLW5leHQtYXJyb3cge1xuICByaWdodDogMTBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW5hdiAuc2xpY2stdmVydGljYWwtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYgLnNsaWNrLXZlcnRpY2FsLXByZXYtYXJyb3cge1xuICB0b3A6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJvcGVydHlfX3NsaWRlci1uYXYgLnNsaWNrLXZlcnRpY2FsLW5leHQtYXJyb3cge1xuICBib3R0b206IDVweDtcbiAgdG9wOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW5hdi0tdmVydGljYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucHJvcGVydHlfX3NsaWRlci1uYXYtLXZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTIlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wcm9wZXJ0eV9fc2xpZGVyLW5hdi0tdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXJnaW46IDRweCAwO1xuICB9XG59XG5cbi5wcm9wZXJ0eV9fc2xpZGVyLW5hdi0taG9yaXpvbnRhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3BlcnR5X19zbGlkZXItbmF2LS1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XG4gIH1cbn1cblxuLnByb3BlcnR5X19zbGlkZXItaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnByb3BlcnR5X19wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNjAwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3VwbG9hZHMvc2luZ2xlX3Byb3BlcnR5LmpwZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5wcm9wZXJ0eV9fY29udHJvbHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xuICB0b3A6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5wcm9wZXJ0eV9fY29udHJvbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42NSk7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2Utb3V0O1xufVxuXG4ucHJvcGVydHlfX2NvbnRyb2w6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcGVydHlfX2NvbnRyb2wge1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgfVxufVxuXG4ucHJvcGVydHlfX2NvbnRyb2w6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWZjMzQxO1xufVxuXG4ucHJvcGVydHlfX2NvbnRyb2wtLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZmMzNDE7XG59XG5cbi5wcm9wZXJ0eV9fY29udHJvbC1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3BlcnR5X19jb250cm9sLWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG4jcHJvcGVydHktbWFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9wZXJ0eV9fbWFwIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLnByb3BlcnR5X19tYXAtLXZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiA1O1xufVxuXG4vKj09PT09PT09PT09PT09PT09IE1hcCA9PT09PT09PT09PT09PT0gKi9cbi5nbS1pdi1hZGRyZXNzIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwO1xuICAuZ20taXYtYWRkcmVzcy1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT0gdGF4LW9wYWxlc3RhdGVfbG9jYXRpb24gPT09PT09PT09PT09PT09PT09Ki9cbi50YXgtb3BhbGVzdGF0ZV9sb2NhdGlvbiB7XG4gIC5zaXRlLW1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgLnByb3BlcnR5LWxpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLnNpZGViYXIgLndpZGdldHtcblxuICB9XG59XG5cbi5hdXRob3Ige1xuICAuYWdlbnQtYm94LnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAuYWdlbnQtYm94LWltYWdlIHtcbiAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgfVxuICB9XG59IiwiLm5vVWktdGFyZ2V0LCAubm9VaS10YXJnZXQgKiB7XG5cdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3hcbn1cbi5ub1VpLXRhcmdldCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlyZWN0aW9uOiBsdHJcbn1cbi5ub1VpLWJhc2Uge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5ub1VpLW9yaWdpbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwXG59XG4ubm9VaS1oYW5kbGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDFcbn1cbi5ub1VpLXN0YWNraW5nIC5ub1VpLWhhbmRsZSB7XG5cdHotaW5kZXg6IDEwXG59XG4ubm9VaS1zdGF0ZS10YXAgLm5vVWktb3JpZ2luIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IC4zcywgdG9wIC4zcztcblx0dHJhbnNpdGlvbjogbGVmdCAuM3MsIHRvcCAuM3Ncbn1cbi5ub1VpLXN0YXRlLWRyYWcgKiB7XG5cdGN1cnNvcjogaW5oZXJpdCFpbXBvcnRhbnRcbn1cbi5ub1VpLWJhc2Uge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMClcbn1cbi5ub1VpLWhvcml6b250YWwge1xuXHRoZWlnaHQ6IDZweDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHQubm9VaS1iYXNlIHtcblx0XHQubm9VaS1vcmlnaW4ge1xuXHRcdFx0Lm5vVWktaGFuZGxlIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xOHB4O1xuXHRcdFx0fVxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdC5ub1VpLWhhbmRsZSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4ubm9VaS1ob3Jpem9udGFsIC5ub1VpLWhhbmRsZSB7XG5cdGhlaWdodDoxOHB4O1xuXHR3aWR0aDoxOHB4O1xuXHRsZWZ0OiAwcHg7XG5cdHRvcDogLTZweDtcblx0Ji5ub1VpLWhhbmRsZS11cHBlciB7XG5cdFx0bWFyZ2luLWxlZnQ6IC0xOHB4O1xuXHR9XG59XG4ubm9VaS12ZXJ0aWNhbCB7XG5cdHdpZHRoOiAxOHB4XG59XG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGUge1xuXHR3aWR0aDogMjhweDtcblx0aGVpZ2h0OiAzNHB4O1xuXHRsZWZ0OiAtNnB4O1xuXHR0b3A6IC0xN3B4XG59XG4ubm9VaS1iYWNrZ3JvdW5kIHtcblx0YmFja2dyb3VuZDogI2RhZGFkYTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xufVxuLm5vVWktY29ubmVjdCB7XG5cdGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvcjtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xufVxuLm5vVWktb3JpZ2luIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuXHQmOmxhc3QtY2hpbGR7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzk5OTtcblx0fVxufVxuLm5vVWktdGFyZ2V0IHtcbn1cbi5ub1VpLXRhcmdldC5ub1VpLWNvbm5lY3Qge1xufVxuLm5vVWktZHJhZ2FibGUge1xuXHRjdXJzb3I6IHctcmVzaXplXG59XG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1kcmFnYWJsZSB7XG5cdGN1cnNvcjogbi1yZXNpemVcbn1cbi5ub1VpLWhhbmRsZSB7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0YmFja2dyb3VuZDogJHRoZW1lLWNvbG9yO1xuXHRib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xuXHRAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA1cHggcmdiYSgkYmxhY2ssLjUpKTtcblx0Y3Vyc29yOiBkZWZhdWx0O1xufVxuLm5vVWktYWN0aXZlIHtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDFweCAjRkZGLCBpbnNldCAwIDFweCA3cHggI0RERCwgMCAzcHggNnB4IC0zcHggI0JCQlxufVxuLm5vVWktaGFuZGxlOmFmdGVyLCAubm9VaS1oYW5kbGU6YmVmb3JlIHtcbn1cbi5ub1VpLWhhbmRsZTphZnRlciB7XG59XG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YWZ0ZXIsIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZTpiZWZvcmUge1xufVxuLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmFmdGVyIHtcbn1cbltkaXNhYmxlZF0gLm5vVWktY29ubmVjdCwgW2Rpc2FibGVkXS5ub1VpLWNvbm5lY3Qge1xuXHRiYWNrZ3JvdW5kOiAjQjhCOEI4XG59XG5bZGlzYWJsZWRdIC5ub1VpLWhhbmRsZSB7XG5cdGN1cnNvcjogbm90LWFsbG93ZWRcbn0iLCIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztFQUdFO0FpQ0hGOztHQUVHO0FBWWlDLGdFQUFnRTtBQWlCcEc7O0dBRUc7QUdQSDs7R0FFRztBQ3hCRixnQ0FBZ0M7QUFNaEMsaUNBQWlDO0FBRWpDLDhCQUE4QjtBQUU5QixxQ0FBcUM7QUFFckMscUNBQXFDO0FBQUEsTUFBTTtBQVc1QywwQkFBMEI7QUFLMUIsMEJBQTBCO0FBSTFCLDBCQUEwQjtBQVExQix1QkFBdUI7QUFFdkIsNEJBQTRCO0FBSTVCLDRCQUE0QjtBQUk1Qiw0QkFBNEI7QUFJNUIsNEJBQTRCO0FBSzVCLDRCQUE0QjtBQUk1Qiw0QkFBNEI7QUFJM0IsK0JBQStCO0FBUS9CLDhCQUE4QjtBQUU5QiwrQkFBK0I7QUFFL0IseUNBQXlDO0FBRXpDLG1DQUFtQztBQUFBLGtCQUFrQjtBQVVyRCwyQkFBMkI7QUFBQSx3QkFBd0I7QUFLcEQsOEJBQThCO0FBTzdCLDhCQUE4QjtBQUU5QixpQ0FBaUM7QUFJakMsK0JBQStCO0FBRS9CLDhCQUE4QjtBQUU5QixvQ0FBb0M7QUFBQSxtQkFBbUI7QUFPdkQsOEJBQThCO0FBQUEsbURBQW1EO0FBR2pGLGlDQUFpQztBQUFBLDZCQUE2QjtBQU0vRCw2QkFBNkI7QUFJN0IsNEJBQTRCO0FBTTVCLDJCQUEyQjtBQU0zQiwyQkFBMkI7QUFNM0IscUNBQXFDO0FBV3JDLDZCQUE2QjtBQVM3Qiw2QkFBNkI7QUFVNUIsNEJBQTRCO0FBRTVCLDJCQUEyQjtBQUM1QixtREFBbUQ7QUFjbkQseUJBQXlCO0FBSXpCLHlCQUF5QjtBQVd4QixtQ0FBbUM7QUFBQSwwQkFBMEI7QUFNOUQscUJBQXFCO0FBT3JCLHdCQUF3QjtBQU92QixpQ0FBaUM7QUM3T2xDOztH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 */
