@charset "UTF-8";
/**
 * Wonderful Union
 * Origin Theme
**/
/* Origin Dependencies */
/*
* Default Bootstrap Vars
* raw.githubusercontent.com/twbs/bootstrap-sass/master/assets/stylesheets/bootstrap/_variables.scss
*/
/* Type */
/* Fonts */
/* Color */
/* Nav */
/* Account Var's */
/* Helpers */
.no-pagination .section-pagination {
  display: none; }

.row.no-gutters {
  margin-right: 0;
  margin-left: 0; }

.row.no-gutters > [class^="col-"],
.row.no-gutters > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0; }

.modal-content {
  max-height: 90vh;
  overflow-x: scroll; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table;
  clear: both; }

/**
 * import this into client directory and redefine
 * sass variables for customization
 * find variables inside @import './variables/variables.scss';
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* Avatar rollovers */
.avatar_wrapper {
  position: relative;
  max-width: 100%;
  transition: none; }

.avatar_rollover {
  position: absolute;
  z-index: 1100;
  padding: 6px;
  color: #222222;
  border-radius: 5px;
  background-color: #EEEEEE;
  opacity: 0.9; }
  .avatar_rollover img {
    float: left;
    width: 100px;
    height: 100px;
    margin-right: 6px; }
  .avatar_rollover .rollover_content {
    float: left;
    width: 200px;
    overflow: hidden; }
    .avatar_rollover .rollover_content p {
      margin: 0;
      padding: 0; }
    .avatar_rollover .rollover_content .name {
      font-weight: 700;
      font-size: 18px; }
    .avatar_rollover .rollover_content .more dt, .avatar_rollover .rollover_content .more dd {
      width: 49px;
      margin: 0;
      padding: 0;
      float: left; }
    .avatar_rollover .rollover_content .more .stat {
      float: left;
      width: 100px; }

/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

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

.clearfix:after {
  clear: both; }

body {
  background-color: transparent;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1180px; }
    @media screen and (max-width: 1180px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #6c9cc4; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: rgba(108, 156, 196, 0.75);
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 0; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: transparent; }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1180px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 4px;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 4px; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #34364c; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #6c9cc4; }
  .button-primary:hover, .button-primary:focus {
    background-color: #4883b5; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #6c9cc4 transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #f2f2f2;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* store imports */
/* mixin for flaged listing for products and categories */
/**
 * general listing for products and categories
 */
/* store elements */
.main-store-products,
.main-category-products {
  width: 75%;
  float: left;
  padding-right: 15px; }
  .main-store-products:before, .main-store-products:after,
  .main-category-products:before,
  .main-category-products:after {
    content: '';
    display: table; }
  .main-store-products:after,
  .main-category-products:after {
    clear: both; }
  @media screen and (max-width: 840px) {
    .main-store-products,
    .main-category-products {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .main-store-products,
        .main-category-products {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-store-products img,
  .main-category-products img {
    width: 100%; }

.aside-store {
  color: #040404;
  width: 25%;
  float: right;
  padding-left: 15px; }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .aside-store {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }

aside#wu-alert-banner {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 100vw;
  min-height: 50px;
  position: absolute;
  background-color: #db0000;
  opacity: 0.9;
  color: #fff;
  z-index: 1234;
  display: flex;
  align-items: center;
  justify-content: center; }
  aside#wu-alert-banner .message-text {
    text-align: center;
    flex-basis: 50%; }
    aside#wu-alert-banner .message-text .more-info {
      color: #fff;
      text-decoration: underline;
      display: block; }
      aside#wu-alert-banner .message-text .more-info:hover, aside#wu-alert-banner .message-text .more-info:focus {
        color: #fff; }
  aside#wu-alert-banner .close {
    cursor: pointer;
    opacity: 1;
    color: #fff;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 10px;
    top: 10px; }

.section-order-billing {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-billing {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-billing {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-order-billing .section-billing-profile,
  .section-order-billing .section-billing-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-order-billing .section-billing-profile,
      .section-order-billing .section-billing-information {
        padding: 10px; } }
    .section-order-billing .section-billing-profile h1, .section-order-billing .section-billing-profile h2, .section-order-billing .section-billing-profile h3,
    .section-order-billing .section-billing-information h1,
    .section-order-billing .section-billing-information h2,
    .section-order-billing .section-billing-information h3 {
      margin-top: 0; }
    .section-order-billing .section-billing-profile input, .section-order-billing .section-billing-profile select,
    .section-order-billing .section-billing-information input,
    .section-order-billing .section-billing-information select {
      background-color: #fff;
      border-radius: 4px;
      font: 300 16px "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .section-order-billing .section-billing-profile .row-payment-method,
    .section-order-billing .section-billing-information .row-payment-method {
      margin-bottom: 20px; }
    .section-order-billing .section-billing-profile .fieldset,
    .section-order-billing .section-billing-information .fieldset {
      padding: 0 20px 0 0;
      float: left;
      width: 50%;
      position: relative;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-order-billing .section-billing-profile .fieldset,
        .section-order-billing .section-billing-information .fieldset {
          display: block;
          width: 100%;
          padding: 0; } }
      .section-order-billing .section-billing-profile .fieldset legend,
      .section-order-billing .section-billing-information .fieldset legend {
        position: relative;
        border: 0;
        width: 100%;
        top: 5px;
        color: #040404; }
      .section-order-billing .section-billing-profile .fieldset ul,
      .section-order-billing .section-billing-information .fieldset ul {
        position: relative; }
    .section-order-billing .section-billing-profile .button:nth-child(2),
    .section-order-billing .section-billing-information .button:nth-child(2) {
      margin-left: 10px; }
    .section-order-billing .section-billing-profile .button-continue,
    .section-order-billing .section-billing-profile .button-save,
    .section-order-billing .section-billing-information .button-continue,
    .section-order-billing .section-billing-information .button-save {
      background-color: #6c9cc4; }
      .section-order-billing .section-billing-profile .button-continue:hover, .section-order-billing .section-billing-profile .button-continue:focus,
      .section-order-billing .section-billing-profile .button-save:hover,
      .section-order-billing .section-billing-profile .button-save:focus,
      .section-order-billing .section-billing-information .button-continue:hover,
      .section-order-billing .section-billing-information .button-continue:focus,
      .section-order-billing .section-billing-information .button-save:hover,
      .section-order-billing .section-billing-information .button-save:focus {
        background-color: #4883b5; }
  .section-order-billing .section-billing-profile {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-bottom: 0; }
  .section-order-billing .section-billing-information {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 0; }
  .section-order-billing .StripeElement {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 8px 10px;
    width: 100%;
    height: 36px;
    text-align: left;
    text-indent: 9px;
    color: #000;
    background-color: #fff;
    border-radius: 4px; }

.cart-info {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 0; }
  @media screen and (max-width: 840px) {
    .cart-info {
      padding: 10px; } }
  .cart-info .cart-items {
    float: right; }
    @media screen and (max-width: 840px) {
      .cart-info .cart-items {
        float: none; } }

.section-cart {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-cart {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-cart {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-cart h1 {
    font-size: 28px;
    margin: 20px 0 40px 0; }
    @media screen and (max-width: 840px) {
      .section-cart h1 {
        text-align: center; } }
  .section-cart .section-cart-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-cart .section-cart-information {
        padding: 10px; } }
    .section-cart .section-cart-information .review {
      border-bottom: 1px solid #34364c;
      padding: 10px 12px; }
  .section-cart .table {
    border-radius: 4px;
    padding: 10px; }
    @media screen and (max-width: 840px) {
      .section-cart .table thead {
        display: none; } }
    .section-cart .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-cart .table .total {
          text-align: left; } }
    .section-cart .table th.quantity,
    .section-cart .table td.quantity {
      white-space: nowrap;
      width: 100px; }
      @media screen and (max-width: 840px) {
        .section-cart .table th.quantity,
        .section-cart .table td.quantity {
          width: 100%; } }
    .section-cart .table th {
      padding: 12px; }
    .section-cart .table td {
      font-weight: 300;
      padding: 12px;
      vertical-align: baseline; }
      @media screen and (max-width: 840px) {
        .section-cart .table td {
          display: block;
          width: 100%; }
          .section-cart .table td::before {
            content: attr(data-description);
            display: block;
            font-weight: 800; } }
      @media screen and (max-width: 840px) {
        .section-cart .table td.td-bundle-extra {
          display: none; } }
      .section-cart .table td .button-quantity {
        background-color: #666666;
        font-size: 12px;
        font-weight: bold;
        height: 32px;
        line-height: 1;
        padding: 0;
        text-transform: uppercase;
        width: 31px; }
        .section-cart .table td .button-quantity:hover {
          background-color: #444444; }
      .section-cart .table td.item a {
        margin-right: 5px;
        text-transform: capitalize; }
        .section-cart .table td.item a:hover {
          color: #f2f2f2; }
      .section-cart .table td.item .sku {
        color: #666666;
        display: block; }
      .section-cart .table td.quantity input,
      .section-cart .table td.quantity select {
        background-color: #fff;
        border: 0;
        color: #040404;
        height: 32px;
        margin-right: 4px;
        position: relative;
        top: 2px;
        width: 36px; }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot {
        display: block;
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot th,
      .section-cart .table tfoot td {
        display: block;
        padding: 8px 12px 4px 12px; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot td {
        padding: 2px 12px; } }
  .section-cart .table > thead > tr > th,
  .section-cart .table > tbody > tr > td {
    border-bottom: 1px solid #34364c;
    border-top: 0; }
    @media screen and (max-width: 840px) {
      .section-cart .table > thead > tr > th:not(:last-child),
      .section-cart .table > tbody > tr > td:not(:last-child) {
        border-color: rgba(52, 54, 76, 0.2); } }
  .section-cart .table > tfoot > tr > td,
  .section-cart .table > tfoot > tr > th {
    border-top: 0;
    text-align: right;
    width: 100px; }
    @media screen and (max-width: 840px) {
      .section-cart .table > tfoot > tr > td,
      .section-cart .table > tfoot > tr > th {
        text-align: left;
        width: 100%; } }
  .section-cart .row-buttons-actions {
    border-top: 1px solid #34364c;
    margin-top: 20px;
    overflow: hidden;
    padding: 20px 0;
    width: 100%; }
    @media screen and (min-width: 840px) {
      .section-cart .row-buttons-actions .button-group {
        float: right; } }
    @media screen and (max-width: 840px) {
      .section-cart .row-buttons-actions .button-continue {
        padding: 12px;
        width: 100%; }
        .section-cart .row-buttons-actions .button-continue:hover, .section-cart .row-buttons-actions .button-continue:focus {
          color: #666666; } }
    .section-cart .row-buttons-actions a,
    .section-cart .row-buttons-actions button {
      padding: 12px 24px;
      background-color: #666666;
      border: 0;
      border-radius: 4px;
      color: #fff;
      display: inline-block;
      font-size: initial;
      text-align: center;
      text-transform: capitalize;
      transition: 0.5s ease;
      display: inline-block; }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: gray;
        color: #fff;
        text-decoration: none;
        outline: 0;
        box-shadow: none; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions a,
        .section-cart .row-buttons-actions button {
          display: block;
          margin-bottom: 20px;
          width: 100%; } }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: #AAAAAA; }
    .section-cart .row-buttons-actions .button-update {
      margin-right: 20px; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions .button-update {
          margin-right: 0; } }
    .section-cart .row-buttons-actions .button-checkout {
      background-color: #6c9cc4; }
      .section-cart .row-buttons-actions .button-checkout:hover, .section-cart .row-buttons-actions .button-checkout:focus {
        background-color: #4883b5; }

.section-store-categories .item {
  width: 33%;
  text-align: center; }
  .section-store-categories .item .figure {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden; }
    .section-store-categories .item .figure a {
      display: block;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
    .section-store-categories .item .figure img {
      width: 100%;
      max-width: 100%;
      vertical-align: middle;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-store-categories .item .figure img {
          margin: auto; } }
  .section-store-categories .item .product-details {
    margin-top: 10px; }
    .section-store-categories .item .product-details .product-container .product {
      margin-top: 5px; }

.section-store-categories .header-store-categories h2.title {
  margin-bottom: 60px; }

.section-store-categories .item {
  height: 100%;
  min-height: 100%;
  margin-bottom: 20px; }

.section-store-categories .item .content {
  background-color: #fff; }
  .section-store-categories .item .content a {
    padding: 6px 10px 10px 10px; }
    .section-store-categories .item .content a:hover {
      color: rgba(4, 4, 4, 0.5); }

.section-store-categories .header-categories .title, .section-store-categories .header-store-categories .title {
  margin-bottom: 20px; }

.section-store-categories .detail-store-categories {
  overflow: hidden;
  margin: 20px auto 100px auto; }
  .section-store-categories .detail-store-categories .listing {
    display: flex;
    flex-wrap: wrap; }

.section-store-categories .details.excerpt .name {
  position: relative;
  top: 5px; }

/* store category nav list */
.nav-categories {
  text-align: center; }
  .nav-categories .wrap {
    padding-bottom: 12px;
    padding-top: 12px; }
    .nav-categories .wrap .listing {
      display: inline-block; }

.main-category-products .header-category h1.title {
  margin-bottom: 60px; }

.main-category-products .listing {
  display: flex;
  flex-wrap: wrap; }

.main-category-products .detail {
  display: block;
  overflow: hidden;
  margin: 0 0 100px 0; }
  .main-category-products .detail .item {
    width: 33%;
    text-align: center; }
    .main-category-products .detail .item .figure {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 100%;
      min-width: 0;
      max-width: 100%;
      overflow: hidden; }
      .main-category-products .detail .item .figure a {
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0; }
      .main-category-products .detail .item .figure img {
        width: 100%;
        max-width: 100%;
        vertical-align: middle;
        transition: 0.5s ease; }
        @media screen and (max-width: 840px) {
          .main-category-products .detail .item .figure img {
            margin: auto; } }
    .main-category-products .detail .item .product-details {
      margin-top: 10px; }
      .main-category-products .detail .item .product-details .product-container .product {
        margin-top: 5px; }
  .main-category-products .detail .item {
    padding: 0 20px;
    margin-bottom: 40px; }
    @media screen and (max-width: 500px) {
      .main-category-products .detail .item {
        padding: 0 10px;
        width: 50%; }
        .main-category-products .detail .item .name {
          font-size: 0.8em; } }
  .main-category-products .detail .details .tab {
    display: none; }
  .main-category-products .detail .details .product-details {
    text-align: center; }
  .main-category-products .detail .cash {
    font-weight: 800; }

@media screen and (max-width: 840px) {
  .section-order-extra {
    padding: 20px; } }

.section-order-extra .section-additional-information {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px; }
  @media screen and (max-width: 840px) {
    .section-order-extra .section-additional-information {
      padding: 10px; } }
  .section-order-extra .section-additional-information .fieldset legend {
    position: relative;
    border: 0;
    width: 100%;
    top: 5px;
    color: #040404;
    color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-shipping-back {
    padding: 14px 24px; }
    .section-order-extra .section-additional-information .row-buttons .button-shipping-back:hover, .section-order-extra .section-additional-information .row-buttons .button-shipping-back:focus {
      color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info {
    background-color: #6c9cc4;
    margin-left: 10px; }
    .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:hover, .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:focus {
      background-color: #4883b5; }

.section-payment-information {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-payment-information {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-payment-information {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-payment-information .header-order-summary {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px;
    margin-bottom: 30px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 0 20px; } }
  .section-payment-information .section-payment-address-information,
  .section-payment-information .section-purchase-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information,
      .section-payment-information .section-purchase-information {
        padding: 10px; } }
    .section-payment-information .section-payment-address-information .col,
    .section-payment-information .section-purchase-information .col {
      float: left; }
      .section-payment-information .section-payment-address-information .col.col-1-2,
      .section-payment-information .section-purchase-information .col.col-1-2 {
        width: 50%;
        margin-bottom: 20px; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .col.col-1-2,
          .section-payment-information .section-purchase-information .col.col-1-2 {
            width: 100%;
            display: block;
            clear: both; }
            .section-payment-information .section-payment-address-information .col.col-1-2:nth-child(2),
            .section-payment-information .section-purchase-information .col.col-1-2:nth-child(2) {
              margin-top: 20px; } }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul:nth-child(2),
        .section-payment-information .section-purchase-information .col.col-1-2 ul:nth-child(2) {
          margin: 10px 0; }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul li:nth-child(1),
        .section-payment-information .section-purchase-information .col.col-1-2 ul li:nth-child(1) {
          padding-bottom: 5px; }
    .section-payment-information .section-payment-address-information .table > thead > tr > th,
    .section-payment-information .section-payment-address-information .table > tbody > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > thead > tr > th,
    .section-payment-information .section-purchase-information .table > tbody > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      border-bottom: 1px solid #34364c;
      border-top: 0; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > th:not(:last-child) {
          border-color: rgba(52, 54, 76, 0.2); } }
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      text-align: right; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
      .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
      .section-payment-information .section-purchase-information .table > tfoot > tr > td,
      .section-payment-information .section-purchase-information .table > tfoot > tr > th {
        text-align: left;
        width: 100%;
        border-top: 0;
        border-bottom: 0; } }
    .section-payment-information .section-payment-address-information .table .total,
    .section-payment-information .section-purchase-information .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .total,
        .section-payment-information .section-purchase-information .table .total {
          text-align: left; } }
      .section-payment-information .section-payment-address-information .table .total strong,
      .section-payment-information .section-purchase-information .table .total strong {
        background-color: #5cb85c;
        color: #fff;
        padding: 6px 8px;
        border-radius: 14px;
        font-size: 1.2em; }
    .section-payment-information .section-payment-address-information .table .sku,
    .section-payment-information .section-purchase-information .table .sku {
      color: #666666; }
    .section-payment-information .section-payment-address-information .table .quantity,
    .section-payment-information .section-purchase-information .table .quantity {
      text-align: center; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .quantity,
        .section-payment-information .section-purchase-information .table .quantity {
          text-align: left; } }
    .section-payment-information .section-payment-address-information .table a.button,
    .section-payment-information .section-purchase-information .table a.button {
      width: 160px;
      font-size: 12px; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table a.button,
        .section-payment-information .section-purchase-information .table a.button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table .button,
    .section-payment-information .section-purchase-information .table .button {
      display: block; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .button,
        .section-payment-information .section-purchase-information .table .button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table #promoCode,
    .section-payment-information .section-purchase-information .table #promoCode {
      display: none; }
      .section-payment-information .section-payment-address-information .table #promoCode input,
      .section-payment-information .section-purchase-information .table #promoCode input {
        text-align: left;
        width: 340px;
        display: inline;
        height: 42px;
        text-indent: 9px;
        background-color: #fff; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .table #promoCode input,
          .section-payment-information .section-purchase-information .table #promoCode input {
            margin-top: 10px;
            width: 100%; } }
      .section-payment-information .section-payment-address-information .table #promoCode button,
      .section-payment-information .section-purchase-information .table #promoCode button {
        margin-top: 10px;
        display: inline;
        font-size: 12px;
        background-color: #6c9cc4; }
        .section-payment-information .section-payment-address-information .table #promoCode button:hover, .section-payment-information .section-payment-address-information .table #promoCode button:focus,
        .section-payment-information .section-purchase-information .table #promoCode button:hover,
        .section-payment-information .section-purchase-information .table #promoCode button:focus {
          background-color: #4883b5; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table thead,
      .section-payment-information .section-purchase-information .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table td,
      .section-payment-information .section-purchase-information .table td {
        display: block;
        width: 100%; }
        .section-payment-information .section-payment-address-information .table td:before,
        .section-payment-information .section-purchase-information .table td:before {
          content: attr(data-description);
          display: block;
          font-weight: 800; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot,
      .section-payment-information .section-purchase-information .table tfoot {
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot th, .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot th,
      .section-payment-information .section-purchase-information .table tfoot td {
        display: block;
        padding: 12px 8px 4px 8px;
        border-bottom: 0;
        border-top: 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot td {
        padding: 8px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table #totals tr .grand-total,
      .section-payment-information .section-purchase-information .table #totals tr .grand-total {
        margin-bottom: 20px; } }
  .section-payment-information .section-purchase-information {
    margin-top: 20px; }
    .section-payment-information .section-purchase-information .table {
      margin-bottom: 40px; }
    .section-payment-information .section-purchase-information .row-review a {
      text-decoration: underline; }
    .section-payment-information .section-purchase-information .button-continue {
      background-color: #5cb85c; }
      .section-payment-information .section-purchase-information .button-continue:hover {
        background-color: #449d44; }
  .section-payment-information a.button {
    text-align: center; }
    .section-payment-information a.button:hover, .section-payment-information a.button:focus {
      color: #fff; }
  .section-payment-information .row-review {
    margin-top: 20px; }

.section-will-call .section-will-call-form {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px; }
  @media screen and (max-width: 840px) {
    .section-will-call .section-will-call-form {
      padding: 10px; } }

.aside-store {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px;
  float: right;
  width: 25%;
  margin: 0; }
  @media screen and (max-width: 840px) {
    .aside-store {
      padding: 10px; } }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      width: 100%; } }
  .aside-store > .header {
    padding: 0 0 15px 0; }
  .aside-store .header .title {
    margin-bottom: 20px; }
  .aside-store .header .cart-items {
    float: none; }
  .aside-store .header-aside .title {
    color: #040404; }
  .aside-store .header-aside .meta .expire .cart {
    font-size: 12px; }
  .aside-store .view-cart {
    text-align: center; }
    .aside-store .view-cart .button.cart {
      display: inline-block;
      background-color: #6c9cc4;
      padding: 11px 20px;
      font-size: 14px; }
      .aside-store .view-cart .button.cart .badge {
        background-color: #fff;
        color: #6c9cc4;
        margin: -0.2em 0 0 0.5em; }
      .aside-store .view-cart .button.cart:hover {
        background-color: #4883b5; }
  .aside-store .cart-items {
    margin: 10px auto 5px;
    text-align: center; }
  .aside-store .title {
    border-right: 0; }
  .aside-store .listing .item {
    padding: 10px 5px;
    border-bottom: 1px solid #34364c; }
    .aside-store .listing .item span, .aside-store .listing .item a {
      transition: 0.5s ease; }
  .aside-store .section-categories .header-aside, .aside-store .section-categories .header-categories {
    background-color: initial;
    border-color: transparent; }
    .aside-store .section-categories .header-aside .title, .aside-store .section-categories .header-categories .title {
      margin: 0;
      font-size: 16px;
      text-align: center; }
  .aside-store .section-categories .detail ul li:nth-child(1) {
    border-top: 1px solid #34364c; }
  .aside-store .section-categories .item.current {
    font-weight: 800; }
  @media screen and (min-width: 840px) {
    .aside-store .section-categories .collapse, .aside-store .section-categories .collapsing {
      display: block;
      height: auto !important; }
    .aside-store .section-categories .btn-accordion:after {
      display: none; } }

.cart-timer {
  text-align: center; }
  .cart-timer .expire {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 0.9em;
    white-space: normal; }
    .cart-timer .expire .cart {
      visibility: hidden;
      color: #fff; }
      .cart-timer .expire .cart-visible {
        visibility: visible; }

.checkout-progress {
  background-color: #f7f7f7;
  text-align: center;
  padding: 10px 0;
  margin: 10px auto 30px;
  display: block;
  border-radius: 4px;
  max-width: 1180px; }
  .checkout-progress li {
    color: #040404;
    display: inline;
    padding: 20px 10px; }
    @media screen and (max-width: 840px) {
      .checkout-progress li {
        display: block;
        padding: 10px; } }
    .checkout-progress li i {
      color: #5cb85c;
      top: 3px;
      padding-right: 3px; }
  .checkout-progress .current {
    font-weight: 800; }

.section-product-detail {
  color: #040404; }
  @supports (padding: 0px) {
    .section-product-detail {
      padding-left: max(10px, env(safe-area-inset-left));
      padding-right: max(10px, env(safe-area-inset-right)); } }
  .section-product-detail .wrap {
    display: block;
    overflow: hidden;
    background-color: #f7f7f7;
    border: 0 solid #3C3333;
    border-radius: 4px;
    color: #040404;
    padding: 20px; }
    @media screen and (max-width: 840px) {
      .section-product-detail .wrap {
        padding: 10px; }
        @supports (padding: 0px) {
          .section-product-detail .wrap {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (min-width: 841px) {
    .section-product-detail .section-product-description,
    .section-product-detail .section-product-purchase {
      float: left;
      width: 50%;
      padding: 12px; } }
  .section-product-detail .section-product-description .figure {
    background-color: #fff;
    border: 0 solid #3C3333;
    max-width: 400px;
    margin: 10px auto;
    text-align: center; }
    .section-product-detail .section-product-description .figure.active .image-placeholder {
      display: none; }
    .section-product-detail .section-product-description .figure .image {
      max-width: 96%;
      margin: 2% auto;
      padding: 2%;
      vertical-align: middle;
      transition: 0.5s ease; }
    .section-product-detail .section-product-description .figure ul li {
      display: inline; }
      .section-product-detail .section-product-description .figure ul li img {
        transition: 0.5s ease; }
        .section-product-detail .section-product-description .figure ul li img:hover {
          opacity: 0.8; }
  .section-product-detail .section-product-description .product-social {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin: 2em 0; }
    .section-product-detail .section-product-description .product-social .like {
      margin-top: 0;
      width: 80px; }
    .section-product-detail .section-product-description .product-social .trustpilot-widget {
      width: 180px;
      height: 38px; }
  .section-product-detail .section-product-purchase {
    margin-bottom: 60px; }
    .section-product-detail .section-product-purchase > h1 {
      color: #040404;
      font-size: 22px;
      padding-top: 0;
      margin-top: 0;
      line-height: 1em; }
    .section-product-detail .section-product-purchase .price {
      font-size: 30px;
      margin: 0; }
    .section-product-detail .section-product-purchase p {
      margin: 0.25em 0 0.5em 0;
      line-height: 1.5em; }
    .section-product-detail .section-product-purchase ul li {
      list-style: none;
      margin: 0; }
      .section-product-detail .section-product-purchase ul li.price {
        margin-bottom: 10px; }
      .section-product-detail .section-product-purchase ul li.stock, .section-product-detail .section-product-purchase ul li.sku {
        display: inline-block; }
      .section-product-detail .section-product-purchase ul li.stock {
        background-color: #6C8869;
        color: #fff;
        border-radius: 15px;
        padding: 0 10px;
        font-size: 12px;
        margin-right: 6px;
        line-height: 2; }
        .section-product-detail .section-product-purchase ul li.stock.out {
          background-color: #d9534f; }
    .section-product-detail .section-product-purchase .purchase_form fieldset {
      margin-top: 20px;
      padding-top: 0;
      position: relative;
      transition: all 1ms 100ms; }
      .section-product-detail .section-product-purchase .purchase_form fieldset legend {
        padding: 0;
        border-bottom: 0;
        margin-bottom: 0; }
        .section-product-detail .section-product-purchase .purchase_form fieldset legend span {
          color: #040404;
          display: block;
          padding: 2px 0 10px 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input {
        color: #040404;
        line-height: 1.0;
        background-color: #fff; }
        .section-product-detail .section-product-purchase .purchase_form fieldset input:focus {
          opacity: 0.6;
          outline: none; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input[type="radio"], .section-product-detail .section-product-purchase .purchase_form fieldset input[type="checkbox"] {
        margin-top: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
        margin-right: 4px;
        width: auto; }
        @media screen and (max-width: 840px) {
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
            line-height: 26px; } }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select select {
        border: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked {
          display: block;
          padding: 12px 6px;
          border-radius: 5px;
          background-color: #B4D7B8;
          border: 1px solid #6C8869;
          line-height: 1.5; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label {
            color: #666666;
            padding-left: 30px; }
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label span {
              color: #6C8869;
              display: block; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked input {
            margin: 2px 0 0 -25px;
            width: auto;
            height: auto; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity {
          display: inline;
          width: 50px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity label {
            display: inline;
            margin-right: 5px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity .error {
            position: absolute;
            top: 35px;
            color: #d9534f; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
          float: right;
          padding: 2px 10px;
          width: 140px;
          font-size: 16px;
          background-color: #6c9cc4;
          transition: 0.5s ease; }
          @media screen and (max-width: 400px) {
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
              display: block;
              clear: both;
              width: 100%;
              margin: 10px auto; } }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart:hover {
            background-color: #4883b5; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul li {
        line-height: 36px;
        position: relative; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul + ul {
        margin-top: 10px;
        border-top: 1px solid #34364c; }
    .section-product-detail .section-product-purchase .meta {
      padding: 0 0 20px 0;
      margin-bottom: 20px;
      border-bottom: 1px solid #34364c; }

/* 2-col Product Listing */
@media screen and (max-width: 500px) {
  .main-store-products .header-products .title {
    text-align: center; } }

@media screen and (max-width: 500px) {
  .main-store-products .products .item {
    width: 100%; } }

.main-store-products .products .cost {
  font-weight: 800; }

.main-store-products .products.section-products-featured {
  overflow: hidden; }
  .main-store-products .products.section-products-featured .listing .none {
    display: none; }

.main-store-products .products.section-products {
  overflow: hidden;
  margin-bottom: 20px; }

/* 3-col Product Listing */
.section-products-featured, .section-products {
  display: block;
  clear: both;
  overflow: hidden; }
  .section-products-featured .listing, .section-products .listing {
    display: flex;
    flex-wrap: wrap; }
    .section-products-featured .listing .item, .section-products .listing .item {
      width: 33%;
      padding: 0 20px;
      margin-bottom: 40px; }
      @media screen and (max-width: 500px) {
        .section-products-featured .listing .item, .section-products .listing .item {
          padding: 0 10px;
          width: 50%; } }
      .section-products-featured .listing .item .flag, .section-products .listing .item .flag {
        display: none; }
      .section-products-featured .listing .item .tab, .section-products .listing .item .tab {
        display: none; }
      .section-products-featured .listing .item .product-details, .section-products-featured .listing .item .tab, .section-products .listing .item .product-details, .section-products .listing .item .tab {
        text-align: center; }

.section-products-featured .listing .item {
  width: 50%; }
  @media screen and (max-width: 500px) {
    .section-products-featured .listing .item {
      width: 100%; } }

@media screen and (max-width: 500px) {
  .section-products .item .name {
    font-size: 0.8em; } }

.section-shipping-method {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-shipping-method {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-shipping-method {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-shipping-method .section-shipping-address-container,
  .section-shipping-method .section-shipping-method-container {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .section-shipping-address-container,
      .section-shipping-method .section-shipping-method-container {
        padding: 10px; } }
    .section-shipping-method .section-shipping-address-container .button-save-address,
    .section-shipping-method .section-shipping-address-container .button-save-method,
    .section-shipping-method .section-shipping-method-container .button-save-address,
    .section-shipping-method .section-shipping-method-container .button-save-method {
      background-color: #6c9cc4; }
      .section-shipping-method .section-shipping-address-container .button-save-address:hover, .section-shipping-method .section-shipping-address-container .button-save-address:focus,
      .section-shipping-method .section-shipping-address-container .button-save-method:hover,
      .section-shipping-method .section-shipping-address-container .button-save-method:focus,
      .section-shipping-method .section-shipping-method-container .button-save-address:hover,
      .section-shipping-method .section-shipping-method-container .button-save-address:focus,
      .section-shipping-method .section-shipping-method-container .button-save-method:hover,
      .section-shipping-method .section-shipping-method-container .button-save-method:focus {
        background-color: #4883b5; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox label {
    margin-left: 20px; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox input {
    margin: 2px 0 0 -20px; }
  .section-shipping-method .section-shipping-method-container {
    margin-top: 20px; }
  .section-shipping-method .fieldset {
    padding: 0 20px 0 0;
    float: left;
    width: 50%;
    position: relative;
    transition: 0.5s ease;
    margin: 20px 0; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .fieldset {
        width: 100%;
        display: block;
        clear: both;
        padding: 0; }
        .section-shipping-method .fieldset:nth-child(2) {
          margin-top: 20px; } }
    .section-shipping-method .fieldset legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }
    .section-shipping-method .fieldset .checkbox input {
      width: auto;
      height: auto;
      margin: 0 5px 10px 0; }
    .section-shipping-method .fieldset .checkbox label {
      padding: 0;
      margin: 0  5px 0 0; }
    .section-shipping-method .fieldset .checkbox select {
      height: 36px;
      color: #040404;
      background-color: #fff;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
      background-position: calc(98.75% - 5px) 50%;
      background-repeat: no-repeat;
      background-size: 10px;
      border-radius: 4px;
      line-height: 36px;
      width: calc(100%  - 80px);
      padding: 0;
      border: 0;
      margin-bottom: 10px; }
      .section-shipping-method .fieldset .checkbox select:focus {
        opacity: 0.8;
        outline: none; }
    .section-shipping-method .fieldset .radio + .radio, .section-shipping-method .fieldset .checkbox + .checkbox {
      margin-top: 0; }
  .section-shipping-method #internationalFieldset .checkbox input {
    margin: 0;
    width: 20px;
    height: auto;
    position: relative; }
  .section-shipping-method .row-buttons .button:nth-child(2) {
    margin-left: 10px; }

/* account imports */
.main-account {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px;
  min-height: 600px; }
  @media screen and (max-width: 840px) {
    .main-account {
      padding: 10px; }
      @supports (padding: 0px) {
        .main-account {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-account, .main-account h1, .main-account h2, .main-account h3, .main-account h4, .main-account h5, .main-account h6 {
    color: #040404; }
  .main-account .header-account {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #34364c; }
    .main-account .header-account h1 {
      color: #040404;
      margin-top: 10px; }
  .main-account .aside-nav,
  .main-account .aside-account {
    padding: 10px;
    float: left; }
  .main-account .aside-nav {
    width: 25%; }
    @media screen and (max-width: 840px) {
      .main-account .aside-nav {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-nav {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    @media screen and (max-width: 800px) {
      .main-account .aside-nav {
        margin-bottom: 10px; } }
  .main-account .aside-account {
    width: 75%;
    padding-right: 0; }
    @media screen and (max-width: 840px) {
      .main-account .aside-account {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-account {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    .main-account .aside-account .fieldset-account legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }

.aside-account .table > tbody > tr > td {
  border-top: 1px solid #34364c; }

.aside-account .table > tbody > tr > th {
  border-top: 1px solid #34364c; }

.aside-account .table > thead tr > th {
  border-bottom: 1px solid #34364c; }

.main-account-manage-address .aside-account-manage-address legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-manage-address .aside-account-manage-address .fieldset-billing {
  border-bottom: 1px solid #34364c;
  margin-bottom: 20px;
  padding-bottom: 20px; }
  .main-account-manage-address .aside-account-manage-address .fieldset-billing .input input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .input select, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select select {
    line-height: 1.0;
    margin-right: 0; }

.main-account-manage-address .aside-account-manage-address .fieldset-shipping .checkbox input {
  margin-top: -8px;
  margin-left: -23px; }

.main-account-manage-address .aside-account-manage-address .row-policy-disclaimer {
  margin-top: 20px; }

.main-account-manage-address .aside-account-manage-address .row-buttons {
  padding-top: 20px;
  border-top: 1px solid #34364c; }

.main-account-dashboard .aside-account-dashboard .table .actions {
  text-align: right; }
  @media screen and (max-width: 840px) {
    .main-account-dashboard .aside-account-dashboard .table .actions {
      text-align: left; } }

@media screen and (max-width: 840px) {
  .main-account-dashboard .aside-account-dashboard .table thead {
    display: none; }
  .main-account-dashboard .aside-account-dashboard tr td, .main-account-dashboard .aside-account-dashboard tr th {
    display: block;
    width: 100%; } }

@media screen and (max-width: 840px) {
  .main-account-managed-linked .aside-account-managed-linked .table thead {
    display: none; }
  .main-account-managed-linked .aside-account-managed-linked tr td, .main-account-managed-linked .aside-account-managed-linked tr th {
    display: block;
    width: 100%; } }

.main-account-managed-linked .aside-account-managed-linked .table tr td {
  vertical-align: middle; }
  .main-account-managed-linked .aside-account-managed-linked .table tr td img {
    margin-right: 10px;
    width: 50px; }
  @media screen and (max-width: 840px) {
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(1) {
      padding-top: 16px;
      padding-bottom: 16px; }
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(2) {
      border-top: 0;
      padding-top: 0;
      padding-bottom: 16px; } }

.main-account-manage .aside-account .row-policy-preview {
  border-bottom: 1px solid #34364c;
  margin-bottom: 20px; }
  .main-account-manage .aside-account .row-policy-preview p {
    padding-bottom: 20px; }

.main-account-manage .aside-account .row-policy-disclaimer {
  margin-top: 20px; }

#container .main-account-manage .error, #container .main-account-manage .error a {
  position: static;
  color: #d9534f; }

.main-account-avatar .section-account-manage-avatar .note {
  display: block;
  clear: both;
  color: #040404; }

.main-account-avatar .section-account-manage-avatar p {
  color: #040404; }

.main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input {
  margin-bottom: 20px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file {
    margin: 10px 0; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file img {
      width: 100px;
      height: 100px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input {
    margin-bottom: 10px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"] {
    height: auto;
    line-height: 0;
    text-indent: 0;
    background-color: transparent; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"]:focus {
      opacity: 0.75;
      outline: none; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .url {
    color: #f7f7f7;
    padding: 0 5px 0 5px; }

.main-account-avatar .section-account-manage-avatar .row-privacy-policy-disclaimer {
  margin-top: 20px; }

.main-account-notifications .aside-account-notifications legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-notifications .aside-account-notifications .row-buttons-two {
  padding-top: 20px;
  border-top: 1px solid #34364c; }

.main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox {
  margin-bottom: 20px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox label {
    padding-left: 25px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox input[type="checkbox"] {
    margin-left: -24px;
    margin-top: 2px;
    width: auto;
    height: auto; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox + .checkbox {
    margin-top: 0; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox .note {
    margin: 2px 0 10px 24px; }

.section-order-summary {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-summary {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 20px 20px; }
      .section-order-summary .wrap {
        padding: 0; } }
  .section-order-summary h1, .section-order-summary .h1, .section-order-summary h2, .section-order-summary .h2, .section-order-summary h3, .section-order-summary .h3 {
    margin-top: 10px; }
  .section-order-summary .section-order-information,
  .section-order-summary .section-order-itemization,
  .section-order-summary .section-order-shipments,
  .section-order-summary .section-order-will-call {
    margin-bottom: 20px;
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information,
      .section-order-summary .section-order-itemization,
      .section-order-summary .section-order-shipments,
      .section-order-summary .section-order-will-call {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table thead,
      .section-order-summary .section-order-itemization .table thead,
      .section-order-summary .section-order-shipments .table thead,
      .section-order-summary .section-order-will-call .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table tr td, .section-order-summary .section-order-information .table tr th,
      .section-order-summary .section-order-itemization .table tr td,
      .section-order-summary .section-order-itemization .table tr th,
      .section-order-summary .section-order-shipments .table tr td,
      .section-order-summary .section-order-shipments .table tr th,
      .section-order-summary .section-order-will-call .table tr td,
      .section-order-summary .section-order-will-call .table tr th {
        display: block; } }
    .section-order-summary .section-order-information .table > thead > tr > th,
    .section-order-summary .section-order-itemization .table > thead > tr > th,
    .section-order-summary .section-order-shipments .table > thead > tr > th,
    .section-order-summary .section-order-will-call .table > thead > tr > th {
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tbody > tr > td,
    .section-order-summary .section-order-itemization .table > tbody > tr > td,
    .section-order-summary .section-order-shipments .table > tbody > tr > td,
    .section-order-summary .section-order-will-call .table > tbody > tr > td {
      border-top: 1px solid #34364c;
      border-bottom: 1px solid #34364c; }
      .section-order-summary .section-order-information .table > tbody > tr > td .sku,
      .section-order-summary .section-order-itemization .table > tbody > tr > td .sku,
      .section-order-summary .section-order-shipments .table > tbody > tr > td .sku,
      .section-order-summary .section-order-will-call .table > tbody > tr > td .sku {
        color: #fff; }
    .section-order-summary .section-order-information .table > tfoot > tr > td,
    .section-order-summary .section-order-itemization .table > tfoot > tr > td,
    .section-order-summary .section-order-shipments .table > tfoot > tr > td,
    .section-order-summary .section-order-will-call .table > tfoot > tr > td {
      border-top: 0;
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tfoot > tr > th,
    .section-order-summary .section-order-itemization .table > tfoot > tr > th,
    .section-order-summary .section-order-shipments .table > tfoot > tr > th,
    .section-order-summary .section-order-will-call .table > tfoot > tr > th {
      border-top: 0;
      border-bottom: 0; }
  .section-order-summary .section-order-information .col {
    float: left; }
    .section-order-summary .section-order-information .col.col-1-3 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-information .col.col-1-3 {
          width: 33.33%; } }
    .section-order-summary .section-order-information .col ul li .button {
      margin-top: 10px; }
  .section-order-summary .section-order-itemization .table > tfoot > tr > th {
    text-align: right; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-itemization .table > tfoot > tr > th {
        text-align: left; } }
  .section-order-summary .section-order-shipments .row-shipping-information .order.status {
    float: right;
    padding: 5px 12px;
    margin-right: 0;
    background-color: #1777A2;
    border-radius: 20px;
    margin-top: -5px; }
    @media screen and (min-width: 841px) {
      .section-order-summary .section-order-shipments .row-shipping-information .order.status {
        margin-right: 20px; } }
  .section-order-summary .section-order-shipments .row-shipping-information .col {
    float: left; }
    .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
          width: 50%; } }
      .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2:nth-child(2) strong {
        margin-bottom: 10px;
        display: block; }
  .section-order-summary .button-row .button {
    float: right; }
  .section-order-summary .trustpilot-review {
    margin: 2em auto;
    overflow: scroll;
    text-align: center; }

.main-account-order-list .aside-order-list h2 {
  margin-top: 0; }

.main-account-order-list .aside-order-list .no-orders {
  margin-top: 10px; }

@media screen and (max-width: 840px) {
  .main-account-order-list .aside-order-list .table thead {
    display: none; }
  .main-account-order-list .aside-order-list tr td, .main-account-order-list .aside-order-list tr th {
    display: block;
    width: 100%; } }

.aside-nav ul li {
  display: block;
  padding: 5px; }
  .aside-nav ul li a {
    display: block; }
    .aside-nav ul li a:hover {
      opacity: 0.6; }
    .aside-nav ul li a i {
      padding-right: 5px; }

.aside-nav ul .item.linked .counter {
  position: relative;
  top: -2px;
  left: 5px;
  padding: 6px 7px;
  border-radius: 50%;
  background-color: #f2f2f2;
  color: #fff;
  font-size: 12px; }

.aside-nav ul .item.avatar {
  text-align: center;
  margin-bottom: 20px; }
  @media screen and (max-width: 840px) {
    .aside-nav ul .item.avatar {
      text-align: left; } }
  .aside-nav ul .item.avatar .pic {
    margin-bottom: 20px;
    transition: 0.5s ease; }
    .aside-nav ul .item.avatar .pic img {
      width: 100%;
      max-width: 100%; }
      @media screen and (max-width: 840px) {
        .aside-nav ul .item.avatar .pic img {
          width: 240px; } }
    .aside-nav ul .item.avatar .pic .edit {
      visibility: hidden;
      position: absolute;
      display: block;
      padding: 8px 16px;
      font-size: 12px;
      font-weight: 400;
      background-color: #040404; }
      .aside-nav ul .item.avatar .pic .edit i {
        padding-right: 2px; }
    .aside-nav ul .item.avatar .pic:hover .edit {
      visibility: visible; }
  .aside-nav ul .item.avatar a {
    display: block; }

/**
 * store theme header
 * includes styles for bootstrap navbar
 */
.header-main {
  background-color: transparent;
  border-color: transparent; }
  .header-main .navbar-default, .header-main .navbar {
    margin-top: 20px;
    background-color: transparent;
    border-color: transparent; }
    .header-main .navbar-default .container-fluid, .header-main .navbar .container-fluid {
      padding-left: 0;
      padding-right: 0; }
    .header-main .navbar-default .navbar-nav > li > a, .header-main .navbar .navbar-nav > li > a {
      color: #6c9cc4;
      text-align: center; }
      .header-main .navbar-default .navbar-nav > li > a:hover, .header-main .navbar-default .navbar-nav > li > a:focus, .header-main .navbar .navbar-nav > li > a:hover, .header-main .navbar .navbar-nav > li > a:focus {
        color: rgba(108, 156, 196, 0.75); }
    .header-main .navbar-default .navbar-toggle, .header-main .navbar .navbar-toggle {
      margin-right: 15px;
      background-color: transparent;
      border-color: transparent; }
      .header-main .navbar-default .navbar-toggle .icon-bar, .header-main .navbar .navbar-toggle .icon-bar {
        background-color: #888888;
        position: relative;
        transition: top 130ms ease 130ms, bottom 130ms ease 130ms, transform 130ms ease; }
      .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar, .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar {
        background-color: #888888; }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2) {
          top: 6px;
          transform: rotate(45deg); }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3) {
          background-color: transparent; }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4) {
          top: -5px;
          transform: rotate(-45deg); }
    .header-main .navbar-default .navbar-collapse, .header-main .navbar .navbar-collapse {
      border-color: transparent; }

/* store theme footer */
.site-footer {
  position: relative;
  padding: 24px 12px;
  background-color: transparent;
  color: #040404; }
  .site-footer .wrap .site-logo {
    display: inline-block;
    vertical-align: middle; }
    @media screen and (max-width: 840px) {
      .site-footer .wrap .site-logo {
        display: block;
        margin: auto;
        text-align: center; } }
    .site-footer .wrap .site-logo img {
      width: 100px;
      max-width: 100%; }
  .site-footer .wrap .list {
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px; }
    @media screen and (max-width: 840px) {
      .site-footer .wrap .list {
        display: block;
        margin: 20px auto;
        text-align: center; } }
    .site-footer .wrap .list a {
      font-size: 14px;
      color: #040404; }
      .site-footer .wrap .list a:hover, .site-footer .wrap .list a:focus {
        color: #f2f2f2; }
    .site-footer .wrap .list span {
      font-size: 14px;
      color: #040404; }
    .site-footer .wrap .list-terms .item-coppa, .site-footer .wrap .list-terms .item-poweredby {
      display: block; }
    .site-footer .wrap .list li {
      display: inline-block;
      padding: 2px 0; }

/* store home styles */
.section-home-products {
  padding: 60px 0 100px 0; }
  .section-home-products .footer-home-products {
    display: block;
    clear: both;
    overflow: hidden;
    text-align: center; }
    .section-home-products .footer-home-products .button-all-products {
      display: block;
      width: 160px;
      margin: 20px auto; }

/* Styles for bootstrap carousel */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 40%;
  background: #333333 !important; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 40%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }

/*! 
 * angular-loading-bar v0.9.0
 * https://chieffancypants.github.io/angular-loading-bar
 * Copyright (c) 2016 Wes Cruver
 * License: MIT
 */
/* Make clicks pass-through */
#loading-bar,
#loading-bar-spinner {
  pointer-events: none;
  -webkit-pointer-events: none;
  transition: 350ms linear all; }

#loading-bar.ng-enter,
#loading-bar.ng-leave.ng-leave-active,
#loading-bar-spinner.ng-enter,
#loading-bar-spinner.ng-leave.ng-leave-active {
  opacity: 0; }

#loading-bar.ng-enter.ng-enter-active,
#loading-bar.ng-leave,
#loading-bar-spinner.ng-enter.ng-enter-active,
#loading-bar-spinner.ng-leave {
  opacity: 1; }

#loading-bar .bar {
  transition: width 350ms;
  background: #29d;
  position: fixed;
  z-index: 10002;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px; }

/* Fancy blur effect */
#loading-bar .peg {
  position: absolute;
  width: 70px;
  right: 0;
  top: 0;
  height: 2px;
  opacity: .45;
  -ms-box-shadow: #29d 1px 0 6px 1px;
  box-shadow: #29d 1px 0 6px 1px;
  border-radius: 100%; }

#loading-bar-spinner {
  display: block;
  position: fixed;
  z-index: 10002;
  top: 10px;
  left: 10px; }

#loading-bar-spinner .spinner-icon {
  width: 14px;
  height: 14px;
  border: solid 2px transparent;
  border-top-color: #29d;
  border-left-color: #29d;
  border-radius: 50%;
  -webkit-animation: loading-bar-spinner 400ms linear infinite;
  animation: loading-bar-spinner 400ms linear infinite; }

@-webkit-keyframes loading-bar-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes loading-bar-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Accessibility */
#page:focus {
  outline: none; }

/* Angular */
.ng-cloak {
  display: none; }

[ng-click], [data-ng-click], [ui-sref] {
  cursor: pointer; }

.page-inner {
  overflow: hidden; }

/* Old Browser Message */
p.browserupgrade {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: .2em;
  background: #f00;
  color: #fff;
  z-index: 9999999999; }

p.browserupgrade a {
  color: #fff;
  text-decoration: underline; }

p.browserupgrade a:hover {
  color: #fff; }

/* Splash Page */
.page-splash header, .page-splash footer {
  display: none; }

/* Helpers */
.show {
  display: block; }

.hide {
  display: none;
  visibility: hidden; }

.invisible {
  visibility: hidden; }

.modal-scroll {
  max-height: 400px;
  overflow-y: scroll; }

.pre-no-style {
  padding: 0;
  margin: 0;
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  border: 0;
  border-radius: 0; }

.fit-video {
  position: relative;
  padding-bottom: 56.25%; }
  .fit-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important; }

/* Master Fallback Fixes */
#GC.GC_birthday select {
  -webkit-appearance: menulist-button;
     -moz-appearance: menulist-button;
          appearance: menulist-button;
  display: inline-block; }

/*
 * Responsive/type reset for Origin Theme fallback to Master Theme
 */
@font-face {
  font-family: 'Glyphicons Master Theme';
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Master Theme';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.master-theme {
  /* General */
  /* Grid */
  /* Events */
  /* Store */
  /* Header */
  /* Featured Listing */
  /* Regular Listing */
  /* Sidebar */
  /* Categories */
  /* Account Center */
  /* Structure */
  /* Header */
  /* Sidebar */
  /* Avatar */
  /* Tables */
  /* Pagination */ }
  .master-theme p, .master-theme dl, .master-theme ol, .master-theme ul {
    margin: 1em 0;
    padding: 0; }
  .master-theme dd {
    margin: 0;
    padding: 0; }
  .master-theme i, .master-theme em {
    font-style: italic; }
  .master-theme b, .master-theme strong {
    font-weight: 700; }
    .master-theme b a, .master-theme b span, .master-theme strong a, .master-theme strong span {
      font-weight: inherit; }
  .master-theme table {
    margin: 0;
    border-collapse: separate; }
  .master-theme, .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6, .master-theme th, .master-theme dt, .master-theme p, .master-theme a, .master-theme span, .master-theme li, .master-theme td, .master-theme dd, .master-theme address, .master-theme input, .master-theme textarea, .master-theme .vcard, .master-theme #dashboard, .master-theme #breadcrumbs, .master-theme legend {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    -webkit-font-smoothing: antialiased; }
  .master-theme a, .master-theme a:visited {
    color: inherit;
    text-decoration: underline; }
  .master-theme button {
    cursor: pointer; }
  .master-theme {
    font-size: 16px; }
  .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6 {
    font-family: inherit;
    font-weight: 700;
    text-rendering: optimizelegibility; }
    .master-theme h1 a, .master-theme h2 a, .master-theme h3 a, .master-theme h4 a, .master-theme h5 a, .master-theme h6 a {
      text-decoration: none; }
  .master-theme h1 {
    font-size: 2em;
    line-height: 1.333em; }
  .master-theme h2 {
    font-size: 1.4em;
    line-height: 1.4em; }
  .master-theme h3 {
    font-size: 1.2em; }
  .master-theme h4 {
    font-size: 1.1em;
    font-weight: 700; }
  .master-theme h5 {
    font-size: 0.846em;
    line-height: 2.09em;
    letter-spacing: 2px; }
  .master-theme h6 {
    font-size: 0.67em; }
  .master-theme *, .master-theme *:before, .master-theme *:after {
    box-sizing: border-box; }
  .master-theme #fancybox-wrap {
    box-sizing: content-box; }
  .master-theme .clearfix:before, .master-theme .clearfix:after {
    content: "";
    display: table; }
  .master-theme .clearfix:after {
    clear: both; }
  .master-theme p.browserupgrade {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: .2em;
    background: #f00;
    color: #fff;
    z-index: 9999999999; }
  .master-theme p.browserupgrade a {
    color: #fff;
    text-decoration: underline; }
  .master-theme p.browserupgrade a:hover {
    color: #fff; }
  .master-theme .event .info, .master-theme .event #unified .title {
    display: none; }
  .master-theme #GC {
    margin: 0 auto;
    max-width: 1200px; }
  .master-theme input, .master-theme textarea {
    border: 1px solid #ccc;
    border-radius: 2px;
    background: #fff;
    box-shadow: none; }
  .master-theme #GC .recaptcha_input_area {
    width: auto !important;
    height: auto !important; }
  .master-theme blockquote {
    border: 0;
    background: rgba(255, 255, 255, 0.2); }
    .master-theme blockquote .author {
      font-weight: 700; }
  .master-theme pre {
    white-space: pre-wrap; }
  .master-theme .section.news .article > .footer .nav.actions > .readmore {
    float: none; }
  .master-theme .section.news .article > .footer .nav.actions {
    height: auto; }
  .master-theme #footer {
    height: auto; }
  .master-theme #breadcrumbs, .master-theme .rss {
    display: none; }
  .master-theme a[href*="/user/"] {
    word-break: break-all; }
  .master-theme .content li {
    list-style-type: disc;
    margin-left: 20px; }
  .master-theme #dashboard .section, .master-theme #page, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme.store #main.full, .master-theme #main.full, .master-theme .main.full, .master-theme #aside, .master-theme .aside {
    width: 100%; }
  .master-theme #dashboard .section, .master-theme #container, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme #main.full, .master-theme .main.full {
    max-width: 960px; }
  .master-theme #main, .master-theme .main {
    width: 54%;
    max-width: 540px;
    margin: 0 auto; }
  .master-theme #aside, .master-theme .aside {
    width: 38%;
    max-width: 380px;
    margin: 0 auto; }
  .master-theme .events .tickets a, .master-theme .events .tickets span, .master-theme .events .tickets.vip a {
    width: auto;
    height: auto;
    text-indent: 0;
    background: none; }
  .master-theme.store, .master-theme.store #aside .listing .item span, .master-theme.store #aside .listing .item a {
    font-family: inherit; }
  .master-theme.store #container {
    float: none;
    margin: 0 auto 150px auto;
    max-width: 920px;
    width: 100%; }
  .master-theme.store #main {
    float: left;
    margin: 0;
    width: 70%; }
  .master-theme.store #aside {
    float: left;
    margin: 0;
    width: 30%; }
  .master-theme.store #main > .section {
    padding: 0 15px !important; }
  .master-theme.store #main > .header,
  .master-theme.store #main > .section > .header {
    padding: 15px; }
  .master-theme.store #main .featured {
    clear: left;
    margin-bottom: 25px;
    padding: 40px 0 0 0;
    border: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .featured .listing .item,
  .master-theme.store #main .category.products .listing .item {
    margin: 0 2% 2% 0;
    height: auto !important;
    border: 0; }
  .master-theme.store #main .shop .listing .item > .product,
  .master-theme.store #main .featured .listing .item > .product,
  .master-theme.store #main .category.products .listing .item > .product {
    border: 4px solid #000; }
  .master-theme.store #main .shop .listing .item .figure,
  .master-theme.store #main .featured .listing .item .figure,
  .master-theme.store #main .category.products .listing .item .figure {
    overflow: hidden;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    height: 0; }
  .master-theme.store #main .listing .item a,
  .master-theme.store #main .listing .item a span,
  .master-theme.store #main .listing .item a span span {
    padding: 0; }
  .master-theme.store #main .shop .listing .item .content,
  .master-theme.store #main .featured .listing .item .content,
  .master-theme.store #main .category.products .listing .item .content,
  .master-theme.store #main .shop .listing .item:hover .content,
  .master-theme.store #main .featured .listing .item:hover .content,
  .master-theme.store #main .category.products .listing .item:hover .content {
    top: auto;
    bottom: 0;
    overflow: visible; }
  .master-theme.store #main .shop .listing .item .product-details,
  .master-theme.store #main .featured .listing .item .product-details,
  .master-theme.store #main .category.products .listing .item .product-details {
    overflow: hidden;
    max-height: 0;
    width: 100%;
    transition: max-height 0.3s ease; }
  .master-theme.store #main .shop .listing .item:hover .product-details,
  .master-theme.store #main .featured .listing .item:hover .product-details,
  .master-theme.store #main .category.products .listing .item:hover .product-details {
    max-height: 100px; }
  .master-theme.store #main .shop .listing .item .product-container,
  .master-theme.store #main .featured .listing .item .product-container,
  .master-theme.store #main .category.products .listing .item .product-container {
    padding: 0;
    width: 100%; }
  .master-theme.store #main .shop .listing .item .product-container > a,
  .master-theme.store #main .featured .listing .item .product-container > a,
  .master-theme.store #main .category.products .listing .item .product-container > a {
    display: block;
    padding: 10px; }
  .master-theme.store .product .figure img,
  .master-theme.store #main .featured .listing .item .figure img {
    min-width: 0; }
  .master-theme.store h1.title {
    margin: 40px 0 20px 0;
    text-align: left;
    font-size: 30px; }
  .master-theme.store #main .featured .listing .item {
    width: 49%; }
  .master-theme.store #main .featured .listing .item.second {
    margin: 0 0 2% 0; }
  .master-theme.store #main > .featured .flag {
    margin: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .category.products .listing .item {
    width: 32%; }
  .master-theme.store #main .shop .listing .item.third,
  .master-theme.store #main .category.products .listing .item.third {
    margin: 0 0 2% 0; }
  .master-theme.store .button {
    border: 0;
    border-radius: 0; }
  .master-theme.store #aside #GC.store.header {
    margin: 65px 15px 15px 15px; }
  .master-theme.store #aside .listing .item {
    margin: 0 15px;
    padding: 0;
    border: 1px solid #ededed;
    background: #fff; }
  .master-theme.store #aside .listing .item + .item {
    border-top: none; }
  .master-theme.store #aside .listing .item span,
  .master-theme.store #aside .listing .item a {
    display: block;
    padding: 10px;
    font-weight: 400; }
  .master-theme.store #aside .listing .item a:hover {
    background: #fafafa; }
  .master-theme.store #aside .categories > .header {
    display: none; }
  .master-theme .account #container {
    padding-bottom: 150px; }
  .master-theme #GC.GC_account {
    padding: 0; }
  .master-theme #GC.GC_account .GC_panes {
    margin: 0; }
  .master-theme #GC.GC_account .GC_panes > .GC_view {
    float: none;
    overflow: hidden;
    border: none; }
  .master-theme #GC.GC_account #toolbar ul li,
  .master-theme #GC.GC_account #toolbar ul li.selected,
  .master-theme #GC.GC_account #toolbar ul li:hover {
    margin: 0;
    border: none;
    border-left: 1px solid #dcdcdc;
    border-radius: 0; }
  .master-theme #GC.GC_account .GC_panes {
    padding: 0 10px; }
  .master-theme #GC.GC_account > .GC_header {
    border-bottom: 1px solid #dcdcdc; }
  .master-theme #GC.GC_account > .GC_header h1 {
    margin: 0;
    padding: 15px;
    line-height: 1; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    margin: 0;
    padding: 4px 0;
    border-radius: 0px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    background: #fafafa; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email {
    margin: 0;
    padding: 0;
    border-top: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email a.pic {
    margin: 0;
    padding: 0;
    width: 200px;
    height: 200px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email img {
    padding: 0;
    background: none;
    box-shadow: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email .username {
    margin: 0;
    padding: 10px;
    text-align: left; }
  .master-theme #GC.GC_account table {
    padding: 0; }
  .master-theme #GC.GC_account table td,
  .master-theme #GC.GC_account table th {
    padding: 10px; }
  .master-theme #GC.GC_account table .options {
    width: 10px; }
  .master-theme #GC.GC_account table .avatar {
    overflow: hidden;
    height: 50px; }
  .master-theme #GC.GC_account .pagination {
    display: block;
    margin: 0;
    padding: 15px 0 0 0; }
  .master-theme #GC.GC_account .pagination .title {
    margin: 0;
    text-align: center;
    line-height: 40px; }
  .master-theme #GC.GC_account .pagination .pages {
    margin: -40px 0 0 0; }
  .master-theme #GC.GC_account .pagination .first,
  .master-theme #GC.GC_account .pagination .last {
    display: none; }
  .master-theme #GC.GC_account .pagination a {
    text-decoration: none;
    text-transform: none;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    speak: none;
    -webkit-font-smoothing: antialiased; }
  .master-theme #GC.GC_account .pagination .pages > .actions {
    display: block;
    float: left; }
  .master-theme #GC.GC_account .pagination .pages > .forth {
    display: block;
    float: right; }
  .master-theme .markItUpHeader {
    height: 30px; }
  .master-theme #GC .markItUpHeader ul a,
  .master-theme .markItUpHeader ul a {
    width: 20px;
    height: 20px; }
  .master-theme #GC .markItUpHeader ul ul li,
  .master-theme .markItUpHeader ul ul li {
    background: #fff; }
  .master-theme #GC_thread_panel .wrap {
    width: 100%; }
  .master-theme #GC_thread_panel .markItUpHeader {
    box-shadow: none; }
  .master-theme #GC .GC_blogs.GC_modify #title,
  .master-theme #GC_thread_panel #GC_thread_title,
  .master-theme #GC_thread_panel textarea,
  .master-theme .markItUp {
    width: 100%;
    min-width: 100%;
    max-width: 100%; }
  .master-theme.events #main {
    float: none;
    width: 100%; }

@media screen and (max-width: 880px) {
  .master-theme {
    /* Store */
    /* GC Stuff */ }
    .master-theme.store #header,
    .master-theme.store #footer {
      display: block; }
    .master-theme.store #main,
    .master-theme.store #aside {
      float: none;
      width: 100%;
      max-width: 100%; }
    .master-theme #main #GC {
      min-width: 0px; }
    .master-theme #GC.GC_account .GC_panes .GC_navigation,
    .master-theme #GC.GC_account .GC_panes > .GC_view,
    .master-theme #GC #markItUpBody {
      clear: both;
      margin: 0;
      padding: 0;
      width: 100%;
      border: none; }
    .master-theme #recaptcha_image {
      width: 100% !important; }
    .master-theme #recaptcha_response_field {
      width: auto !important; }
    .master-theme #recaptcha_table > tbody td {
      padding: 0 !important;
      width: 100% !important; }
    .master-theme #GC.GC_product {
      background-image: none; }
    .master-theme #GC.GC_product .GC_product_description,
    .master-theme #GC.GC_product .GC_product_purchase,
    .master-theme #GC #markItUpBody #body {
      margin: 10px 1%;
      width: 98%; }
    .master-theme #GC.GC_store table {
      font-size: 8px; }
    .master-theme #GC button {
      margin-bottom: 2px;
      padding: 5px 15px; }
    .master-theme #GC #GC_checkout_progress li {
      display: block;
      padding: 5px 4% 5px 2%;
      text-align: center; }
    .master-theme #GC fieldset ul {
      padding-top: 90px; }
    .master-theme #GC .input label,
    .master-theme #GC .select label,
    .master-theme #GC .captcha label,
    .master-theme #GC .text label {
      float: none;
      text-align: left; }
    .master-theme #GC .GC_address,
    .master-theme #GC .GC_payment {
      float: none;
      width: 93%; }
    .master-theme #GC input[type="text"],
    .master-theme #GC input[type="password"],
    .master-theme #GC input[type="email"],
    .master-theme #GC input[type="tel"],
    .master-theme #GC input[type="date"],
    .master-theme #GC textarea,
    .master-theme .ui-dialog textarea {
      width: 93%; }
    .master-theme #GC .GC_shipping .GC_same_as_billing {
      left: 0; }
    .master-theme #GC .actions li,
    .master-theme #GC .actions .prev {
      display: block;
      float: none;
      margin-bottom: 4px; }
    .master-theme #GC.GC_account #toolbar {
      margin: 0; }
    .master-theme #GC.GC_account #toolbar .nav li a {
      text-indent: -9999px; }
    .master-theme #GC.GC_engine {
      width: 90%; }
    .master-theme #GC.GC_account.GC_mail table .time,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action th:last-child,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action td.time,
    .master-theme #GC.GC_account .GC_links table .url,
    .master-theme #GC.GC_account.GC_comments table .author,
    .master-theme #GC.GC_account.GC_comments table .date,
    .master-theme #GC.GC_account.GC_linked table tr .displayname,
    .master-theme #GC.GC_account .GC_orders .date,
    .master-theme #GC.GC_account .GC_orders .total {
      display: none; }
    .master-theme #GC.GC_product .GC_product_purchase .purchase_form .select {
      margin: 0; }
    .master-theme #GC.GC_cart h1 {
      line-height: 1em; }
    .master-theme #GC.GC_account .GC_panes > .GC_view {
      min-height: 0; }
    .master-theme #GC .actions .prev a {
      margin-right: 0; }
    .master-theme #GC .GC_ticket.GC_countdown {
      width: 100%; }
    .master-theme #GC input.quantity {
      width: 3em; }
    .master-theme #GC #GC_checkout_progress {
      text-align: center; }
    .master-theme #GC th.total, .master-theme #GC td.total, .master-theme #GC tfoot th {
      text-align: left; }
    .master-theme #GC.GC_payment_information .total strong {
      display: inline-block;
      background-color: transparent;
      color: #000; }
    .master-theme #GC.GC_payment_information #PaymentForm-continue button {
      display: block;
      width: 100%;
      padding: 15px; }
    .master-theme #GC tfoot th, .master-theme #GC tfoot td {
      display: block; }
    .master-theme #GC tfoot th {
      padding-bottom: 0; }
    .master-theme #GC tfoot td {
      padding-top: 0; }
    .master-theme #GC.GC_store table {
      font-size: 14px; }
    .master-theme #GC.GC_store thead {
      display: none; }
    .master-theme #GC.GC_store tbody td {
      display: block; }
      .master-theme #GC.GC_store tbody td.item:before {
        content: "Item: "; }
      .master-theme #GC.GC_store tbody td.shipping:before {
        content: "Shipping: "; }
      .master-theme #GC.GC_store tbody td.price:before {
        content: "Price: "; }
      .master-theme #GC.GC_store tbody td.quantity:before {
        content: "Quantity: "; }
      .master-theme #GC.GC_store tbody td.total:before {
        content: "Total: "; }
      .master-theme #GC.GC_store tbody td:before {
        font-weight: bold; } }

@media screen and (max-width: 880px) and (max-width: 600px) {
  .ui-dialog {
    max-width: 320px !important;
    box-shadow: rgba(0, 0, 0, 0.4) 0 0px 20px; } }

/*!
 * Bootstrap v3.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

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

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    box-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

@font-face {
  font-family: "Glyphicons Halflings";
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: "Glyphicons Halflings";
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before {
  content: "\002a"; }

.glyphicon-plus:before {
  content: "\002b"; }

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac"; }

.glyphicon-minus:before {
  content: "\2212"; }

.glyphicon-cloud:before {
  content: "\2601"; }

.glyphicon-envelope:before {
  content: "\2709"; }

.glyphicon-pencil:before {
  content: "\270f"; }

.glyphicon-glass:before {
  content: "\e001"; }

.glyphicon-music:before {
  content: "\e002"; }

.glyphicon-search:before {
  content: "\e003"; }

.glyphicon-heart:before {
  content: "\e005"; }

.glyphicon-star:before {
  content: "\e006"; }

.glyphicon-star-empty:before {
  content: "\e007"; }

.glyphicon-user:before {
  content: "\e008"; }

.glyphicon-film:before {
  content: "\e009"; }

.glyphicon-th-large:before {
  content: "\e010"; }

.glyphicon-th:before {
  content: "\e011"; }

.glyphicon-th-list:before {
  content: "\e012"; }

.glyphicon-ok:before {
  content: "\e013"; }

.glyphicon-remove:before {
  content: "\e014"; }

.glyphicon-zoom-in:before {
  content: "\e015"; }

.glyphicon-zoom-out:before {
  content: "\e016"; }

.glyphicon-off:before {
  content: "\e017"; }

.glyphicon-signal:before {
  content: "\e018"; }

.glyphicon-cog:before {
  content: "\e019"; }

.glyphicon-trash:before {
  content: "\e020"; }

.glyphicon-home:before {
  content: "\e021"; }

.glyphicon-file:before {
  content: "\e022"; }

.glyphicon-time:before {
  content: "\e023"; }

.glyphicon-road:before {
  content: "\e024"; }

.glyphicon-download-alt:before {
  content: "\e025"; }

.glyphicon-download:before {
  content: "\e026"; }

.glyphicon-upload:before {
  content: "\e027"; }

.glyphicon-inbox:before {
  content: "\e028"; }

.glyphicon-play-circle:before {
  content: "\e029"; }

.glyphicon-repeat:before {
  content: "\e030"; }

.glyphicon-refresh:before {
  content: "\e031"; }

.glyphicon-list-alt:before {
  content: "\e032"; }

.glyphicon-lock:before {
  content: "\e033"; }

.glyphicon-flag:before {
  content: "\e034"; }

.glyphicon-headphones:before {
  content: "\e035"; }

.glyphicon-volume-off:before {
  content: "\e036"; }

.glyphicon-volume-down:before {
  content: "\e037"; }

.glyphicon-volume-up:before {
  content: "\e038"; }

.glyphicon-qrcode:before {
  content: "\e039"; }

.glyphicon-barcode:before {
  content: "\e040"; }

.glyphicon-tag:before {
  content: "\e041"; }

.glyphicon-tags:before {
  content: "\e042"; }

.glyphicon-book:before {
  content: "\e043"; }

.glyphicon-bookmark:before {
  content: "\e044"; }

.glyphicon-print:before {
  content: "\e045"; }

.glyphicon-camera:before {
  content: "\e046"; }

.glyphicon-font:before {
  content: "\e047"; }

.glyphicon-bold:before {
  content: "\e048"; }

.glyphicon-italic:before {
  content: "\e049"; }

.glyphicon-text-height:before {
  content: "\e050"; }

.glyphicon-text-width:before {
  content: "\e051"; }

.glyphicon-align-left:before {
  content: "\e052"; }

.glyphicon-align-center:before {
  content: "\e053"; }

.glyphicon-align-right:before {
  content: "\e054"; }

.glyphicon-align-justify:before {
  content: "\e055"; }

.glyphicon-list:before {
  content: "\e056"; }

.glyphicon-indent-left:before {
  content: "\e057"; }

.glyphicon-indent-right:before {
  content: "\e058"; }

.glyphicon-facetime-video:before {
  content: "\e059"; }

.glyphicon-picture:before {
  content: "\e060"; }

.glyphicon-map-marker:before {
  content: "\e062"; }

.glyphicon-adjust:before {
  content: "\e063"; }

.glyphicon-tint:before {
  content: "\e064"; }

.glyphicon-edit:before {
  content: "\e065"; }

.glyphicon-share:before {
  content: "\e066"; }

.glyphicon-check:before {
  content: "\e067"; }

.glyphicon-move:before {
  content: "\e068"; }

.glyphicon-step-backward:before {
  content: "\e069"; }

.glyphicon-fast-backward:before {
  content: "\e070"; }

.glyphicon-backward:before {
  content: "\e071"; }

.glyphicon-play:before {
  content: "\e072"; }

.glyphicon-pause:before {
  content: "\e073"; }

.glyphicon-stop:before {
  content: "\e074"; }

.glyphicon-forward:before {
  content: "\e075"; }

.glyphicon-fast-forward:before {
  content: "\e076"; }

.glyphicon-step-forward:before {
  content: "\e077"; }

.glyphicon-eject:before {
  content: "\e078"; }

.glyphicon-chevron-left:before {
  content: "\e079"; }

.glyphicon-chevron-right:before {
  content: "\e080"; }

.glyphicon-plus-sign:before {
  content: "\e081"; }

.glyphicon-minus-sign:before {
  content: "\e082"; }

.glyphicon-remove-sign:before {
  content: "\e083"; }

.glyphicon-ok-sign:before {
  content: "\e084"; }

.glyphicon-question-sign:before {
  content: "\e085"; }

.glyphicon-info-sign:before {
  content: "\e086"; }

.glyphicon-screenshot:before {
  content: "\e087"; }

.glyphicon-remove-circle:before {
  content: "\e088"; }

.glyphicon-ok-circle:before {
  content: "\e089"; }

.glyphicon-ban-circle:before {
  content: "\e090"; }

.glyphicon-arrow-left:before {
  content: "\e091"; }

.glyphicon-arrow-right:before {
  content: "\e092"; }

.glyphicon-arrow-up:before {
  content: "\e093"; }

.glyphicon-arrow-down:before {
  content: "\e094"; }

.glyphicon-share-alt:before {
  content: "\e095"; }

.glyphicon-resize-full:before {
  content: "\e096"; }

.glyphicon-resize-small:before {
  content: "\e097"; }

.glyphicon-exclamation-sign:before {
  content: "\e101"; }

.glyphicon-gift:before {
  content: "\e102"; }

.glyphicon-leaf:before {
  content: "\e103"; }

.glyphicon-fire:before {
  content: "\e104"; }

.glyphicon-eye-open:before {
  content: "\e105"; }

.glyphicon-eye-close:before {
  content: "\e106"; }

.glyphicon-warning-sign:before {
  content: "\e107"; }

.glyphicon-plane:before {
  content: "\e108"; }

.glyphicon-calendar:before {
  content: "\e109"; }

.glyphicon-random:before {
  content: "\e110"; }

.glyphicon-comment:before {
  content: "\e111"; }

.glyphicon-magnet:before {
  content: "\e112"; }

.glyphicon-chevron-up:before {
  content: "\e113"; }

.glyphicon-chevron-down:before {
  content: "\e114"; }

.glyphicon-retweet:before {
  content: "\e115"; }

.glyphicon-shopping-cart:before {
  content: "\e116"; }

.glyphicon-folder-close:before {
  content: "\e117"; }

.glyphicon-folder-open:before {
  content: "\e118"; }

.glyphicon-resize-vertical:before {
  content: "\e119"; }

.glyphicon-resize-horizontal:before {
  content: "\e120"; }

.glyphicon-hdd:before {
  content: "\e121"; }

.glyphicon-bullhorn:before {
  content: "\e122"; }

.glyphicon-bell:before {
  content: "\e123"; }

.glyphicon-certificate:before {
  content: "\e124"; }

.glyphicon-thumbs-up:before {
  content: "\e125"; }

.glyphicon-thumbs-down:before {
  content: "\e126"; }

.glyphicon-hand-right:before {
  content: "\e127"; }

.glyphicon-hand-left:before {
  content: "\e128"; }

.glyphicon-hand-up:before {
  content: "\e129"; }

.glyphicon-hand-down:before {
  content: "\e130"; }

.glyphicon-circle-arrow-right:before {
  content: "\e131"; }

.glyphicon-circle-arrow-left:before {
  content: "\e132"; }

.glyphicon-circle-arrow-up:before {
  content: "\e133"; }

.glyphicon-circle-arrow-down:before {
  content: "\e134"; }

.glyphicon-globe:before {
  content: "\e135"; }

.glyphicon-wrench:before {
  content: "\e136"; }

.glyphicon-tasks:before {
  content: "\e137"; }

.glyphicon-filter:before {
  content: "\e138"; }

.glyphicon-briefcase:before {
  content: "\e139"; }

.glyphicon-fullscreen:before {
  content: "\e140"; }

.glyphicon-dashboard:before {
  content: "\e141"; }

.glyphicon-paperclip:before {
  content: "\e142"; }

.glyphicon-heart-empty:before {
  content: "\e143"; }

.glyphicon-link:before {
  content: "\e144"; }

.glyphicon-phone:before {
  content: "\e145"; }

.glyphicon-pushpin:before {
  content: "\e146"; }

.glyphicon-usd:before {
  content: "\e148"; }

.glyphicon-gbp:before {
  content: "\e149"; }

.glyphicon-sort:before {
  content: "\e150"; }

.glyphicon-sort-by-alphabet:before {
  content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152"; }

.glyphicon-sort-by-order:before {
  content: "\e153"; }

.glyphicon-sort-by-order-alt:before {
  content: "\e154"; }

.glyphicon-sort-by-attributes:before {
  content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156"; }

.glyphicon-unchecked:before {
  content: "\e157"; }

.glyphicon-expand:before {
  content: "\e158"; }

.glyphicon-collapse-down:before {
  content: "\e159"; }

.glyphicon-collapse-up:before {
  content: "\e160"; }

.glyphicon-log-in:before {
  content: "\e161"; }

.glyphicon-flash:before {
  content: "\e162"; }

.glyphicon-log-out:before {
  content: "\e163"; }

.glyphicon-new-window:before {
  content: "\e164"; }

.glyphicon-record:before {
  content: "\e165"; }

.glyphicon-save:before {
  content: "\e166"; }

.glyphicon-open:before {
  content: "\e167"; }

.glyphicon-saved:before {
  content: "\e168"; }

.glyphicon-import:before {
  content: "\e169"; }

.glyphicon-export:before {
  content: "\e170"; }

.glyphicon-send:before {
  content: "\e171"; }

.glyphicon-floppy-disk:before {
  content: "\e172"; }

.glyphicon-floppy-saved:before {
  content: "\e173"; }

.glyphicon-floppy-remove:before {
  content: "\e174"; }

.glyphicon-floppy-save:before {
  content: "\e175"; }

.glyphicon-floppy-open:before {
  content: "\e176"; }

.glyphicon-credit-card:before {
  content: "\e177"; }

.glyphicon-transfer:before {
  content: "\e178"; }

.glyphicon-cutlery:before {
  content: "\e179"; }

.glyphicon-header:before {
  content: "\e180"; }

.glyphicon-compressed:before {
  content: "\e181"; }

.glyphicon-earphone:before {
  content: "\e182"; }

.glyphicon-phone-alt:before {
  content: "\e183"; }

.glyphicon-tower:before {
  content: "\e184"; }

.glyphicon-stats:before {
  content: "\e185"; }

.glyphicon-sd-video:before {
  content: "\e186"; }

.glyphicon-hd-video:before {
  content: "\e187"; }

.glyphicon-subtitles:before {
  content: "\e188"; }

.glyphicon-sound-stereo:before {
  content: "\e189"; }

.glyphicon-sound-dolby:before {
  content: "\e190"; }

.glyphicon-sound-5-1:before {
  content: "\e191"; }

.glyphicon-sound-6-1:before {
  content: "\e192"; }

.glyphicon-sound-7-1:before {
  content: "\e193"; }

.glyphicon-copyright-mark:before {
  content: "\e194"; }

.glyphicon-registration-mark:before {
  content: "\e195"; }

.glyphicon-cloud-download:before {
  content: "\e197"; }

.glyphicon-cloud-upload:before {
  content: "\e198"; }

.glyphicon-tree-conifer:before {
  content: "\e199"; }

.glyphicon-tree-deciduous:before {
  content: "\e200"; }

.glyphicon-cd:before {
  content: "\e201"; }

.glyphicon-save-file:before {
  content: "\e202"; }

.glyphicon-open-file:before {
  content: "\e203"; }

.glyphicon-level-up:before {
  content: "\e204"; }

.glyphicon-copy:before {
  content: "\e205"; }

.glyphicon-paste:before {
  content: "\e206"; }

.glyphicon-alert:before {
  content: "\e209"; }

.glyphicon-equalizer:before {
  content: "\e210"; }

.glyphicon-king:before {
  content: "\e211"; }

.glyphicon-queen:before {
  content: "\e212"; }

.glyphicon-pawn:before {
  content: "\e213"; }

.glyphicon-bishop:before {
  content: "\e214"; }

.glyphicon-knight:before {
  content: "\e215"; }

.glyphicon-baby-formula:before {
  content: "\e216"; }

.glyphicon-tent:before {
  content: "\26fa"; }

.glyphicon-blackboard:before {
  content: "\e218"; }

.glyphicon-bed:before {
  content: "\e219"; }

.glyphicon-apple:before {
  content: "\f8ff"; }

.glyphicon-erase:before {
  content: "\e221"; }

.glyphicon-hourglass:before {
  content: "\231b"; }

.glyphicon-lamp:before {
  content: "\e223"; }

.glyphicon-duplicate:before {
  content: "\e224"; }

.glyphicon-piggy-bank:before {
  content: "\e225"; }

.glyphicon-scissors:before {
  content: "\e226"; }

.glyphicon-bitcoin:before {
  content: "\e227"; }

.glyphicon-btc:before {
  content: "\e227"; }

.glyphicon-xbt:before {
  content: "\e227"; }

.glyphicon-yen:before {
  content: "\00a5"; }

.glyphicon-jpy:before {
  content: "\00a5"; }

.glyphicon-ruble:before {
  content: "\20bd"; }

.glyphicon-rub:before {
  content: "\20bd"; }

.glyphicon-scale:before {
  content: "\e230"; }

.glyphicon-ice-lolly:before {
  content: "\e231"; }

.glyphicon-ice-lolly-tasted:before {
  content: "\e232"; }

.glyphicon-education:before {
  content: "\e233"; }

.glyphicon-option-horizontal:before {
  content: "\e234"; }

.glyphicon-option-vertical:before {
  content: "\e235"; }

.glyphicon-menu-hamburger:before {
  content: "\e236"; }

.glyphicon-modal-window:before {
  content: "\e237"; }

.glyphicon-oil:before {
  content: "\e238"; }

.glyphicon-grain:before {
  content: "\e239"; }

.glyphicon-sunglasses:before {
  content: "\e240"; }

.glyphicon-text-size:before {
  content: "\e241"; }

.glyphicon-text-color:before {
  content: "\e242"; }

.glyphicon-text-background:before {
  content: "\e243"; }

.glyphicon-object-align-top:before {
  content: "\e244"; }

.glyphicon-object-align-bottom:before {
  content: "\e245"; }

.glyphicon-object-align-horizontal:before {
  content: "\e246"; }

.glyphicon-object-align-left:before {
  content: "\e247"; }

.glyphicon-object-align-vertical:before {
  content: "\e248"; }

.glyphicon-object-align-right:before {
  content: "\e249"; }

.glyphicon-triangle-right:before {
  content: "\e250"; }

.glyphicon-triangle-left:before {
  content: "\e251"; }

.glyphicon-triangle-bottom:before {
  content: "\e252"; }

.glyphicon-triangle-top:before {
  content: "\e253"; }

.glyphicon-console:before {
  content: "\e254"; }

.glyphicon-superscript:before {
  content: "\e255"; }

.glyphicon-subscript:before {
  content: "\e256"; }

.glyphicon-menu-left:before {
  content: "\e257"; }

.glyphicon-menu-right:before {
  content: "\e258"; }

.glyphicon-menu-down:before {
  content: "\e259"; }

.glyphicon-menu-up:before {
  content: "\e260"; }

* {
  box-sizing: border-box; }

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

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  color: #000;
  background-color: #fff; }

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

a {
  color: #000;
  text-decoration: none; }
  a:hover, a:focus {
    color: #f2f2f2;
    text-decoration: underline; }
  a:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }

figure {
  margin: 0; }

img {
  vertical-align: middle; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.img-rounded {
  border-radius: 6px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto; }

.img-circle {
  border-radius: 50%; }

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

[role="button"] {
  cursor: pointer; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit; }
  h1 small,
  h1 .small, h2 small,
  h2 .small, h3 small,
  h3 .small, h4 small,
  h4 .small, h5 small,
  h5 .small, h6 small,
  h6 .small,
  .h1 small,
  .h1 .small, .h2 small,
  .h2 .small, .h3 small,
  .h3 .small, .h4 small,
  .h4 .small, .h5 small,
  .h5 .small, .h6 small,
  .h6 .small {
    font-weight: 400;
    line-height: 1;
    color: #777777; }

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px; }
  h1 small,
  h1 .small, .h1 small,
  .h1 .small,
  h2 small,
  h2 .small, .h2 small,
  .h2 .small,
  h3 small,
  h3 .small, .h3 small,
  .h3 .small {
    font-size: 65%; }

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px; }
  h4 small,
  h4 .small, .h4 small,
  .h4 .small,
  h5 small,
  h5 .small, .h5 small,
  .h5 .small,
  h6 small,
  h6 .small, .h6 small,
  .h6 .small {
    font-size: 75%; }

h1, .h1 {
  font-size: 36px; }

h2, .h2 {
  font-size: 30px; }

h3, .h3 {
  font-size: 24px; }

h4, .h4 {
  font-size: 18px; }

h5, .h5 {
  font-size: 14px; }

h6, .h6 {
  font-size: 12px; }

p {
  margin: 0 0 10px; }

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4; }
  @media (min-width: 768px) {
    .lead {
      font-size: 21px; } }

small,
.small {
  font-size: 85%; }

mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3; }

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

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

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

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

.text-nowrap {
  white-space: nowrap; }

.text-lowercase {
  text-transform: lowercase; }

.text-uppercase, .initialism {
  text-transform: uppercase; }

.text-capitalize {
  text-transform: capitalize; }

.text-muted {
  color: #777777; }

.text-primary {
  color: #337ab7; }

a.text-primary:hover,
a.text-primary:focus {
  color: #286090; }

.text-success {
  color: #3c763d; }

a.text-success:hover,
a.text-success:focus {
  color: #2b542c; }

.text-info {
  color: #31708f; }

a.text-info:hover,
a.text-info:focus {
  color: #245269; }

.text-warning {
  color: #8a6d3b; }

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c; }

.text-danger {
  color: #a94442; }

a.text-danger:hover,
a.text-danger:focus {
  color: #843534; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #337ab7; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090; }

.bg-success {
  background-color: #dff0d8; }

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3; }

.bg-info {
  background-color: #d9edf7; }

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee; }

.bg-warning {
  background-color: #fcf8e3; }

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5; }

.bg-danger {
  background-color: #f2dede; }

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9; }

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

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

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px; }
  .list-inline > li {
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px; }

dl {
  margin-top: 0;
  margin-bottom: 20px; }

dt,
dd {
  line-height: 1.42857; }

dt {
  font-weight: 700; }

dd {
  margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after {
  display: table;
  content: " "; }

.dl-horizontal dd:after {
  clear: both; }

@media (min-width: 1020px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .dl-horizontal dd {
    margin-left: 180px; } }

abbr[title],
abbr[data-original-title] {
  cursor: help; }

.initialism {
  font-size: 90%; }

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.42857;
    color: #777777; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: "\2014 \00A0"; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  text-align: right;
  border-right: 5px solid #eeeeee;
  border-left: 0; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ""; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: "\00A0 \2014"; }

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857; }

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px; }

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700;
    box-shadow: none; }

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  color: #333333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px; }
  pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0; }

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll; }

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  .container:before, .container:after {
    display: table;
    content: " "; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 750px; } }
  @media (min-width: 992px) {
    .container {
      width: 970px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1170px; } }

.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  .container-fluid:before, .container-fluid:after {
    display: table;
    content: " "; }
  .container-fluid:after {
    clear: both; }

.row {
  margin-right: -15px;
  margin-left: -15px; }
  .row:before, .row:after {
    display: table;
    content: " "; }
  .row:after {
    clear: both; }

.row-no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .row-no-gutters [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left; }

.col-xs-1 {
  width: 8.33333%; }

.col-xs-2 {
  width: 16.66667%; }

.col-xs-3 {
  width: 25%; }

.col-xs-4 {
  width: 33.33333%; }

.col-xs-5 {
  width: 41.66667%; }

.col-xs-6 {
  width: 50%; }

.col-xs-7 {
  width: 58.33333%; }

.col-xs-8 {
  width: 66.66667%; }

.col-xs-9 {
  width: 75%; }

.col-xs-10 {
  width: 83.33333%; }

.col-xs-11 {
  width: 91.66667%; }

.col-xs-12 {
  width: 100%; }

.col-xs-pull-0 {
  right: auto; }

.col-xs-pull-1 {
  right: 8.33333%; }

.col-xs-pull-2 {
  right: 16.66667%; }

.col-xs-pull-3 {
  right: 25%; }

.col-xs-pull-4 {
  right: 33.33333%; }

.col-xs-pull-5 {
  right: 41.66667%; }

.col-xs-pull-6 {
  right: 50%; }

.col-xs-pull-7 {
  right: 58.33333%; }

.col-xs-pull-8 {
  right: 66.66667%; }

.col-xs-pull-9 {
  right: 75%; }

.col-xs-pull-10 {
  right: 83.33333%; }

.col-xs-pull-11 {
  right: 91.66667%; }

.col-xs-pull-12 {
  right: 100%; }

.col-xs-push-0 {
  left: auto; }

.col-xs-push-1 {
  left: 8.33333%; }

.col-xs-push-2 {
  left: 16.66667%; }

.col-xs-push-3 {
  left: 25%; }

.col-xs-push-4 {
  left: 33.33333%; }

.col-xs-push-5 {
  left: 41.66667%; }

.col-xs-push-6 {
  left: 50%; }

.col-xs-push-7 {
  left: 58.33333%; }

.col-xs-push-8 {
  left: 66.66667%; }

.col-xs-push-9 {
  left: 75%; }

.col-xs-push-10 {
  left: 83.33333%; }

.col-xs-push-11 {
  left: 91.66667%; }

.col-xs-push-12 {
  left: 100%; }

.col-xs-offset-0 {
  margin-left: 0%; }

.col-xs-offset-1 {
  margin-left: 8.33333%; }

.col-xs-offset-2 {
  margin-left: 16.66667%; }

.col-xs-offset-3 {
  margin-left: 25%; }

.col-xs-offset-4 {
  margin-left: 33.33333%; }

.col-xs-offset-5 {
  margin-left: 41.66667%; }

.col-xs-offset-6 {
  margin-left: 50%; }

.col-xs-offset-7 {
  margin-left: 58.33333%; }

.col-xs-offset-8 {
  margin-left: 66.66667%; }

.col-xs-offset-9 {
  margin-left: 75%; }

.col-xs-offset-10 {
  margin-left: 83.33333%; }

.col-xs-offset-11 {
  margin-left: 91.66667%; }

.col-xs-offset-12 {
  margin-left: 100%; }

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left; }
  .col-sm-1 {
    width: 8.33333%; }
  .col-sm-2 {
    width: 16.66667%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-4 {
    width: 33.33333%; }
  .col-sm-5 {
    width: 41.66667%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-7 {
    width: 58.33333%; }
  .col-sm-8 {
    width: 66.66667%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-10 {
    width: 83.33333%; }
  .col-sm-11 {
    width: 91.66667%; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-pull-0 {
    right: auto; }
  .col-sm-pull-1 {
    right: 8.33333%; }
  .col-sm-pull-2 {
    right: 16.66667%; }
  .col-sm-pull-3 {
    right: 25%; }
  .col-sm-pull-4 {
    right: 33.33333%; }
  .col-sm-pull-5 {
    right: 41.66667%; }
  .col-sm-pull-6 {
    right: 50%; }
  .col-sm-pull-7 {
    right: 58.33333%; }
  .col-sm-pull-8 {
    right: 66.66667%; }
  .col-sm-pull-9 {
    right: 75%; }
  .col-sm-pull-10 {
    right: 83.33333%; }
  .col-sm-pull-11 {
    right: 91.66667%; }
  .col-sm-pull-12 {
    right: 100%; }
  .col-sm-push-0 {
    left: auto; }
  .col-sm-push-1 {
    left: 8.33333%; }
  .col-sm-push-2 {
    left: 16.66667%; }
  .col-sm-push-3 {
    left: 25%; }
  .col-sm-push-4 {
    left: 33.33333%; }
  .col-sm-push-5 {
    left: 41.66667%; }
  .col-sm-push-6 {
    left: 50%; }
  .col-sm-push-7 {
    left: 58.33333%; }
  .col-sm-push-8 {
    left: 66.66667%; }
  .col-sm-push-9 {
    left: 75%; }
  .col-sm-push-10 {
    left: 83.33333%; }
  .col-sm-push-11 {
    left: 91.66667%; }
  .col-sm-push-12 {
    left: 100%; }
  .col-sm-offset-0 {
    margin-left: 0%; }
  .col-sm-offset-1 {
    margin-left: 8.33333%; }
  .col-sm-offset-2 {
    margin-left: 16.66667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333%; }
  .col-sm-offset-5 {
    margin-left: 41.66667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333%; }
  .col-sm-offset-8 {
    margin-left: 66.66667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333%; }
  .col-sm-offset-11 {
    margin-left: 91.66667%; }
  .col-sm-offset-12 {
    margin-left: 100%; } }

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left; }
  .col-md-1 {
    width: 8.33333%; }
  .col-md-2 {
    width: 16.66667%; }
  .col-md-3 {
    width: 25%; }
  .col-md-4 {
    width: 33.33333%; }
  .col-md-5 {
    width: 41.66667%; }
  .col-md-6 {
    width: 50%; }
  .col-md-7 {
    width: 58.33333%; }
  .col-md-8 {
    width: 66.66667%; }
  .col-md-9 {
    width: 75%; }
  .col-md-10 {
    width: 83.33333%; }
  .col-md-11 {
    width: 91.66667%; }
  .col-md-12 {
    width: 100%; }
  .col-md-pull-0 {
    right: auto; }
  .col-md-pull-1 {
    right: 8.33333%; }
  .col-md-pull-2 {
    right: 16.66667%; }
  .col-md-pull-3 {
    right: 25%; }
  .col-md-pull-4 {
    right: 33.33333%; }
  .col-md-pull-5 {
    right: 41.66667%; }
  .col-md-pull-6 {
    right: 50%; }
  .col-md-pull-7 {
    right: 58.33333%; }
  .col-md-pull-8 {
    right: 66.66667%; }
  .col-md-pull-9 {
    right: 75%; }
  .col-md-pull-10 {
    right: 83.33333%; }
  .col-md-pull-11 {
    right: 91.66667%; }
  .col-md-pull-12 {
    right: 100%; }
  .col-md-push-0 {
    left: auto; }
  .col-md-push-1 {
    left: 8.33333%; }
  .col-md-push-2 {
    left: 16.66667%; }
  .col-md-push-3 {
    left: 25%; }
  .col-md-push-4 {
    left: 33.33333%; }
  .col-md-push-5 {
    left: 41.66667%; }
  .col-md-push-6 {
    left: 50%; }
  .col-md-push-7 {
    left: 58.33333%; }
  .col-md-push-8 {
    left: 66.66667%; }
  .col-md-push-9 {
    left: 75%; }
  .col-md-push-10 {
    left: 83.33333%; }
  .col-md-push-11 {
    left: 91.66667%; }
  .col-md-push-12 {
    left: 100%; }
  .col-md-offset-0 {
    margin-left: 0%; }
  .col-md-offset-1 {
    margin-left: 8.33333%; }
  .col-md-offset-2 {
    margin-left: 16.66667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333%; }
  .col-md-offset-5 {
    margin-left: 41.66667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333%; }
  .col-md-offset-8 {
    margin-left: 66.66667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333%; }
  .col-md-offset-11 {
    margin-left: 91.66667%; }
  .col-md-offset-12 {
    margin-left: 100%; } }

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left; }
  .col-lg-1 {
    width: 8.33333%; }
  .col-lg-2 {
    width: 16.66667%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-4 {
    width: 33.33333%; }
  .col-lg-5 {
    width: 41.66667%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-7 {
    width: 58.33333%; }
  .col-lg-8 {
    width: 66.66667%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-10 {
    width: 83.33333%; }
  .col-lg-11 {
    width: 91.66667%; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-pull-0 {
    right: auto; }
  .col-lg-pull-1 {
    right: 8.33333%; }
  .col-lg-pull-2 {
    right: 16.66667%; }
  .col-lg-pull-3 {
    right: 25%; }
  .col-lg-pull-4 {
    right: 33.33333%; }
  .col-lg-pull-5 {
    right: 41.66667%; }
  .col-lg-pull-6 {
    right: 50%; }
  .col-lg-pull-7 {
    right: 58.33333%; }
  .col-lg-pull-8 {
    right: 66.66667%; }
  .col-lg-pull-9 {
    right: 75%; }
  .col-lg-pull-10 {
    right: 83.33333%; }
  .col-lg-pull-11 {
    right: 91.66667%; }
  .col-lg-pull-12 {
    right: 100%; }
  .col-lg-push-0 {
    left: auto; }
  .col-lg-push-1 {
    left: 8.33333%; }
  .col-lg-push-2 {
    left: 16.66667%; }
  .col-lg-push-3 {
    left: 25%; }
  .col-lg-push-4 {
    left: 33.33333%; }
  .col-lg-push-5 {
    left: 41.66667%; }
  .col-lg-push-6 {
    left: 50%; }
  .col-lg-push-7 {
    left: 58.33333%; }
  .col-lg-push-8 {
    left: 66.66667%; }
  .col-lg-push-9 {
    left: 75%; }
  .col-lg-push-10 {
    left: 83.33333%; }
  .col-lg-push-11 {
    left: 91.66667%; }
  .col-lg-push-12 {
    left: 100%; }
  .col-lg-offset-0 {
    margin-left: 0%; }
  .col-lg-offset-1 {
    margin-left: 8.33333%; }
  .col-lg-offset-2 {
    margin-left: 16.66667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333%; }
  .col-lg-offset-5 {
    margin-left: 41.66667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333%; }
  .col-lg-offset-8 {
    margin-left: 66.66667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333%; }
  .col-lg-offset-11 {
    margin-left: 91.66667%; }
  .col-lg-offset-12 {
    margin-left: 100%; } }

table {
  background-color: transparent; }
  table col[class*="col-"] {
    position: static;
    display: table-column;
    float: none; }
  table td[class*="col-"],
  table th[class*="col-"] {
    position: static;
    display: table-cell;
    float: none; }

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left; }

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px; }
  .table > thead > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > th,
  .table > tbody > tr > td,
  .table > tfoot > tr > th,
  .table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.42857;
    vertical-align: top;
    border-top: 1px solid #ddd; }
  .table > thead > tr > th {
    vertical-align: bottom;
    border-bottom: 2px solid #ddd; }
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  .table > tbody + tbody {
    border-top: 2px solid #ddd; }
  .table .table {
    background-color: #fff; }

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px; }

.table-bordered {
  border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td,
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td,
  .table-bordered > tfoot > tr > th,
  .table-bordered > tfoot > tr > td {
    border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td {
    border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9; }

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5; }

.table > thead > tr > td.active,
.table > thead > tr > th.active,
.table > thead > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5; }

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8; }

.table > thead > tr > td.success,
.table > thead > tr > th.success,
.table > thead > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8; }

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6; }

.table > thead > tr > td.info,
.table > thead > tr > th.info,
.table > thead > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7; }

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3; }

.table > thead > tr > td.warning,
.table > thead > tr > th.warning,
.table > thead > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3; }

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc; }

.table > thead > tr > td.danger,
.table > thead > tr > th.danger,
.table > thead > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f2dede; }

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc; }

.table-responsive {
  min-height: .01%;
  overflow-x: auto; }
  @media screen and (max-width: 767px) {
    .table-responsive {
      width: 100%;
      margin-bottom: 15px;
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar;
      border: 1px solid #ddd; }
      .table-responsive > .table {
        margin-bottom: 0; }
        .table-responsive > .table > thead > tr > th,
        .table-responsive > .table > thead > tr > td,
        .table-responsive > .table > tbody > tr > th,
        .table-responsive > .table > tbody > tr > td,
        .table-responsive > .table > tfoot > tr > th,
        .table-responsive > .table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5; }

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: 700; }

input[type="search"] {
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }
  input[type="radio"][disabled], input[type="radio"].disabled,
  fieldset[disabled] input[type="radio"],
  input[type="checkbox"][disabled],
  input[type="checkbox"].disabled,
  fieldset[disabled]
  input[type="checkbox"] {
    cursor: not-allowed; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555; }

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
  .form-control::-moz-placeholder {
    color: #999;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #999; }
  .form-control::-webkit-input-placeholder {
    color: #999; }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }

textarea.form-control {
  height: auto; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px; }
  input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"],
  .input-group-sm > input.input-group-addon[type="date"],
  .input-group-sm > .input-group-btn > input.btn[type="date"],
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input.form-control[type="time"],
  .input-group-sm > input.input-group-addon[type="time"],
  .input-group-sm > .input-group-btn > input.btn[type="time"],
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input.form-control[type="datetime-local"],
  .input-group-sm > input.input-group-addon[type="datetime-local"],
  .input-group-sm > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input.form-control[type="month"],
  .input-group-sm > input.input-group-addon[type="month"],
  .input-group-sm > .input-group-btn > input.btn[type="month"],
  .input-group-sm
  input[type="month"] {
    line-height: 30px; }
  input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"],
  .input-group-lg > input.input-group-addon[type="date"],
  .input-group-lg > .input-group-btn > input.btn[type="date"],
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input.form-control[type="time"],
  .input-group-lg > input.input-group-addon[type="time"],
  .input-group-lg > .input-group-btn > input.btn[type="time"],
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input.form-control[type="datetime-local"],
  .input-group-lg > input.input-group-addon[type="datetime-local"],
  .input-group-lg > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input.form-control[type="month"],
  .input-group-lg > input.input-group-addon[type="month"],
  .input-group-lg > .input-group-btn > input.btn[type="month"],
  .input-group-lg
  input[type="month"] {
    line-height: 46px; } }

.form-group {
  margin-bottom: 15px; }

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px; }
  .radio.disabled label,
  fieldset[disabled] .radio label,
  .checkbox.disabled label,
  fieldset[disabled]
  .checkbox label {
    cursor: not-allowed; }
  .radio label,
  .checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer; }

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-top: 4px \9;
  margin-left: -20px; }

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer; }
  .radio-inline.disabled,
  fieldset[disabled] .radio-inline,
  .checkbox-inline.disabled,
  fieldset[disabled]
  .checkbox-inline {
    cursor: not-allowed; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0; }
  .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-right: 0;
    padding-left: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px; }

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select.form-control[multiple],
.input-group-sm > select.input-group-addon[multiple],
.input-group-sm > .input-group-btn > select.btn[multiple] {
  height: auto; }

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px; }

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select.form-control[multiple],
.input-group-lg > select.input-group-addon[multiple],
.input-group-lg > .input-group-btn > select.btn[multiple] {
  height: auto; }

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.has-feedback {
  position: relative; }
  .has-feedback .form-control {
    padding-right: 42.5px; }

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none; }

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px; }

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px; }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #3c763d; }

.has-success .form-control-feedback {
  color: #3c763d; }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #8a6d3b; }

.has-warning .form-control-feedback {
  color: #8a6d3b; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442; }

.has-error .form-control-feedback {
  color: #a94442; }

.has-feedback label ~ .form-control-feedback {
  top: 25px; }

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0; }

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #404040; }

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle; }
  .form-inline .form-control-static {
    display: inline-block; }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle; }
    .form-inline .input-group .input-group-addon,
    .form-inline .input-group .input-group-btn,
    .form-inline .input-group .form-control {
      width: auto; }
  .form-inline .input-group > .form-control {
    width: 100%; }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle; }
    .form-inline .radio label,
    .form-inline .checkbox label {
      padding-left: 0; }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0; }
  .form-inline .has-feedback .form-control-feedback {
    top: 0; } }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 7px;
  margin-top: 0;
  margin-bottom: 0; }

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px; }

.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    display: table;
    content: " "; }
  .form-horizontal .form-group:after {
    clear: both; }

@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 7px;
    margin-bottom: 0;
    text-align: right; } }

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px; }

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px; } }

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover, .btn:focus, .btn.focus {
    color: #333;
    text-decoration: none; }
  .btn:active, .btn.active {
    background-image: none;
    outline: 0;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled, .btn[disabled],
  fieldset[disabled] .btn {
    cursor: not-allowed;
    filter: alpha(opacity=65);
    opacity: 0.65;
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc; }
  .btn-default:focus, .btn-default.focus {
    color: #333;
    background-color: #e6e6e6;
    border-color: #8c8c8c; }
  .btn-default:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #333;
    background-color: #e6e6e6;
    background-image: none;
    border-color: #adadad; }
    .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
    .open > .btn-default.dropdown-toggle:hover,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle.focus {
      color: #333;
      background-color: #d4d4d4;
      border-color: #8c8c8c; }
  .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus {
    background-color: #fff;
    border-color: #ccc; }
  .btn-default .badge {
    color: #fff;
    background-color: #333; }

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40; }
  .btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    background-image: none;
    border-color: #204d74; }
    .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #204d74;
      border-color: #122b40; }
  .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus {
    background-color: #337ab7;
    border-color: #2e6da4; }
  .btn-primary .badge {
    color: #337ab7;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #449d44;
    border-color: #255625; }
  .btn-success:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #449d44;
    background-image: none;
    border-color: #398439; }
    .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
    .open > .btn-success.dropdown-toggle:hover,
    .open > .btn-success.dropdown-toggle:focus,
    .open > .btn-success.dropdown-toggle.focus {
      color: #fff;
      background-color: #398439;
      border-color: #255625; }
  .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus {
    background-color: #5cb85c;
    border-color: #4cae4c; }
  .btn-success .badge {
    color: #5cb85c;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #31b0d5;
    border-color: #1b6d85; }
  .btn-info:hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #31b0d5;
    background-image: none;
    border-color: #269abc; }
    .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
    .open > .btn-info.dropdown-toggle:hover,
    .open > .btn-info.dropdown-toggle:focus,
    .open > .btn-info.dropdown-toggle.focus {
      color: #fff;
      background-color: #269abc;
      border-color: #1b6d85; }
  .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus {
    background-color: #5bc0de;
    border-color: #46b8da; }
  .btn-info .badge {
    color: #5bc0de;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #ec971f;
    border-color: #985f0d; }
  .btn-warning:hover {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #ec971f;
    background-image: none;
    border-color: #d58512; }
    .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
    .open > .btn-warning.dropdown-toggle:hover,
    .open > .btn-warning.dropdown-toggle:focus,
    .open > .btn-warning.dropdown-toggle.focus {
      color: #fff;
      background-color: #d58512;
      border-color: #985f0d; }
  .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus {
    background-color: #f0ad4e;
    border-color: #eea236; }
  .btn-warning .badge {
    color: #f0ad4e;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #c9302c;
    border-color: #761c19; }
  .btn-danger:hover {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #c9302c;
    background-image: none;
    border-color: #ac2925; }
    .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
    .open > .btn-danger.dropdown-toggle:hover,
    .open > .btn-danger.dropdown-toggle:focus,
    .open > .btn-danger.dropdown-toggle.focus {
      color: #fff;
      background-color: #ac2925;
      border-color: #761c19; }
  .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus {
    background-color: #d9534f;
    border-color: #d43f3a; }
  .btn-danger .badge {
    color: #d9534f;
    background-color: #fff; }

.btn-link {
  font-weight: 400;
  color: #000;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #f2f2f2;
    text-decoration: underline;
    background-color: transparent; }
  .btn-link[disabled]:hover, .btn-link[disabled]:focus,
  fieldset[disabled] .btn-link:hover,
  fieldset[disabled] .btn-link:focus {
    color: #777777;
    text-decoration: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease; }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent; }

.dropup,
.dropdown {
  position: relative; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857;
    color: #333333;
    white-space: nowrap; }
    .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
      color: #262626;
      text-decoration: none;
      background-color: #f5f5f5; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0; }

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777; }

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); }

.open > .dropdown-menu {
  display: block; }

.open > a {
  outline: 0; }

.dropdown-menu-right {
  right: 0;
  left: auto; }

.dropdown-menu-left {
  right: auto;
  left: 0; }

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap; }

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990; }

.pull-right > .dropdown-menu {
  right: 0;
  left: auto; }

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 1020px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    float: left; }
    .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:hover,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 2; }

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before, .btn-toolbar:after {
    display: table;
    content: " "; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn,
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group > .btn-group {
  float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px; }

.btn-group.open .dropdown-toggle {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    box-shadow: none; }

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  display: table;
  content: " "; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    display: table-cell;
    float: none;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-right: 0;
    padding-left: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }
    .input-group .form-control:focus {
      z-index: 3; }

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell; }
  .input-group-addon:not(:first-child):not(:last-child),
  .input-group-btn:not(:first-child):not(:last-child),
  .input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0; }

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle; }

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 10px 16px;
    font-size: 18px;
    border-radius: 6px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .nav:before, .nav:after {
    display: table;
    content: " "; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover, .nav > li > a:focus {
        text-decoration: none;
        background-color: #eeeeee; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        cursor: not-allowed;
        background-color: transparent; }
  .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: #eeeeee;
    border-color: #000; }
  .nav .nav-divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .nav > li > a > img {
    max-width: none; }

.nav-tabs {
  border-bottom: 1px solid #ddd; }
  .nav-tabs > li {
    float: left;
    margin-bottom: -1px; }
    .nav-tabs > li > a {
      margin-right: 2px;
      line-height: 1.42857;
      border: 1px solid transparent;
      border-radius: 4px 4px 0 0; }
      .nav-tabs > li > a:hover {
        border-color: #eeeeee #eeeeee #ddd; }
    .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
      color: #555555;
      cursor: default;
      background-color: #fff;
      border: 1px solid #ddd;
      border-bottom-color: transparent; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 4px; }
  .nav-pills > li + li {
    margin-left: 2px; }
  .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: #fff;
    background-color: #337ab7; }

.nav-stacked > li {
  float: none; }
  .nav-stacked > li + li {
    margin-top: 2px;
    margin-left: 0; }

.nav-justified, .nav-tabs.nav-justified {
  width: 100%; }
  .nav-justified > li, .nav-tabs.nav-justified > li {
    float: none; }
    .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
      margin-bottom: 5px;
      text-align: center; }
  .nav-justified > .dropdown .dropdown-menu {
    top: auto;
    left: auto; }
  @media (min-width: 768px) {
    .nav-justified > li, .nav-tabs.nav-justified > li {
      display: table-cell;
      width: 1%; }
      .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
        margin-bottom: 0; } }

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0; }
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-right: 0;
    border-radius: 4px; }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus,
  .nav-tabs.nav-justified > .active > a:focus {
    border: 1px solid #ddd; }
  @media (min-width: 768px) {
    .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
      border-bottom: 1px solid #ddd;
      border-radius: 4px 4px 0 0; }
    .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
    .nav-tabs-justified > .active > a:hover,
    .nav-tabs.nav-justified > .active > a:hover,
    .nav-tabs-justified > .active > a:focus,
    .nav-tabs.nav-justified > .active > a:focus {
      border-bottom-color: #fff; } }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.navbar {
  position: relative;
  min-height: 75px;
  margin-bottom: 20px;
  border: 1px solid transparent; }
  .navbar:before, .navbar:after {
    display: table;
    content: " "; }
  .navbar:after {
    clear: both; }
  @media (min-width: 1020px) {
    .navbar {
      border-radius: 4px; } }

.navbar-header:before, .navbar-header:after {
  display: table;
  content: " "; }

.navbar-header:after {
  clear: both; }

@media (min-width: 1020px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before, .navbar-collapse:after {
    display: table;
    content: " "; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 1020px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-right: 0;
        padding-left: 0; } }

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 340px; }
    @media (max-device-width: 480px) and (orientation: landscape) {
      .navbar-fixed-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        max-height: 200px; } }
  @media (min-width: 1020px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px; }

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0; }

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px; }
  @media (min-width: 1020px) {
    .container > .navbar-header,
    .container > .navbar-collapse,
    .container-fluid > .navbar-header,
    .container-fluid > .navbar-collapse {
      margin-right: 0;
      margin-left: 0; } }

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px; }
  @media (min-width: 1020px) {
    .navbar-static-top {
      border-radius: 0; } }

.navbar-brand {
  float: left;
  height: 75px;
  padding: 27.5px 15px;
  font-size: 18px;
  line-height: 20px; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 1020px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-right: 15px;
  margin-top: 20.5px;
  margin-bottom: 20.5px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 1020px) {
    .navbar-toggle {
      display: none; } }

.navbar-nav {
  margin: 13.75px -15px; }
  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 20px; }
  @media (max-width: 1019px) {
    .navbar-nav .open .dropdown-menu {
      position: static;
      float: none;
      width: auto;
      margin-top: 0;
      background-color: transparent;
      border: 0;
      box-shadow: none; }
      .navbar-nav .open .dropdown-menu > li > a,
      .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px; }
      .navbar-nav .open .dropdown-menu > li > a {
        line-height: 20px; }
        .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
          background-image: none; } }
  @media (min-width: 1020px) {
    .navbar-nav {
      float: left;
      margin: 0; }
      .navbar-nav > li {
        float: left; }
        .navbar-nav > li > a {
          padding-top: 27.5px;
          padding-bottom: 27.5px; } }

.navbar-form {
  padding: 10px 15px;
  margin-right: -15px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 20.5px;
  margin-bottom: 20.5px; }
  @media (min-width: 768px) {
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .navbar-form .form-control-static {
      display: inline-block; }
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle; }
      .navbar-form .input-group .input-group-addon,
      .navbar-form .input-group .input-group-btn,
      .navbar-form .input-group .form-control {
        width: auto; }
    .navbar-form .input-group > .form-control {
      width: 100%; }
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle; }
      .navbar-form .radio label,
      .navbar-form .checkbox label {
        padding-left: 0; }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0; }
    .navbar-form .has-feedback .form-control-feedback {
      top: 0; } }
  @media (max-width: 1019px) {
    .navbar-form .form-group {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child {
        margin-bottom: 0; } }
  @media (min-width: 1020px) {
    .navbar-form {
      width: auto;
      padding-top: 0;
      padding-bottom: 0;
      margin-right: 0;
      margin-left: 0;
      border: 0;
      box-shadow: none; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.navbar-btn {
  margin-top: 20.5px;
  margin-bottom: 20.5px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
    margin-top: 22.5px;
    margin-bottom: 22.5px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
    margin-top: 26.5px;
    margin-bottom: 26.5px; }

.navbar-text {
  margin-top: 27.5px;
  margin-bottom: 27.5px; }
  @media (min-width: 1020px) {
    .navbar-text {
      float: left;
      margin-right: 15px;
      margin-left: 15px; } }

@media (min-width: 1020px) {
  .navbar-left {
    float: left !important; }
  .navbar-right {
    float: right !important;
    margin-right: -15px; }
    .navbar-right ~ .navbar-right {
      margin-right: 0; } }

.navbar-default {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0); }
  .navbar-default .navbar-brand {
    color: #34364c; }
    .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
      color: #1f202e;
      background-color: transparent; }
  .navbar-default .navbar-text {
    color: #777; }
  .navbar-default .navbar-nav > li > a {
    color: #34364c; }
    .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
      color: #6c9cc4;
      background-color: transparent; }
  .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: rgba(0, 0, 0, 0); }
  .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
    background-color: transparent; }
  .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    color: #555;
    background-color: rgba(0, 0, 0, 0); }
  @media (max-width: 1019px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #34364c; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #6c9cc4;
        background-color: transparent; }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #555;
      background-color: rgba(0, 0, 0, 0); }
    .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #ccc;
      background-color: transparent; } }
  .navbar-default .navbar-toggle {
    border-color: transparent; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background-color: #000; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #000; }
  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: rgba(0, 0, 0, 0); }
  .navbar-default .navbar-link {
    color: #34364c; }
    .navbar-default .navbar-link:hover {
      color: #6c9cc4; }
  .navbar-default .btn-link {
    color: #34364c; }
    .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
      color: #6c9cc4; }
    .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-default .btn-link:hover,
    fieldset[disabled] .navbar-default .btn-link:focus {
      color: #ccc; }

.navbar-inverse {
  background-color: #222;
  border-color: #090909; }
  .navbar-inverse .navbar-brand {
    color: #9d9d9d; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #9d9d9d; }
  .navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d; }
    .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: #090909; }
  .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
    color: #444;
    background-color: transparent; }
  .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
    color: #fff;
    background-color: #090909; }
  @media (max-width: 1019px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
      border-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
      color: #9d9d9d; }
      .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fff;
        background-color: transparent; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff;
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #444;
      background-color: transparent; } }
  .navbar-inverse .navbar-toggle {
    border-color: #333; }
    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
      background-color: #333; }
    .navbar-inverse .navbar-toggle .icon-bar {
      background-color: #fff; }
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-form {
    border-color: #101010; }
  .navbar-inverse .navbar-link {
    color: #9d9d9d; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #9d9d9d; }
    .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
      color: #fff; }
    .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-inverse .btn-link:hover,
    fieldset[disabled] .navbar-inverse .btn-link:focus {
      color: #444; }

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px; }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      padding: 0 5px;
      color: #ccc;
      content: "/ "; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 6px 12px;
      margin-left: -1px;
      line-height: 1.42857;
      color: #000;
      text-decoration: none;
      background-color: #fff;
      border: 1px solid #ddd; }
      .pagination > li > a:hover, .pagination > li > a:focus,
      .pagination > li > span:hover,
      .pagination > li > span:focus {
        z-index: 2;
        color: #f2f2f2;
        background-color: #eeeeee;
        border-color: #ddd; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-top-left-radius: 4px;
      border-bottom-left-radius: 4px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-top-right-radius: 4px;
      border-bottom-right-radius: 4px; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #337ab7;
    border-color: #337ab7; }
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: #777777;
    cursor: not-allowed;
    background-color: #fff;
    border-color: #ddd; }

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px; }

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px; }

.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none; }
  .pager:before, .pager:after {
    display: table;
    content: " "; }
  .pager:after {
    clear: both; }
  .pager li {
    display: inline; }
    .pager li > a,
    .pager li > span {
      display: inline-block;
      padding: 5px 14px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #eeeeee; }
  .pager .next > a,
  .pager .next > span {
    float: right; }
  .pager .previous > a,
  .pager .previous > span {
    float: left; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: #777777;
    cursor: not-allowed;
    background-color: #fff; }

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #777777; }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: #5e5e5e; }

.label-primary {
  background-color: #337ab7; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #286090; }

.label-success {
  background-color: #5cb85c; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #449d44; }

.label-info {
  background-color: #5bc0de; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #31b0d5; }

.label-warning {
  background-color: #f0ad4e; }
  .label-warning[href]:hover, .label-warning[href]:focus {
    background-color: #ec971f; }

.label-danger {
  background-color: #d9534f; }
  .label-danger[href]:hover, .label-danger[href]:focus {
    background-color: #c9302c; }

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge, .btn-group-xs > .btn .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #000;
    background-color: #fff; }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee; }
  .jumbotron h1,
  .jumbotron .h1 {
    color: inherit; }
  .jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200; }
  .jumbotron > hr {
    border-top-color: #d5d5d5; }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-right: 15px;
    padding-left: 15px;
    border-radius: 6px; }
  .jumbotron .container {
    max-width: 100%; }
  @media screen and (min-width: 768px) {
    .jumbotron {
      padding-top: 48px;
      padding-bottom: 48px; }
      .container .jumbotron,
      .container-fluid .jumbotron {
        padding-right: 60px;
        padding-left: 60px; }
      .jumbotron h1,
      .jumbotron .h1 {
        font-size: 63px; } }

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border 0.2s ease-in-out; }
  .thumbnail > img,
  .thumbnail a > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-right: auto;
    margin-left: auto; }
  .thumbnail .caption {
    padding: 9px;
    color: #000; }

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #000; }

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px; }
  .alert h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link {
    font-weight: bold; }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > p + p {
    margin-top: 5px; }

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px; }
  .alert-dismissable .close,
  .alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit; }

.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6; }
  .alert-success hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link {
    color: #2b542c; }

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1; }
  .alert-info hr {
    border-top-color: #a6e1ec; }
  .alert-info .alert-link {
    color: #245269; }

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc; }
  .alert-warning hr {
    border-top-color: #f7e1b5; }
  .alert-warning .alert-link {
    color: #66512c; }

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1; }
  .alert-danger hr {
    border-top-color: #e4b9c0; }
  .alert-danger .alert-link {
    color: #843534; }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  height: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  transition: width 0.6s ease; }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #5bc0de; }
  .progress-striped .progress-bar-info {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0ad4e; }
  .progress-striped .progress-bar-warning {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #d9534f; }
  .progress-striped .progress-bar-danger {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media {
  margin-top: 15px; }
  .media:first-child {
    margin-top: 0; }

.media,
.media-body {
  overflow: hidden;
  zoom: 1; }

.media-body {
  width: 10000px; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

.media-right,
.media > .pull-right {
  padding-left: 10px; }

.media-left,
.media > .pull-left {
  padding-right: 10px; }

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top; }

.media-middle {
  vertical-align: middle; }

.media-bottom {
  vertical-align: bottom; }

.media-heading {
  margin-top: 0;
  margin-bottom: 5px; }

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

.list-group {
  padding-left: 0;
  margin-bottom: 20px; }

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px; }
  .list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
    color: #777777;
    cursor: not-allowed;
    background-color: #eeeeee; }
    .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
      color: inherit; }
    .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
      color: #777777; }
  .list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
    z-index: 2;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .list-group-item.active .list-group-item-heading,
    .list-group-item.active .list-group-item-heading > small,
    .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
    .list-group-item.active:hover .list-group-item-heading > small,
    .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
    .list-group-item.active:focus .list-group-item-heading > small,
    .list-group-item.active:focus .list-group-item-heading > .small {
      color: inherit; }
    .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
      color: #c7ddef; }

a.list-group-item,
button.list-group-item {
  color: #555; }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading {
    color: #333; }
  a.list-group-item:hover, a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus {
    color: #555;
    text-decoration: none;
    background-color: #f5f5f5; }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8; }

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d; }
  a.list-group-item-success .list-group-item-heading,
  button.list-group-item-success .list-group-item-heading {
    color: inherit; }
  a.list-group-item-success:hover, a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6; }
  a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
  button.list-group-item-success.active,
  button.list-group-item-success.active:hover,
  button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d; }

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7; }

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f; }
  a.list-group-item-info .list-group-item-heading,
  button.list-group-item-info .list-group-item-heading {
    color: inherit; }
  a.list-group-item-info:hover, a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3; }
  a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
  button.list-group-item-info.active,
  button.list-group-item-info.active:hover,
  button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f; }

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b; }
  a.list-group-item-warning .list-group-item-heading,
  button.list-group-item-warning .list-group-item-heading {
    color: inherit; }
  a.list-group-item-warning:hover, a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #faf2cc; }
  a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
  button.list-group-item-warning.active,
  button.list-group-item-warning.active:hover,
  button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b; }

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442; }
  a.list-group-item-danger .list-group-item-heading,
  button.list-group-item-danger .list-group-item-heading {
    color: inherit; }
  a.list-group-item-danger:hover, a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    color: #a94442;
    background-color: #ebcccc; }
  a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
  button.list-group-item-danger.active,
  button.list-group-item-danger.active:hover,
  button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442; }

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3; }

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

.panel-body {
  padding: 15px; }
  .panel-body:before, .panel-body:after {
    display: table;
    content: " "; }
  .panel-body:after {
    clear: both; }

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px; }
  .panel-heading > .dropdown .dropdown-toggle {
    color: inherit; }

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit; }
  .panel-title > a,
  .panel-title > small,
  .panel-title > .small,
  .panel-title > small > a,
  .panel-title > .small > a {
    color: inherit; }

.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0; }
  .panel > .list-group .list-group-item,
  .panel > .panel-collapse > .list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0; }
  .panel > .list-group:first-child .list-group-item:first-child,
  .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px; }
  .panel > .list-group:last-child .list-group-item:last-child,
  .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px; }

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0; }

.list-group + .panel-footer {
  border-top-width: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-right: 15px;
    padding-left: 15px; }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px; }
  .panel > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table:first-child > tbody:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
      border-top-left-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
      border-top-right-radius: 3px; }

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }
  .panel > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table:last-child > tfoot:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
      border-bottom-left-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
      border-bottom-right-radius: 3px; }

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd; }

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0; }

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0; }
  .panel > .table-bordered > thead > tr > th:first-child,
  .panel > .table-bordered > thead > tr > td:first-child,
  .panel > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-bordered > tfoot > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0; }
  .panel > .table-bordered > thead > tr > th:last-child,
  .panel > .table-bordered > thead > tr > td:last-child,
  .panel > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-bordered > tfoot > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0; }
  .panel > .table-bordered > thead > tr:first-child > td,
  .panel > .table-bordered > thead > tr:first-child > th,
  .panel > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-bordered > tbody > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0; }
  .panel > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-bordered > tfoot > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0; }

.panel > .table-responsive {
  margin-bottom: 0;
  border: 0; }

.panel-group {
  margin-bottom: 20px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px; }
    .panel-group .panel + .panel {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid #ddd; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid #ddd; }

.panel-default {
  border-color: #ddd; }
  .panel-default > .panel-heading {
    color: #333333;
    background-color: #f5f5f5;
    border-color: #ddd; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ddd; }
    .panel-default > .panel-heading .badge {
      color: #f5f5f5;
      background-color: #333333; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddd; }

.panel-primary {
  border-color: #337ab7; }
  .panel-primary > .panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .panel-primary > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #337ab7; }
    .panel-primary > .panel-heading .badge {
      color: #337ab7;
      background-color: #fff; }
  .panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #337ab7; }

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d6e9c6; }
    .panel-success > .panel-heading .badge {
      color: #dff0d8;
      background-color: #3c763d; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6; }

.panel-info {
  border-color: #bce8f1; }
  .panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #bce8f1; }
    .panel-info > .panel-heading .badge {
      color: #d9edf7;
      background-color: #31708f; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1; }

.panel-warning {
  border-color: #faebcc; }
  .panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #faebcc; }
    .panel-warning > .panel-heading .badge {
      color: #fcf8e3;
      background-color: #8a6d3b; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #faebcc; }

.panel-danger {
  border-color: #ebccd1; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ebccd1; }
    .panel-danger > .panel-heading .badge {
      color: #f2dede;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ebccd1; }

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

.well-lg {
  padding: 24px;
  border-radius: 6px; }

.well-sm {
  padding: 9px;
  border-radius: 3px; }

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: 0.2; }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    filter: alpha(opacity=50);
    opacity: 0.5; }

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none; }

.modal-open {
  overflow: hidden; }

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    transform: translate(0, -25%);
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000; }
  .modal-backdrop.fade {
    filter: alpha(opacity=0);
    opacity: 0; }
  .modal-backdrop.in {
    filter: alpha(opacity=50);
    opacity: 0.5; }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5; }
  .modal-header:before, .modal-header:after {
    display: table;
    content: " "; }
  .modal-header:after {
    clear: both; }

.modal-header .close {
  margin-top: -2px; }

.modal-title {
  margin: 0;
  line-height: 1.42857; }

.modal-body {
  position: relative;
  padding: 15px; }

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5; }
  .modal-footer:before, .modal-footer:after {
    display: table;
    content: " "; }
  .modal-footer:after {
    clear: both; }
  .modal-footer .btn + .btn {
    margin-bottom: 0;
    margin-left: 5px; }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px; }
  .modal-footer .btn-block + .btn-block {
    margin-left: 0; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto; }
  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.42857;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 12px;
  filter: alpha(opacity=0);
  opacity: 0; }
  .tooltip.in {
    filter: alpha(opacity=90);
    opacity: 0.9; }
  .tooltip.top {
    padding: 5px 0;
    margin-top: -3px; }
  .tooltip.right {
    padding: 0 5px;
    margin-left: 3px; }
  .tooltip.bottom {
    padding: 5px 0;
    margin-top: 3px; }
  .tooltip.left {
    padding: 0 5px;
    margin-left: -3px; }
  .tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.top-left .tooltip-arrow {
    right: 5px;
    bottom: 0;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.top-right .tooltip-arrow {
    bottom: 0;
    left: 5px;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-width: 5px 5px 5px 0;
    border-right-color: #000; }
  .tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-width: 5px 0 5px 5px;
    border-left-color: #000; }
  .tooltip.bottom .tooltip-arrow {
    top: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }
  .tooltip.bottom-left .tooltip-arrow {
    top: 0;
    right: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }
  .tooltip.bottom-right .tooltip-arrow {
    top: 0;
    left: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.42857;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }
  .popover > .arrow {
    border-width: 11px; }
    .popover > .arrow, .popover > .arrow:after {
      position: absolute;
      display: block;
      width: 0;
      height: 0;
      border-color: transparent;
      border-style: solid; }
    .popover > .arrow:after {
      content: "";
      border-width: 10px; }
  .popover.top > .arrow {
    bottom: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-color: #999999;
    border-top-color: rgba(0, 0, 0, 0.25);
    border-bottom-width: 0; }
    .popover.top > .arrow:after {
      bottom: 1px;
      margin-left: -10px;
      content: " ";
      border-top-color: #fff;
      border-bottom-width: 0; }
  .popover.right > .arrow {
    top: 50%;
    left: -11px;
    margin-top: -11px;
    border-right-color: #999999;
    border-right-color: rgba(0, 0, 0, 0.25);
    border-left-width: 0; }
    .popover.right > .arrow:after {
      bottom: -10px;
      left: 1px;
      content: " ";
      border-right-color: #fff;
      border-left-width: 0; }
  .popover.bottom > .arrow {
    top: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-width: 0;
    border-bottom-color: #999999;
    border-bottom-color: rgba(0, 0, 0, 0.25); }
    .popover.bottom > .arrow:after {
      top: 1px;
      margin-left: -10px;
      content: " ";
      border-top-width: 0;
      border-bottom-color: #fff; }
  .popover.left > .arrow {
    top: 50%;
    right: -11px;
    margin-top: -11px;
    border-right-width: 0;
    border-left-color: #999999;
    border-left-color: rgba(0, 0, 0, 0.25); }
    .popover.left > .arrow:after {
      right: 1px;
      bottom: -10px;
      content: " ";
      border-right-width: 0;
      border-left-color: #fff; }

.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.popover-content {
  padding: 9px 14px; }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .carousel-inner > .item {
    position: relative;
    display: none;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        perspective: 1000px; }
        .carousel-inner > .item.next, .carousel-inner > .item.active.right {
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
  filter: alpha(opacity=50);
  opacity: 0.5; }
  .carousel-control.left {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
    background-repeat: repeat-x; }
  .carousel-control.right {
    right: 0;
    left: auto;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
    background-repeat: repeat-x; }
  .carousel-control:hover, .carousel-control:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    filter: alpha(opacity=90);
    opacity: 0.9; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-block;
    margin-top: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    font-family: serif;
    line-height: 1; }
  .carousel-control .icon-prev:before {
    content: "\2039"; }
  .carousel-control .icon-next:before {
    content: "\203a"; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #fff;
    border-radius: 10px; }
  .carousel-indicators .active {
    width: 12px;
    height: 12px;
    margin: 0;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px; }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

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

.clearfix:after {
  clear: both; }

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.pull-right {
  float: right !important; }

.pull-left {
  float: left !important; }

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.hidden {
  display: none !important; }

.affix {
  position: fixed; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

/* Animated 404 glitch style */
@-webkit-keyframes flicker {
  0% {
    opacity: 0.01; }
  25% {
    opacity: 0.01; }
  25.01% {
    opacity: 1; }
  26% {
    opacity: 1; }
  26.01% {
    opacity: 0.01; }
  50% {
    opacity: 0.01; }
  50.01% {
    opacity: 1; }
  58% {
    opacity: 1; }
  58.01% {
    opacity: 0.01; }
  70% {
    opacity: 0.01; }
  70.01% {
    opacity: 1; }
  72% {
    opacity: 1; }
  72.01% {
    opacity: 0.01; }
  75% {
    opacity: 0.01; }
  75.01% {
    opacity: 1; }
  80% {
    opacity: 1; }
  80.01% {
    opacity: 0.01; }
  90% {
    opacity: 0.01; }
  90.01% {
    opacity: 1; }
  95% {
    opacity: 1; }
  95.01% {
    opacity: 0.01; }
  100% {
    opacity: 0.01; } }
@keyframes flicker {
  0% {
    opacity: 0.01; }
  25% {
    opacity: 0.01; }
  25.01% {
    opacity: 1; }
  26% {
    opacity: 1; }
  26.01% {
    opacity: 0.01; }
  50% {
    opacity: 0.01; }
  50.01% {
    opacity: 1; }
  58% {
    opacity: 1; }
  58.01% {
    opacity: 0.01; }
  70% {
    opacity: 0.01; }
  70.01% {
    opacity: 1; }
  72% {
    opacity: 1; }
  72.01% {
    opacity: 0.01; }
  75% {
    opacity: 0.01; }
  75.01% {
    opacity: 1; }
  80% {
    opacity: 1; }
  80.01% {
    opacity: 0.01; }
  90% {
    opacity: 0.01; }
  90.01% {
    opacity: 1; }
  95% {
    opacity: 1; }
  95.01% {
    opacity: 0.01; }
  100% {
    opacity: 0.01; } }

/* Detail */
.page-404 .page {
  background: #fff; }

.section-error {
  display: block;
  margin: 0;
  padding: 0;
  text-align: center; }
  .section-error .wrap {
    max-width: 100%;
    padding: 0; }
  .section-error-header {
    display: none; }
  .section-error .figure {
    position: relative;
    padding-bottom: 59%; }
    .section-error .figure .image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("//static.wonderfulunion.net/groundctrl/clients/wonderful-union/error/error1.png") no-repeat center/contain; }
      .section-error .figure .image:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url("//static.wonderfulunion.net/groundctrl/clients/wonderful-union/error/error2.jpg") no-repeat center/contain;
        opacity: 0.01;
        -webkit-animation-name: flicker;
                animation-name: flicker;
        -webkit-animation-duration: 6s;
                animation-duration: 6s;
        -webkit-animation-timing-function: linear;
                animation-timing-function: linear;
        -webkit-animation-iteration-count: infinite;
                animation-iteration-count: infinite; }
  .section-error .content {
    max-width: 700px;
    margin: 0 auto;
    padding: 2em 10px 4em; }
  .section-error p {
    margin-bottom: 0;
    color: #ec1c24;
    font-size: 23px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .section-error a {
    color: #000;
    text-decoration: underline;
    text-transform: uppercase;
    font-weight: bold;
    transition: color 250ms; }
    .section-error a:hover {
      color: #808080; }

/* Icons */
@font-face {
  font-family: 'wu-social-icons';
  src: url("../../../../public/type/wu-social-icons/circle/wu-social-icons.ttf?q9hkq3") format("truetype"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.woff?q9hkq3") format("woff"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.svg?q9hkq3#wu-social-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="wu-social-"], [class*=" wu-social-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'wu-social-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-display: swap;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.wu-social-giphy:before {
  content: "\e91d"; }

.wu-social-tiktok:before {
  content: "\e91c"; }

.wu-social-linkedin:before {
  content: "\e900"; }

.wu-social-soundcloud:before {
  content: "\e002"; }

.wu-social-spotify:before {
  content: "\e602"; }

.wu-social-twitter:before {
  content: "\e603"; }

.wu-social-googleplus:before,
.wu-social-google-plus:before {
  content: "\e604"; }

.wu-social-youtube:before {
  content: "\e605"; }

.wu-social-rss:before {
  content: "\e60f"; }

.wu-social-pinterest:before {
  content: "\e610"; }

.wu-social-vimeo:before {
  content: "\e901"; }

.wu-social-apple:before,
.wu-social-apple-music:before {
  content: "\e902"; }

.wu-social-Vevo:before,
.wu-social-vevo:before {
  content: "\e903"; }

.wu-social-messenger:before {
  content: "\e904"; }

.wu-social-instagram:before {
  content: "\e905"; }

.wu-social-mail:before {
  content: "\e906"; }

.wu-social-tumblr:before {
  content: "\e907"; }

.wu-social-snapchat:before {
  content: "\e908"; }

.wu-social-vine:before {
  content: "\e909"; }

.wu-social-myspace:before {
  content: "\e90a"; }

.wu-social-whatsapp:before {
  content: "\e90b"; }

.wu-social-kik:before {
  content: "\e8fc"; }

.wu-social-googleplay:before,
.wu-social-google-play:before {
  content: "\e90c"; }

.wu-social-fans:before {
  content: "\e90d"; }

.wu-social-facebook:before {
  content: "\e90e"; }

.wu-social-line:before {
  content: "\e90f"; }

.wu-social-amazon:before {
  content: "\e910"; }

.wu-social-bkstg:before {
  content: "\e911"; }

.wu-social-itunes:before {
  content: "\e912"; }

.wu-social-buy:before {
  content: "\e913"; }

.wu-social-deezer:before {
  content: "\e914"; }

.wu-social-target:before {
  content: "\e915"; }

.wu-social-walmart:before {
  content: "\e916"; }

.wu-social-musically:before {
  content: "\e917"; }

.wu-social-pandora:before {
  content: "\e918"; }

.wu-social-twitch:before {
  content: "\e919"; }

.wu-social-yelp:before {
  content: "\e91a"; }

.wu-social-untapped:before {
  content: "\e91b"; }

/**
 * General
 * =======
 *
*/
body {
  background: #fff;
  font-family: "futura-pt", sans-serif; }

a {
  transition: color 150ms; }
  a:hover {
    transition: color 150ms;
    text-decoration: none; }

.meta-value-back {
  text-transform: uppercase; }

/* Page Transition */
/* Page Fade Transition */
.page {
  position: relative; }
  .page-inner {
    position: relative;
    top: 0;
    transition: opacity 250ms;
    opacity: 1; }
    .page-inner:before, .page-inner:after {
      display: table;
      content: " "; }
    .page-inner:after {
      clear: both; }
    .page-inner.ng-enter {
      opacity: 0; }
    .page-inner.ng-enter-active {
      opacity: 1; }
    .page-inner.ng-leave {
      position: absolute;
      width: 100%;
      top: 0;
      opacity: 1; }
    .page-inner.ng-leave-active {
      opacity: 0; }

/* Loading Indicator */
#loading-bar .bar {
  background: #6c9cc4; }

#loading-bar .peg {
  box-shadow: #fff 1px 0 6px 1px; }

#loading-bar-spinner {
  display: none; }

/* Grid */
.page .wrap, .site-header .wrap, .site-footer .wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 10px; }

.page {
  min-height: calc(100vh - 220px); }

/* Section Headers */
.section-header h1 {
  padding-top: 20px;
  padding-bottom: 70px;
  font-size: 30px;
  text-transform: uppercase; }

/* Section Footers */
.section-footer, .section .footer {
  text-align: right; }
  .section-footer .wrap, .section .footer .wrap {
    padding-top: 20px;
    padding-bottom: 90px; }
  .section-footer a, .section .footer a {
    color: #6c9cc4;
    border-bottom: 1px solid;
    font-weight: 700;
    text-transform: uppercase; }
    .section-footer a:hover, .section .footer a:hover {
      color: #040404; }

/* Video Widget */
/* Featured Video / Widget Video with Overlay */
.section-widget-video .header,
.section-featured-video .header {
  display: none; }

.section-widget-video .video-frame.video-active .inner:before,
.section-featured-video .video-frame.video-active .inner:before {
  height: 0;
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame.video-active .video-poster-image, .section-widget-video .video-frame.video-active .video-title,
.section-featured-video .video-frame.video-active .video-poster-image,
.section-featured-video .video-frame.video-active .video-title {
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame.video-active .video-embed:before,
.section-featured-video .video-frame.video-active .video-embed:before {
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame .inner,
.section-featured-video .video-frame .inner {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  overflow: hidden;
  cursor: pointer; }
  .section-widget-video .video-frame .inner:before, .section-widget-video .video-frame .inner .video-poster-image, .section-widget-video .video-frame .inner .video-title,
  .section-featured-video .video-frame .inner:before,
  .section-featured-video .video-frame .inner .video-poster-image,
  .section-featured-video .video-frame .inner .video-title {
    position: absolute;
    transition: visibility 250ms 0ms, opacity 250ms; }
  .section-widget-video .video-frame .inner:before,
  .section-featured-video .video-frame .inner:before {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(64, 64, 64, 0);
    z-index: 2;
    transition: background 250ms; }
  .section-widget-video .video-frame .inner .video-poster-image,
  .section-featured-video .video-frame .inner .video-poster-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1; }
  .section-widget-video .video-frame .inner .video-title,
  .section-featured-video .video-frame .inner .video-title {
    bottom: 0;
    right: 0;
    margin: 15px;
    color: inherit;
    border-bottom: 1px solid;
    font-size: 1.2em;
    text-transform: uppercase;
    z-index: 3; }

.section-widget-video .video-frame .sound-icon,
.section-featured-video .video-frame .sound-icon {
  position: absolute;
  top: .25em;
  left: .5em;
  font-size: 3em;
  color: #fff;
  z-index: 5; }

.section-widget-video .video-frame iframe, .section-widget-video .video-frame video,
.section-featured-video .video-frame iframe,
.section-featured-video .video-frame video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.section-widget-video.widget-loaded .inner:before, .section-widget-video.video-loaded .inner:before,
.section-featured-video.widget-loaded .inner:before,
.section-featured-video.video-loaded .inner:before {
  background: transparent; }

.section-widget-video.widget-loaded .inner:after, .section-widget-video.video-loaded .inner:after,
.section-featured-video.widget-loaded .inner:after,
.section-featured-video.video-loaded .inner:after {
  opacity: 0;
  visibility: hidden; }

.section-widget-video.widget-loaded .video-frame, .section-widget-video.video-loaded .video-frame,
.section-featured-video.widget-loaded .video-frame,
.section-featured-video.video-loaded .video-frame {
  position: relative; }
  .section-widget-video.widget-loaded .video-frame:before, .section-widget-video.widget-loaded .video-frame:after, .section-widget-video.video-loaded .video-frame:before, .section-widget-video.video-loaded .video-frame:after,
  .section-featured-video.widget-loaded .video-frame:before,
  .section-featured-video.widget-loaded .video-frame:after,
  .section-featured-video.video-loaded .video-frame:before,
  .section-featured-video.video-loaded .video-frame:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    cursor: pointer;
    pointer-events: none;
    opacity: 1;
    transform: translate(-50%, -50%);
    transition: opacity 250ms, background-color 250ms, border-color 250ms; }
  .section-widget-video.widget-loaded .video-frame:before, .section-widget-video.video-loaded .video-frame:before,
  .section-featured-video.widget-loaded .video-frame:before,
  .section-featured-video.video-loaded .video-frame:before {
    width: 75px;
    height: 75px;
    background-color: #34364c;
    border-radius: 50%;
    z-index: 4; }
  .section-widget-video.widget-loaded .video-frame:after, .section-widget-video.video-loaded .video-frame:after,
  .section-featured-video.widget-loaded .video-frame:after,
  .section-featured-video.video-loaded .video-frame:after {
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-left: 25px solid #fff;
    border-bottom: 15px solid transparent;
    transform: translate(-38%, -50%);
    z-index: 5; }
  .section-widget-video.widget-loaded .video-frame:hover:before, .section-widget-video.video-loaded .video-frame:hover:before,
  .section-featured-video.widget-loaded .video-frame:hover:before,
  .section-featured-video.video-loaded .video-frame:hover:before {
    background-color: #fff; }
  .section-widget-video.widget-loaded .video-frame:hover:after, .section-widget-video.video-loaded .video-frame:hover:after,
  .section-featured-video.widget-loaded .video-frame:hover:after,
  .section-featured-video.video-loaded .video-frame:hover:after {
    border-left-color: #34364c; }
  .section-widget-video.widget-loaded .video-frame.video-active:before, .section-widget-video.widget-loaded .video-frame.video-active:after, .section-widget-video.video-loaded .video-frame.video-active:before, .section-widget-video.video-loaded .video-frame.video-active:after,
  .section-featured-video.widget-loaded .video-frame.video-active:before,
  .section-featured-video.widget-loaded .video-frame.video-active:after,
  .section-featured-video.video-loaded .video-frame.video-active:before,
  .section-featured-video.video-loaded .video-frame.video-active:after {
    opacity: 0; }

@media only screen and (min-width: 500px) {
  .section-widget-video .inner .video-title {
    margin: 60px; } }

.section-featured-video .video-title,
.section-widget-video .video-title {
  display: none; }

.section-featured-video .video-frame:before,
.section-widget-video .video-frame:before {
  border: 0.5em solid #fff;
  background: transparent; }

.section-featured-video.video-loaded .inner:after,
.section-widget-video.widget-loaded .inner:after {
  opacity: 1;
  visibility: visible; }

/* Pagination */
/* Simple Pagination */
.section-pagination {
  font-size: 1.2em;
  text-align: center; }

.pagination > li a, .pagination > li a:focus, .pagination > li span {
  border: 0;
  outline: 0;
  background-color: transparent; }

.pagination > li a:hover {
  border: 0;
  background-color: transparent; }

.pagination > li:first-child > a, .pagination > li:first-child > span, .pagination > li:last-child > a, .pagination > li:last-child > span {
  border-radius: 0; }

.pagination > .active a, .pagination > .active a:hover, .pagination > .active a:focus {
  border: 0;
  cursor: not-allowed;
  outline: 0;
  background-color: transparent;
  color: #6c9cc4; }

.pagination > .disabled > a, .pagination > .disabled > a:hover {
  background-color: transparent; }

.section-pagination {
  background: #e5e5e5; }

.pagination > li a {
  position: relative;
  color: #040404;
  font-weight: 700; }
  .pagination > li a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/strike-accent.svg") no-repeat center;
    background-size: 100% 10%;
    opacity: 0;
    pointer-events: none;
    transition: opacity 250ms; }
  .pagination > li a:hover:after {
    opacity: 1; }
  .pagination > li a:after {
    background-size: 100% 15%; }
  .pagination > li a:hover {
    color: #6c9cc4; }

.pagination > li:first-child a:after, .pagination > li:last-child a:after {
  display: none; }

.pagination .active > a:after {
  opacity: 1; }

/* CMS Page */
.section-cms-page .wrap {
  max-width: 800px; }

.section-cms-page-content {
  font-size: 1.2em; }
  .section-cms-page-content a {
    text-decoration: underline; }

.section-cms-page img {
  max-width: 100%; }

/* Cabrera Crew */
.page-cabrerascrew {
  position: relative; }
  .page-cabrerascrew .section-cms-page .header {
    display: none; }
  .page-cabrerascrew .section-cms-page .wrap {
    margin: 0;
    min-height: calc(100vh - 105px);
    max-width: 100%;
    padding: 0;
    position: relative; }
    .page-cabrerascrew .section-cms-page .wrap #sweet-embed {
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%; }

/**
 * Header
 * ======
 *
*/
/* Nav */
/* Nav Button 3 bar to X animation */
.navbar-default .navbar-toggle {
  padding: 15px 12px;
  transition: background-color 250ms; }
  .navbar-default .navbar-toggle .icon-bar {
    position: absolute;
    top: 14px;
    left: 0;
    width: 24px;
    margin: 0;
    background-color: transparent;
    transition: top 120ms ease, bottom 120ms ease, transform 120ms ease 120ms;
    transform: rotate(45deg);
    background-color: #34364c; }
    .navbar-default .navbar-toggle .icon-bar + .icon-bar {
      background-color: transparent; }
    .navbar-default .navbar-toggle .icon-bar + .icon-bar + .icon-bar {
      background-color: #34364c;
      transform: rotate(-45deg); }
  .navbar-default .navbar-toggle.collapsed .icon-bar {
    top: 6px;
    background-color: #34364c;
    transition: top 130ms ease 130ms, transform 130ms ease;
    transform: rotate(0); }
    .navbar-default .navbar-toggle.collapsed .icon-bar + .icon-bar {
      top: 14px; }
    .navbar-default .navbar-toggle.collapsed .icon-bar + .icon-bar + .icon-bar {
      top: 22px;
      transform: rotate(0); }
  .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
    background-color: transparent; }

.site-header {
  background: #f2f2f2 url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/int-nav-bg.jpg") no-repeat top/cover;
  width: 100%; }

.navbar-nav {
  margin: 15px 0;
  text-align: center; }
  .navbar-nav > li > a {
    display: inline-block; }

.navbar-default .navbar-toggle {
  margin-top: 32px; }

.navbar-default .navbar-collapse {
  border-color: #f2f2f2; }

.navbar-default .navbar-brand {
  display: block;
  width: 200px;
  color: transparent;
  background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/logo.png") left center/contain no-repeat;
  padding: 50px 15px;
  text-indent: -9999px; }

.navbar-default .site-nav .nav-item {
  text-transform: uppercase;
  font-size: 1em; }
  .navbar-default .site-nav .nav-item a {
    position: relative;
    margin: auto 1.4em;
    padding-right: 3px;
    padding-left: 3px;
    font-weight: 700; }
    .navbar-default .site-nav .nav-item a:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/strike-accent.svg") no-repeat center;
      background-size: 100% 10%;
      opacity: 0;
      pointer-events: none;
      transition: opacity 250ms; }
    .navbar-default .site-nav .nav-item a:hover:after {
      opacity: 1; }
    .navbar-default .site-nav .nav-item a .glyphicon {
      padding-left: 5px; }
  .navbar-default .site-nav .nav-item-media.open a {
    color: #6c9cc4; }
  .navbar-default .site-nav .nav-item-media.open .dropdown-menu a {
    color: #34364c;
    text-align: center;
    padding: 5px 15px; }
    .navbar-default .site-nav .nav-item-media.open .dropdown-menu a:hover {
      color: #6c9cc4;
      background-color: #fff; }
  .navbar-default .site-nav .nav-item-cabrera a {
    position: relative; }
    .navbar-default .site-nav .nav-item-cabrera a:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/strike-accent.svg") no-repeat center;
      background-size: 100% 10%;
      opacity: 0;
      pointer-events: none;
      transition: opacity 250ms; }
    .navbar-default .site-nav .nav-item-cabrera a:hover:after {
      opacity: 1; }
    .navbar-default .site-nav .nav-item-cabrera a:after {
      background-size: 70% 20%;
      left: -20px; }

.navbar-default .social-nav .nav-item {
  display: inline-block;
  font-size: 1.2em; }
  .navbar-default .social-nav .nav-item a {
    color: #6c9cc4;
    font-weight: 400;
    padding-left: 7px;
    padding-right: 7px; }

@media (min-width: 1020px) {
  .site-header {
    height: 105px; }
  .social-nav {
    float: right; }
  .navbar-default .navbar-collapse {
    height: 100% !important;
    padding: 0 !important; } }

/**
 * Footer
 * ======
 *
*/
.page-home .site-footer {
  margin-top: 70px; }

.site-footer {
  padding: 1em;
  background: #f2f2f2;
  text-align: center; }
  .site-footer .client-footer {
    display: inline-block; }
  .site-footer > * {
    color: #6c9cc4; }
  .site-footer .footer-brand {
    display: block;
    width: 100%;
    height: 65px;
    color: transparent;
    background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/logo.png") center/100% no-repeat;
    text-indent: -9999px; }
  .site-footer .footer-socials {
    margin-top: .25em; }
    .site-footer .footer-socials ul {
      padding: 0; }
    .site-footer .footer-socials .nav-item {
      display: inline-block;
      padding: 0 8px;
      list-style-type: none; }
    .site-footer .footer-socials a {
      color: #6c9cc4; }
      .site-footer .footer-socials a:hover {
        color: #34364c; }
  .site-footer a {
    color: #6c9cc4; }
    .site-footer a:hover {
      color: #34364c; }

.wu-footer {
  display: inline-block;
  font-weight: 600;
  padding: 2em;
  text-align: left;
  position: relative;
  top: -5px; }
  .wu-footer p {
    margin: 0;
    font-size: .8em; }
  .wu-footer .copyright, .wu-footer .poweredby {
    display: block; }

/**
 * Home
 * ======
 *
*/
/* Carousel */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 53%;
  background: #fff; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 53%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }
  .section-carousel:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
    background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/loading.svg") no-repeat center/contain;
    z-index: 1;
    transform: translate(-50%, -50%);
    transition: visibility 250ms 0ms, opacity 250ms; }

.section-carousel {
  background: #f2f2f2; }

/* Newsletter */
.section-newsletter-signup {
  font-family: "futura-pt-bold", sans-serif;
  font-style: italic;
  padding: 20px 30px;
  text-align: center; }
  .section-newsletter-signup label, .section-newsletter-signup input, .section-newsletter-signup button {
    display: inline-block;
    vertical-align: middle; }
  .section-newsletter-signup label {
    margin: 0 .5em;
    font-size: 1.4em;
    font-weight: 400; }
  .section-newsletter-signup input {
    width: 100%;
    max-width: 350px;
    padding: 8px;
    margin-right: 10px;
    color: #040404;
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #f2f2f2;
    font-size: .8em;
    text-transform: uppercase; }
    .section-newsletter-signup input::-moz-placeholder {
      color: #f2f2f2; }
    .section-newsletter-signup input:-ms-input-placeholder {
      color: #f2f2f2; }
    .section-newsletter-signup input::placeholder {
      color: #f2f2f2; }
  .section-newsletter-signup button {
    display: inline-block;
    padding: 3px 18px;
    margin: 20px 0 40px;
    text-decoration: none;
    font-family: inherit;
    color: #000;
    text-align: center;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    transition: color 250ms, background 250ms, border 250ms;
    padding: 12px 25px 8px;
    transform: translateY(8px);
    background: #34364c;
    border-color: #34364c;
    color: #fff;
    text-transform: uppercase; }
    .section-newsletter-signup button:hover {
      color: #fff;
      background: #f2f2f2;
      border-color: #f2f2f2; }
    .section-newsletter-signup button:hover {
      background: #f2f2f2;
      border-color: #f2f2f2;
      color: #34364c; }

/* Newsletter Modal */
.newsletter-modal.in .modal-dialog {
  transform: translate(0, 10%); }

.newsletter-modal .modal-dialog {
  max-width: 410px;
  margin: 0 auto; }

.newsletter-modal .modal-content {
  position: relative;
  padding: 2.5%;
  overflow: hidden;
  border: none;
  box-shadow: none;
  background-color: transparent;
  color: #f2f2f2; }
  .newsletter-modal .modal-content input, .newsletter-modal .modal-content select {
    width: 100%;
    padding: 5px;
    margin-bottom: 15px;
    border: none;
    border-bottom: 1px solid #f2f2f2;
    background: transparent;
    border-radius: 0;
    color: #f2f2f2;
    font-size: .8em;
    -webkit-appearance: none; }
    .newsletter-modal .modal-content input::-moz-placeholder, .newsletter-modal .modal-content select::-moz-placeholder {
      color: #f2f2f2; }
    .newsletter-modal .modal-content input:-ms-input-placeholder, .newsletter-modal .modal-content select:-ms-input-placeholder {
      color: #f2f2f2; }
    .newsletter-modal .modal-content input::placeholder, .newsletter-modal .modal-content select::placeholder {
      color: #f2f2f2; }
  .newsletter-modal .modal-content label {
    margin: 0 auto;
    text-indent: 5px;
    text-transform: uppercase;
    font-size: 0.8em; }
  .newsletter-modal .modal-content .size1of2 label {
    display: block;
    margin-top: 15px; }
  .newsletter-modal .modal-content .mce-month, .newsletter-modal .modal-content .mce-day {
    float: left;
    width: 49%; }
  .newsletter-modal .modal-content .mce-month {
    margin-right: 2%; }
  .newsletter-modal .modal-content h2 {
    font-size: 30px;
    text-transform: uppercase; }
  .newsletter-modal .modal-content p {
    color: #fff; }
  .newsletter-modal .modal-content img {
    width: 100%;
    height: auto; }
  .newsletter-modal .modal-content .subscribe {
    text-align: center; }
  .newsletter-modal .modal-content .close {
    color: #fff;
    opacity: 1;
    text-shadow: none; }
  .newsletter-modal .modal-content .button {
    display: inline-block;
    padding: 3px 18px;
    margin: 20px 0 40px;
    text-decoration: none;
    font-family: inherit;
    color: #000;
    text-align: center;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    transition: color 250ms, background 250ms, border 250ms;
    width: auto;
    margin: 10px auto 0 auto;
    border-bottom: 0; }
    .newsletter-modal .modal-content .button:hover {
      color: #fff;
      background: #f2f2f2;
      border-color: #f2f2f2; }
    .newsletter-modal .modal-content .button.close {
      opacity: 1;
      display: inline-block;
      width: 10%;
      padding: 0;
      margin: 0;
      position: absolute;
      top: 10px;
      right: 10px; }

/* Featured Video */
.page-home .section-widget-video {
  margin-top: 2em; }

/* News */
.page-home .section-news-list {
  padding-top: 90px; }
  .page-home .section-news-list .article:first-child .footer {
    text-align: left; }

.page-home .section-news-footer .wrap {
  padding-top: 0; }

/* Spotify Embed */
.section-spotify {
  overflow: hidden;
  margin: auto;
  max-width: 780px; }
  .section-spotify .widget-title {
    display: none; }
  .section-spotify .spotify-embed {
    width: 100%; }
    .section-spotify .spotify-embed .wrap {
      padding: 0; }
    .section-spotify .spotify-embed iframe {
      width: 100%; }
  .section-spotify .spotify-figure {
    display: none; }

@media (min-width: 1020px) {
  .section-spotify .spotify-embed {
    float: left;
    width: 300px; }
    .section-spotify .spotify-embed iframe {
      width: 100%; }
  .section-spotify .spotify-figure {
    background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/home/spotifyImg.jpg") no-repeat center/cover;
    display: block;
    float: left;
    width: 453px;
    padding-bottom: 50%; } }

/**
   * Events
   * ======
   *
  */
/* Events Listing */
/* Alternating BG Event Table Full Bleed */
/* Vars */
/* Conditional Button Styles */
/* Basic Button Styles */
/* Vars */
.section-events-list {
  /* Loaded */
  /* Placeholder */ }
  .section-events-list .tickets ul {
    margin: 0;
    padding: 0; }
  .section-events-list .tickets li {
    list-style-type: none; }
  .section-events-list .tickets span {
    display: none; }
  .section-events-list .tickets .ticket-link {
    display: inline-block;
    padding: 3px 18px;
    margin: 20px 0 40px;
    text-decoration: none;
    font-family: inherit;
    color: #000;
    text-align: center;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    transition: color 250ms, background 250ms, border 250ms;
    display: block;
    padding: 8px 20px;
    margin: 0; }
    .section-events-list .tickets .ticket-link:hover {
      color: #fff;
      background: #f2f2f2;
      border-color: #f2f2f2; }
  .section-events-list .tickets .ticket.unavalable a {
    background: transparent;
    border-color: transparent;
    color: rgba(52, 54, 76, 0.15);
    cursor: not-allowed; }
    .section-events-list .tickets .ticket.unavalable a:hover {
      background: transparent;
      border-color: transparent;
      color: rgba(52, 54, 76, 0.15); }
  .section-events-list .tickets .sold-out-ticket {
    margin: 0; }
    .section-events-list .tickets .sold-out-ticket .ticket-link-unavalable {
      display: inline-block;
      padding: 3px 18px;
      margin: 20px 0 40px;
      text-decoration: none;
      font-family: inherit;
      color: #000;
      text-align: center;
      background-color: #f2f2f2;
      border: 1px solid #f2f2f2;
      transition: color 250ms, background 250ms, border 250ms;
      padding: 8px 20px;
      margin: 0;
      background: #ccc;
      border-color: #ccc;
      color: #999;
      cursor: not-allowed; }
      .section-events-list .tickets .sold-out-ticket .ticket-link-unavalable:hover {
        color: #fff;
        background: #f2f2f2;
        border-color: #f2f2f2; }
      .section-events-list .tickets .sold-out-ticket .ticket-link-unavalable:hover {
        background: #ccc;
        border-color: #ccc;
        color: #999; }
  .section-events-list-loaded .tickets .base-ticket-link {
    background: transparent;
    border-color: transparent;
    color: #040404; }
    .section-events-list-loaded .tickets .base-ticket-link:hover {
      background: transparent;
      border-color: transparent;
      color: #6c9cc4; }
  .section-events-list-loaded .tickets .vip-ticket-link {
    background: transparent;
    border-color: transparent;
    color: #040404; }
    .section-events-list-loaded .tickets .vip-ticket-link:hover {
      background: transparent;
      border-color: transparent;
      color: #6c9cc4; }
  .section-events-list-placeholder {
    pointer-events: none; }
    .section-events-list-placeholder .tickets {
      white-space: nowrap; }
      .section-events-list-placeholder .tickets .ticket-link {
        background-color: rgba(0, 0, 0, 0.1);
        border-color: transparent; }

/* Listing */
.section-events-list {
  text-transform: uppercase;
  /* Placeholder */
  /* Bootstrap overrides */ }
  .section-events-list-loaded {
    opacity: 1;
    transition: opacity 500ms; }
    .section-events-list-loaded.ng-hide {
      opacity: 0; }
  .section-events-list.section-empty-list {
    text-align: center; }
    .section-events-list.section-empty-list h1 {
      font-size: 1.2em; }
    .section-events-list.section-empty-list h2 {
      font-size: 1em; }
  .section-events-list thead {
    display: none; }
  .section-events-list tr:nth-child(2n) {
    background: #fff; }
  .section-events-list tr td:not(.tickets) a, .section-events-list tr td:not(.tickets) .appearing-with {
    transition: color 250ms; }
  .section-events-list tr:hover td:not(.tickets) a, .section-events-list tr:hover td:not(.tickets) .appearing-with {
    color: inherit; }
  .section-events-list td {
    float: left;
    display: block;
    width: 100%;
    text-align: center; }
  .section-events-list .title {
    display: none; }
  .section-events-list .appearing-with {
    display: block;
    font-size: 0.8em; }
    .section-events-list .appearing-with:before {
      content: "With: "; }
  .section-events-list .date a {
    color: #6c9cc4;
    font-style: italic;
    font-weight: 800;
    white-space: nowrap; }
  .section-events-list .tickets li {
    display: inline-block; }
  .section-events-list-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-events-list-placeholder .date a, .section-events-list-placeholder .venue a, .section-events-list-placeholder .location a {
    display: block;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-events-list .table > tbody > tr > td {
    padding-top: 0;
    padding-bottom: 0;
    border-top: 0;
    vertical-align: middle; }
    .section-events-list .table > tbody > tr > td:first-child {
      padding-top: 20px; }
    .section-events-list .table > tbody > tr > td:last-child {
      padding-bottom: 20px; }

@media only screen and (min-width: 1020px) {
  .section-events-list {
    overflow-x: hidden; }
    .section-events-list tr:nth-child(2n) td:first-child, .section-events-list tr:nth-child(2n) td:last-child {
      position: relative; }
      .section-events-list tr:nth-child(2n) td:first-child:before, .section-events-list tr:nth-child(2n) td:last-child:before {
        content: '';
        position: absolute;
        top: 0;
        width: 1000px;
        height: 100%;
        background: #fff;
        z-index: -1; }
    .section-events-list tr:nth-child(2n) td:first-child:before {
      left: -1000px; }
    .section-events-list tr:nth-child(2n) td:last-child:before {
      right: -1000px; }
  .section-events-list td {
    float: none;
    display: table-cell;
    width: auto;
    text-align: left; }
  .section-events-list .table > tbody > tr > td {
    padding: 25px 15px; }
  .section-events-list .tickets {
    width: 230px;
    text-align: right; }
    .section-events-list .tickets li:first-child {
      margin-right: 20px; } }

.section-events .table {
  margin: 0; }

.section-events-list {
  font-family: "futura-pt-bold", sans-serif; }
  .section-events-list tr {
    background: #f2f2f2;
    transition: 150ms ease-in; }
    .section-events-list tr:hover span, .section-events-list tr:hover a {
      color: #6c9cc4 !important;
      transition: 150ms ease-in; }
    .section-events-list tr td a:hover {
      color: #6c9cc4; }
    .section-events-list tr .tickets {
      font-style: italic; }
      .section-events-list tr .tickets a {
        position: relative; }
        .section-events-list tr .tickets a:after {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/strike-accent.svg") no-repeat center;
          background-size: 100% 10%;
          opacity: 0;
          pointer-events: none;
          transition: opacity 250ms; }
        .section-events-list tr .tickets a:hover:after {
          opacity: 1; }
        .section-events-list tr .tickets a:after {
          background-size: 100% 15%; }

.section-events-header {
  display: none; }

@media only screen and (min-width: 1020px) {
  .section-events-list tr td:first-child, .section-events-list tr td:last-child {
    position: relative; }
    .section-events-list tr td:first-child:before, .section-events-list tr td:last-child:before {
      content: '';
      position: absolute;
      top: 0;
      width: 1000px;
      height: 100%;
      background: #f2f2f2;
      z-index: -1; }
  .section-events-list tr td:first-child:before {
    left: -1000px; }
  .section-events-list tr td:last-child:before {
    right: -1000px; }
  .section-events-list .tickets {
    width: 300px; } }

/* Events Detail */
/* 1 Col Event Detail */
/* Vars */
/* UI Component */
/**
 ** Map Variables
 */
/**
 ** Map UI Component
 */
.section-map-content {
  max-width: 100%;
  margin: auto; }
  .section-map-content .row {
    position: relative;
    padding: 10px 0;
    margin-left: 0;
    margin-right: 0; }
  .section-map-content .map {
    max-width: 100%;
    height: 300px;
    margin: auto; }
    .section-map-content .map.map-placeholder {
      background-color: rgba(0, 0, 0, 0.5);
      text-align: center; }
      .section-map-content .map.map-placeholder .glyphicon {
        opacity: 0.4;
        font-size: 36px;
        margin-top: calc(150px - 55px); }
      .section-map-content .map.map-placeholder a {
        display: block;
        margin-top: 10px;
        font-size: 12px; }
  .section-map-content .floating-pannel {
    position: absolute;
    top: 5px;
    left: 5px;
    max-width: 100%;
    background-color: #FFFFFF;
    margin: 10px;
    padding: 1px;
    box-shadow: rgba(0, 0, 0, 0.3) 0 1px 4px 1px;
    border-radius: 2px;
    z-index: 2; }
    .section-map-content .floating-pannel .wrapper {
      padding: 10px;
      text-align: left;
      overflow: hidden; }
      .section-map-content .floating-pannel .wrapper .pannel-col {
        float: left; }
        @media screen and (max-width: 400px) {
          .section-map-content .floating-pannel .wrapper .pannel-col:nth-child(1) {
            display: none; } }
        .section-map-content .floating-pannel .wrapper .pannel-col:nth-child(2) {
          margin-left: 20px;
          float: right; }
          @media screen and (max-width: 400px) {
            .section-map-content .floating-pannel .wrapper .pannel-col:nth-child(2) {
              margin-left: 0; } }
      .section-map-content .floating-pannel .wrapper h5, .section-map-content .floating-pannel .wrapper p {
        color: #5B5B5B;
        font-family: 'Roboto', Arial;
        font-size: 12px;
        font-style: normal;
        margin: 0; }
      .section-map-content .floating-pannel .wrapper p {
        margin-top: 6px;
        line-height: 14px; }
        .section-map-content .floating-pannel .wrapper p span:first-child {
          display: block; }
      .section-map-content .floating-pannel .wrapper a {
        font-family: 'Roboto', Arial;
        display: inline-block;
        font-style: normal;
        font-size: 11px;
        color: #3a84df;
        margin-top: 6px; }
        .section-map-content .floating-pannel .wrapper a:hover {
          text-decoration: underline; }
        .section-map-content .floating-pannel .wrapper a.directions {
          width: 55px;
          text-align: center;
          margin: 0 auto; }
        .section-map-content .floating-pannel .wrapper a .direction-icon {
          font-family: 'Roboto', Arial;
          background-image: url("data:image/png;base64,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");
          background-position: 0 0;
          background-size: 70px 210px;
          width: 22px;
          height: 22px;
          overflow: hidden;
          margin: 0 auto 4px auto; }

/* Detail */
.section-events-detail {
  /* Placeholder */ }
  .section-events-detail-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-events-detail-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-events-detail .wrap {
    max-width: 720px;
    margin: 0 auto; }
  .section-events-detail .figure {
    max-width: 560px;
    margin: 0 auto 50px;
    text-align: center; }
    .section-events-detail .figure img {
      max-width: 100%;
      height: auto; }
    .section-events-detail .figure.figure-bottom {
      display: none; }
  .section-events-detail .header {
    text-align: center; }
    .section-events-detail .header .meta, .section-events-detail .header .location {
      display: none; }
    .section-events-detail .header .title-content > * {
      margin: 0; }
    .section-events-detail .header .title-content .date {
      margin-top: .5em; }
    .section-events-detail .header .title-content .appearing-with {
      display: block;
      margin: 1em 0 0; }
      .section-events-detail .header .title-content .appearing-with:before {
        content: "With: "; }
  .section-events-detail .content {
    margin: 2em 0 0; }
  .section-events-detail .address {
    margin-top: 1.5em;
    text-align: center;
    font-style: italic;
    opacity: 0.8; }
    .section-events-detail .address dl {
      margin: 0; }
      .section-events-detail .address dl .map-dd {
        transition: all linear 500ms;
        opacity: 1;
        height: 100%; }
        .section-events-detail .address dl .map-dd.ng-hide {
          height: 0;
          opacity: 0; }
      .section-events-detail .address dl .view-map {
        background: none;
        padding: 5px 0 0 0;
        margin: 0 auto;
        display: block;
        clear: both; }
  .section-events-detail .tickets {
    text-align: center; }
  .section-events-detail .ticket-link {
    display: inline-block;
    padding: 3px 18px;
    margin: 20px 0 40px;
    text-decoration: none;
    font-family: inherit;
    color: #000;
    text-align: center;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    transition: color 250ms, background 250ms, border 250ms; }
    .section-events-detail .ticket-link:hover {
      color: #fff;
      background: #f2f2f2;
      border-color: #f2f2f2; }
  .section-events-detail .footer {
    text-align: center; }
    .section-events-detail .footer .meta-item-author, .section-events-detail .footer .meta-item-date, .section-events-detail .footer .meta-item-socials {
      display: none; }
    .section-events-detail .footer a {
      border-bottom: 1px solid;
      font-size: 0.8em;
      font-weight: 800;
      text-transform: uppercase; }
  .section-events-detail-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-events-detail-placeholder .figure .image {
    display: block;
    width: 100%;
    height: 0;
    max-width: 560px;
    padding-bottom: 60%;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-events-detail-placeholder .meta, .section-events-detail-placeholder .title-content *, .section-events-detail-placeholder .address dd, .section-events-detail-placeholder .content .inner {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-events-detail-placeholder .ticket-link {
    background-color: rgba(0, 0, 0, 0.1);
    border-color: transparent; }

.section-events-detail-header {
  display: none; }

.section-events-detail {
  background: #f2f2f2;
  margin: 40px auto; }
  .section-events-detail .header .title, .section-events-detail .header .venue {
    font-family: "futura-pt-bold", sans-serif;
    font-style: italic;
    text-transform: uppercase; }
  .section-events-detail .header .date {
    text-transform: uppercase;
    font-size: 1.2em; }
  .section-events-detail .wrap {
    padding: 2em; }
  .section-events-detail .section-map-content {
    margin: 2em 0; }
    .section-events-detail .section-map-content .wrap {
      background: #e5e5e5;
      padding: 0.5em 1.5em; }
  .section-events-detail .ticket-link {
    background: #34364c;
    color: #fff;
    font-style: italic;
    font-family: "futura-pt-bold", sans-serif;
    text-transform: uppercase;
    padding: 0.5em 1em; }
    .section-events-detail .ticket-link:hover {
      background: #e5e5e5;
      color: #34364c; }
  .section-events-detail a {
    color: #34364c; }
    .section-events-detail a:hover {
      color: #6c9cc4; }

/**
 * News
 * ====
 *
*/
/* News Listing */
/* 3 Col Flexbox Grid News Listing */
/* Vars */
/* Listing */
.section-news-list {
  text-align: center;
  /* Placeholder */ }
  .section-news-list:before, .section-news-list:after {
    content: '';
    display: table;
    clear: both; }
  .section-news-list-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-news-list-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-news-list .wrap {
    display: flex;
    flex-wrap: wrap; }
  .section-news-list .article {
    position: relative;
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: 100%;
    margin: 0 0 18px 0;
    text-align: left;
    overflow: hidden;
    background: #fff; }
    .section-news-list .article .meta-item-author {
      display: none; }
  .section-news-list .figure {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 65%; }
    .section-news-list .figure-bottom, .section-news-list .figure img {
      display: none; }
    .section-news-list .figure .image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: no-repeat center/cover; }
  .section-news-list .meta-item {
    margin: 0; }
    .section-news-list .meta-item-socials {
      display: none; }
  .section-news-list .header, .section-news-list .content {
    padding: 0 10px; }
  .section-news-list .header {
    padding-top: 30px;
    padding-bottom: 10px; }
    .section-news-list .header a {
      color: #000; }
      .section-news-list .header a:hover {
        color: inherit; }
    .section-news-list .header .meta {
      padding-bottom: 16px;
      font-style: italic;
      font-size: 0.8em;
      text-transform: uppercase;
      opacity: 0.8; }
    .section-news-list .header .meta-bottom, .section-news-list .header .meta-key-date, .section-news-list .header .meta-item-more {
      display: none; }
  .section-news-list .title {
    margin: 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .section-news-list .abstract-contents {
    min-height: 1.4em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .section-news-list .footer {
    padding-top: 40px; }
    .section-news-list .footer .meta-item-date {
      display: none; }
    .section-news-list .footer .read-more {
      display: inline-block;
      padding: 3px 18px;
      margin: 20px 0 40px;
      text-decoration: none;
      font-family: inherit;
      color: #000;
      text-align: center;
      background-color: #f2f2f2;
      border: 1px solid #f2f2f2;
      transition: color 250ms, background 250ms, border 250ms;
      display: block;
      margin: 0; }
      .section-news-list .footer .read-more:hover {
        color: #fff;
        background: #f2f2f2;
        border-color: #f2f2f2; }
  .section-news-list-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-news-list-placeholder .article {
    background-color: transparent; }
  .section-news-list-placeholder .figure .image, .section-news-list-placeholder .meta-value, .section-news-list-placeholder .title, .section-news-list-placeholder .abstract-contents, .section-news-list-placeholder .footer .read-more {
    background-color: rgba(0, 0, 0, 0.1);
    border-color: transparent; }
  .section-news-list-placeholder .footer .read-more:hover {
    background-color: rgba(0, 0, 0, 0.1);
    border-color: transparent; }
  .section-news-list-placeholder .meta-value-more {
    background-color: transparent; }
  .section-news-list .article:nth-child(1n+1) .no-figure .image {
    background-image: url("//static.wonderfulunion.net/groundctrl/clients/beautiful-trauma/site/2017/global/placeholder.jpg"); }

@media only screen and (min-width: 580px) {
  .section-news-list {
    /* Fallback */ }
    .section-news-list .article {
      flex-basis: calc(50% - 9px);
      margin: 0 18px 18px 0; }
      .section-news-list .article:nth-child(2n+2) {
        margin-right: 0; }
    .section-news-list .header, .section-news-list .content {
      padding-right: 15px;
      padding-left: 15px; }
    .no-flexbox .section-news-list .wrap {
      display: block; }
    .no-flexbox .section-news-list .article {
      float: left;
      width: calc(50% - 9px); }
      .no-flexbox .section-news-list .article:nth-child(2n+3) {
        clear: left; } }

@media only screen and (min-width: 992px) {
  .section-news-list {
    /* Fallback */ }
    .section-news-list .article {
      flex-basis: calc(33.3% - 12px); }
      .section-news-list .article:nth-child(3n+1) {
        clear: left; }
      .section-news-list .article:nth-child(2n+2) {
        margin-right: 18px; }
      .section-news-list .article:nth-child(3n+3) {
        margin-right: 0; }
    .section-news-list .header, .section-news-list .content {
      padding-right: 25px;
      padding-left: 25px; }
    .no-flexbox .section-news-list .article {
      float: left;
      width: calc(33.3% - 12px); }
      .no-flexbox .section-news-list .article:nth-child(2n+3) {
        clear: none; }
      .no-flexbox .section-news-list .article:nth-child(3n+4) {
        clear: left; } }

/* Fade Truncation */
/* Featured Article */
.section-news-list-header {
  display: none; }

.section-news-list {
  font-family: "futura-pt-bold", sans-serif;
  padding-top: 2%; }
  .section-news-list .header .title:hover {
    color: #6c9cc4; }
  .section-news-list .footer .read-more {
    position: relative;
    padding: 25px 0;
    font-weight: 400;
    font-size: 1em;
    margin-top: 2em;
    text-transform: uppercase;
    font-style: italic; }
    .section-news-list .footer .read-more:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("//static.wonderfulunion.net/groundctrl/clients/ryancabrera/site/global/strike-accent.svg") no-repeat center;
      background-size: 100% 10%;
      opacity: 0;
      pointer-events: none;
      transition: opacity 250ms; }
    .section-news-list .footer .read-more:hover:after {
      opacity: 1; }
    .section-news-list .footer .read-more:after {
      background-size: 20% 100%; }
  @media only screen and (min-width: 580px) {
    .section-news-list {
      /* Fallback */ }
      .section-news-list .article:first-child {
        flex-grow: 0;
        flex-shrink: 1;
        flex-basis: 100%;
        margin-bottom: 60px;
        margin-right: 0;
        border-color: transparent; }
      .section-news-list .article:nth-child(2n+2) {
        margin-right: 18px; }
      .section-news-list .article:nth-child(2n+3) {
        margin-right: 0; }
      .no-flexbox .section-news-list .wrap {
        display: block; }
      .no-flexbox .section-news-list .article {
        float: left;
        width: calc(50% - 9px); }
        .no-flexbox .section-news-list .article:first-child {
          width: 100%; }
        .no-flexbox .section-news-list .article:nth-child(2n+3) {
          clear: none; }
        .no-flexbox .section-news-list .article:nth-child(2n+4) {
          clear: left; } }
  @media only screen and (min-width: 800px) {
    .section-news-list .article {
      position: relative;
      flex-basis: calc(50% - 9px);
      margin: 0 18px 18px 0; }
      .section-news-list .article .figure {
        overflow: hidden; }
        .section-news-list .article .figure .image {
          transition: transform 350ms; }
          .section-news-list .article .figure .image:before, .section-news-list .article .figure .image:after {
            opacity: 0; }
          .section-news-list .article .figure .image:before {
            content: '';
            background: rgba(52, 54, 76, 0.75);
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            transition: opacity 450ms; }
          .section-news-list .article .figure .image:after {
            content: 'Read More';
            color: #fff;
            font-style: italic;
            font-size: 1.5em;
            position: absolute;
            top: 50%;
            left: 50%;
            text-transform: uppercase;
            transform: translate(-50%, -50%);
            transition: opacity 450ms; }
          .section-news-list .article .figure .image:hover {
            transform: scale(1.1);
            transition: transform 350ms; }
            .section-news-list .article .figure .image:hover:before, .section-news-list .article .figure .image:hover:after {
              opacity: 1;
              transition: opacity 450ms; }
      .section-news-list .article:first-child {
        flex-basis: 100%;
        margin-right: 0;
        outline-color: transparent;
        overflow: hidden; }
        .section-news-list .article:first-child .figure, .section-news-list .article:first-child .header, .section-news-list .article:first-child .content, .section-news-list .article:first-child .footer {
          float: left;
          width: 50%; }
        .section-news-list .article:first-child .header, .section-news-list .article:first-child .content, .section-news-list .article:first-child .footer {
          float: right;
          clear: right;
          padding-right: 90px;
          padding-left: 90px; }
        .section-news-list .article:first-child .figure {
          position: absolute;
          top: 0;
          left: 0;
          width: 49%;
          height: 100%;
          padding-bottom: 0;
          overflow: hidden; }
        .section-news-list .article:first-child .header {
          padding-top: 90px; }
          .section-news-list .article:first-child .header .meta {
            font-size: .9em;
            font-style: italic;
            text-align: left; }
          .section-news-list .article:first-child .header .title {
            font-style: italic;
            padding-bottom: 18px;
            line-height: 1.1;
            text-transform: capitalize;
            white-space: normal; }
            .section-news-list .article:first-child .header .title:hover {
              color: #6c9cc4; }
        .section-news-list .article:first-child .title {
          font-size: 28px; }
        .section-news-list .article:first-child .abstract {
          min-height: 60px;
          max-height: 60px; }
        .section-news-list .article:first-child .abstract-contents {
          white-space: normal; }
        .section-news-list .article:first-child .footer {
          position: relative;
          padding-top: 0;
          padding-bottom: 90px;
          background-color: #fff;
          text-align: center; }
          .section-news-list .article:first-child .footer:after {
            content: '';
            position: absolute;
            top: -75px;
            left: 0;
            width: 100%;
            height: 75px;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, #fff 100%); } }
  @media only screen and (min-width: 992px) {
    .section-news-list {
      /* Fallback */ }
      .section-news-list .article {
        flex-basis: calc(33.3333% - 12px); }
        .section-news-list .article:nth-child(3n+1) {
          clear: left; }
        .section-news-list .article:nth-child(2n+3), .section-news-list .article:nth-child(3n+3) {
          margin-right: 18px; }
        .section-news-list .article:nth-child(3n+4) {
          margin-right: 0; }
      .no-flexbox .section-news-list .article {
        float: left;
        width: calc(33.3333% - 12px); }
        .no-flexbox .section-news-list .article:nth-child(2n+4) {
          clear: none; }
        .no-flexbox .section-news-list .article:nth-child(3n+5) {
          clear: left; } }
  .section-news-list .article {
    outline: 1px solid #f2f2f2; }
  .section-news-list .header .meta {
    padding-bottom: 10px;
    font-size: 0.9em;
    font-style: italic;
    text-align: left;
    opacity: 1; }
  .section-news-list .title {
    font-size: 24px; }
  .section-news-list .figure .image {
    background-color: #f2f2f2; }
  .section-news-list .footer {
    padding: 40px 25px 20px; }
    .section-news-list .footer .read-more {
      padding: 25px;
      color: #040404;
      background: transparent;
      border: 0;
      border-top: 1px solid #6c9cc4;
      font-weight: 400;
      font-size: 0.8em; }
      .section-news-list .footer .read-more:hover {
        color: #6c9cc4;
        background: transparent;
        border-top: 1px solid #6c9cc4; }
  .section-news-list-placeholder .article {
    outline: 0; }
  .section-news-list-placeholder .figure .image {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-news-list-placeholder .header .meta {
    opacity: 1; }
  .section-news-list-placeholder .article:first-child .header .meta, .section-news-list-placeholder .article:first-child .footer .meta {
    border-top: transparent;
    border-bottom: transparent; }
  .section-news-list-placeholder .abstract-contents {
    min-height: 130px; }

/* News Detail */
/* 1 Col News Detail */
/* Vars */
/* Detail */
.section-news-detail {
  /* Placeholder */ }
  .section-news-detail-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-news-detail-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-news-detail .wrap {
    max-width: 720px;
    margin: 0 auto; }
  .section-news-detail .meta {
    margin: 40px 0; }
    .section-news-detail .meta dl {
      margin: 0; }
    .section-news-detail .meta-item-socials {
      display: none; }
  .section-news-detail .figure {
    max-width: 560px;
    margin: 0 auto;
    text-align: center; }
    .section-news-detail .figure .image {
      background: none !important; }
    .section-news-detail .figure img {
      max-width: 100%; }
  .section-news-detail .header {
    text-align: center; }
    .section-news-detail .header .meta {
      font-style: italic;
      font-size: 0.8em;
      text-transform: uppercase;
      opacity: 0.8; }
      .section-news-detail .header .meta .meta-item-author, .section-news-detail .header .meta .meta-item-back, .section-news-detail .header .meta .meta-key-date, .section-news-detail .header .meta .meta-key-tags {
        display: none; }
    .section-news-detail .header .title {
      margin: 40px 0; }
    .section-news-detail .header .meta-bottom {
      display: none; }
  .section-news-detail .content img {
    max-width: 100%; }
  .section-news-detail .footer {
    text-align: center; }
    .section-news-detail .footer .meta-item-author, .section-news-detail .footer .meta-item-date, .section-news-detail .footer .meta-item-tags {
      display: none; }
    .section-news-detail .footer a {
      border-bottom: 1px solid;
      font-size: 0.8em;
      font-weight: 800;
      text-transform: uppercase; }
  .section-news-detail-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-news-detail-placeholder .figure .image {
    display: block;
    width: 100%;
    height: 0;
    max-width: 560px;
    padding-bottom: 60%;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-news-detail-placeholder .meta, .section-news-detail-placeholder .title {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-news-detail-placeholder .content .inner {
    padding-bottom: 30%;
    background-color: rgba(0, 0, 0, 0.1); }

.section-news-detail-header {
  display: none; }

.section-news-detail {
  background: #f2f2f2;
  margin: 40px auto; }
  .section-news-detail .header .title {
    font-family: "futura-pt-bold", sans-serif;
    font-style: italic; }
  .section-news-detail .wrap {
    padding: 2em; }
  .section-news-detail .figure {
    max-width: 100%;
    margin: auto; }
  .section-news-detail .video {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    width: 100%; }
    .section-news-detail .video iframe {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%; }
  .section-news-detail .meta-value-back a {
    font-size: 1em; }
  .section-news-detail .content a {
    color: #6c9cc4;
    border-bottom: 1px solid #6c9cc4;
    font-weight: 600;
    transition: color 250ms, border-color 250ms; }
    .section-news-detail .content a:hover {
      color: #040404;
      border-color: #040404;
      transition: color 250ms, border-color 250ms; }

/**
 * Media
 * ====
 *
*/
/* Media Listing */
/* 3 Col Media Listing */
/* Vars */
/* Listing */
.section-media-list {
  /* Loaded */
  /* Placeholder */ }
  .section-media-list-loaded.ng-hide-remove {
    opacity: 0;
    transition: opacity 500ms; }
  .section-media-list-loaded.ng-hide-remove-active {
    opacity: 1; }
  .section-media-list ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
  .section-media-list .gallery-list:before, .section-media-list .gallery-list:after, .section-media-list .asset-list:before, .section-media-list .asset-list:after {
    display: table;
    content: " "; }
  .section-media-list .gallery-list:after, .section-media-list .asset-list:after {
    clear: both; }
  .section-media-list .gallery-item, .section-media-list .asset-item {
    position: relative;
    float: left;
    width: 100%;
    height: 0;
    margin: 0 0 18px 0;
    padding-bottom: 78%;
    overflow: hidden; }
    .section-media-list .gallery-item.no-image, .section-media-list .asset-item.no-image {
      background-image: url(none);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover; }
  .section-media-list .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat top center/cover; }
    .section-media-list .image img {
      display: none; }
  .section-media-list .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 10px;
    background: rgba(52, 54, 76, 0.9);
    opacity: 0;
    text-align: center;
    transition: opacity 250ms; }
    .section-media-list .header .title {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0;
      font-size: 1em;
      text-transform: uppercase; }
      .section-media-list .header .title.no-title:before {
        content: 'View';
        color: #fff; }
      .section-media-list .header .title a {
        color: #fff; }
    .section-media-list .header .meta {
      display: none; }
  .section-media-list-loaded .item:hover .header {
    opacity: 1; }
  .section-media-list-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-media-list-placeholder .item {
    background-color: rgba(0, 0, 0, 0.1); }

.section-media-footer a {
  border-bottom: 1px solid;
  font-size: 0.8em;
  font-weight: 800;
  text-transform: uppercase; }

/* Show hover if touch device */
.touchevents .section-media-list .item .header {
  opacity: 1; }

@media only screen and (min-width: 330px) {
  .section-media-list .gallery-item, .section-media-list .asset-item {
    float: left;
    margin: 0 18px 18px 0;
    width: calc(50% - 9px);
    padding-bottom: 38%; }
    .section-media-list .gallery-item:nth-child(2n+2), .section-media-list .asset-item:nth-child(2n+2) {
      margin-right: 0; } }

@media only screen and (min-width: 768px) {
  .section-media-list .gallery-item, .section-media-list .asset-item {
    width: calc(33.33% - 12px);
    padding-bottom: 25%; }
    .section-media-list .gallery-item:nth-child(2n+2), .section-media-list .asset-item:nth-child(2n+2) {
      margin-right: 18px; }
    .section-media-list .gallery-item:nth-child(3n+3), .section-media-list .asset-item:nth-child(3n+3) {
      margin-right: 0; } }

@media only screen and (min-width: 815px) {
  .section-media-list .header .title {
    font-size: 1.4em; } }

.section-media-header {
  display: none; }

.section-media-galleries {
  margin: 1em auto; }

.section-media-list .image {
  transition: transform 250ms ease-in; }

.section-media-list .header .title {
  font-family: "futura-pt-bold", sans-serif;
  font-style: italic; }

.section-media-asset .header, .section-media-asset .content {
  background: #f2f2f2;
  margin: 0 !important; }
  .section-media-asset .header .title, .section-media-asset .content .title {
    font-size: 24px;
    text-transform: uppercase;
    padding: 1em 1em 0.5em;
    margin-bottom: 0; }

.section-media-asset .content {
  padding-top: 0;
  padding-bottom: 2em; }

.section-media-asset .footer {
  margin-top: 20px; }

.section-media-list .item, .section-media-list-loaded .item {
  transition: transform 200ms; }
  .section-media-list .item:hover .figure .image, .section-media-list .item:hover .header, .section-media-list-loaded .item:hover .figure .image, .section-media-list-loaded .item:hover .header {
    transform: scale(1.1);
    transition: transform 200ms; }

.section-media-footer a {
  font-size: 1em; }

/* Media Detail */
/* 1 Col Media Detail */
/* Vars */
/* Detail */
.section-media-asset {
  /* Placeholder */ }
  .section-media-asset-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-media-asset-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-media-asset-loaded a {
    border-bottom: 1px solid;
    font-size: 0.8em;
    font-weight: 800;
    text-transform: uppercase; }
  .section-media-asset .figure, .section-media-asset .imbed {
    margin-bottom: 40px;
    text-align: center; }
  .section-media-asset .imbed .inner {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    /* 16:9 */ }
  .section-media-asset .imbed iframe, .section-media-asset .imbed video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .section-media-asset .figure img {
    max-width: 100%;
    height: auto; }
  .section-media-asset .header {
    margin: 20px 0;
    text-align: center; }
    .section-media-asset .header .meta {
      display: none; }
  .section-media-asset .content {
    margin: 20px 0;
    text-align: center; }
  .section-media-asset .footer {
    margin-bottom: 40px;
    text-align: center; }
  .section-media-asset .meta-item-socials {
    display: none; }
  .section-media-asset-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-media-asset-placeholder .image {
    display: block;
    width: 100%;
    height: 0;
    max-width: 800px;
    padding-bottom: 40%;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-media-asset-placeholder .imbed {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-media-asset-placeholder .title, .section-media-asset-placeholder .content .inner {
    max-width: 600px;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.1); }

/**
 * Releases
 * ====
 *
*/
/* Releases Listing */
/* Releases 3x grid */
/* Vars */
/* Listing */
.section-releases-list {
  /* Loaded */
  /* Placeholder */ }
  .section-releases-list-loaded.ng-hide-remove {
    opacity: 0;
    transition: opacity 500ms; }
  .section-releases-list-loaded.ng-hide-remove-active {
    opacity: 1; }
  .section-releases-list .releases-list {
    margin: 0;
    padding: 0; }
    .section-releases-list .releases-list:before, .section-releases-list .releases-list:after {
      display: table;
      content: " "; }
    .section-releases-list .releases-list:after {
      clear: both; }
  .section-releases-list .release {
    position: relative;
    float: left;
    width: 100%;
    height: 0;
    margin: 0 0 18px 0;
    padding-bottom: 100%;
    overflow: hidden; }
    .section-releases-list .release.release-cursor {
      cursor: default; }
    .section-releases-list .release .content {
      display: none; }
    .section-releases-list .release.show-album-tracks {
      width: calc(100%  - 18px);
      cursor: auto; }
      .section-releases-list .release.show-album-tracks .content {
        display: block; }
      .section-releases-list .release.show-album-tracks:hover .header {
        opacity: 1.0; }
      .section-releases-list .release.show-album-tracks .header, .section-releases-list .release.show-album-tracks .image {
        width: calc(33.33% - 18px); }
        .section-releases-list .release.show-album-tracks .header .title span.view-tracks-open, .section-releases-list .release.show-album-tracks .image .title span.view-tracks-open {
          display: none; }
        .section-releases-list .release.show-album-tracks .header .title span.view-tracks-close, .section-releases-list .release.show-album-tracks .image .title span.view-tracks-close {
          display: block; }
      .section-releases-list .release.show-album-tracks #track-list {
        position: absolute;
        top: 0;
        left: calc(33.33% - 18px);
        width: 66.67%;
        height: 100%;
        padding: 18px;
        overflow: scroll; }
        .section-releases-list .release.show-album-tracks #track-list h3 {
          margin-top: 0; }
      .section-releases-list .release.show-album-tracks .table {
        width: calc(66% - 6px);
        margin-left: calc(33% + 6px); }
  .section-releases-list .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover; }
    .section-releases-list .image img {
      display: none; }
  .section-releases-list .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 10px;
    background: rgba(52, 54, 76, 0.9);
    opacity: 0;
    text-align: center;
    transition: opacity 250ms; }
    .section-releases-list .header .title {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0;
      font-size: 1.4em;
      text-transform: uppercase; }
      .section-releases-list .header .title a {
        color: #fff; }
      .section-releases-list .header .title span {
        display: block;
        padding-top: 10px;
        color: #fff; }
        .section-releases-list .header .title span.view-tracks-close {
          display: none; }
    .section-releases-list .header .meta {
      display: none; }
  .section-releases-list-loaded .release:hover .header {
    opacity: 1; }
  .section-releases-list-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-releases-list-placeholder .release {
    background-color: rgba(0, 0, 0, 0.1); }

/* Show hover if touch device */
.touchevents .section-releases-list .release .header {
  opacity: 1; }

@media only screen and (min-width: 330px) {
  .section-releases-list .album-tracks .release {
    width: calc(50%  - 18px); }
    .section-releases-list .album-tracks .release.show-album-tracks {
      width: calc(100%  - 0px); }
      .section-releases-list .album-tracks .release.show-album-tracks .header, .section-releases-list .album-tracks .release.show-album-tracks .image {
        width: calc(50% - 18px); }
    .section-releases-list .album-tracks .release:nth-child(2n+2) {
      margin-right: 18px;
      margin-left: 0; }
    .section-releases-list .album-tracks .release:nth-child(3n+3) {
      margin-right: 18px;
      margin-left: 0; }
    .section-releases-list .album-tracks .release #track-list {
      width: 50%;
      left: 50%; }
  .section-releases-list .release {
    float: left;
    margin: 0 18px 18px 0;
    width: calc(50% - 9px);
    padding-bottom: 49%; }
    .section-releases-list .release:nth-child(2n+2) {
      margin-right: 0; } }

@media only screen and (min-width: 992px) {
  .section-releases-list .album-tracks .release {
    width: calc(33%  - 18px); }
    .section-releases-list .album-tracks .release.show-album-tracks {
      width: calc(100%  - 18px); }
      .section-releases-list .album-tracks .release.show-album-tracks .header, .section-releases-list .album-tracks .release.show-album-tracks .image {
        width: calc(33.33% - 18px); }
    .section-releases-list .album-tracks .release:nth-child(2n+2) {
      margin-right: 18px; }
    .section-releases-list .album-tracks .release:nth-child(3n+3) {
      margin-right: 18px; }
    .section-releases-list .album-tracks .release #track-list {
      left: calc(33.33% - 18px);
      width: 66.67%; }
  .section-releases-list .release {
    width: calc(33.33% - 12px);
    padding-bottom: 32%; }
    .section-releases-list .release:nth-child(2n+2) {
      margin-right: 18px; }
    .section-releases-list .release:nth-child(3n+3) {
      margin-right: 0; } }

.section-releases-list {
  margin-top: 2em; }
  .section-releases-list-header {
    display: none; }
  .section-releases-list .header .title {
    font-weight: 600; }
  .section-releases-list-loaded .release .figure .image, .section-releases-list-loaded .release .header {
    transition: transform 200ms; }
  .section-releases-list-loaded .release:hover .figure .image, .section-releases-list-loaded .release:hover .header {
    transform: scale(1.1);
    transition: transform 200ms; }

/* Releases Detail */
/* 2 Col Release Detail */
/* Vars */
/* Detail */
.section-releases-detail {
  /* Placeholder */ }
  .section-releases-detail-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-releases-detail-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-releases-detail .release:before, .section-releases-detail .release:after {
    display: table;
    content: " "; }
  .section-releases-detail .release:after {
    clear: both; }
  .section-releases-detail .figure {
    max-width: 300px;
    margin: 0 auto 20px; }
    .section-releases-detail .figure-bottom {
      display: none; }
    .section-releases-detail .figure img {
      max-width: 100%; }
  .section-releases-detail .content thead {
    display: none; }
  .section-releases-detail .content td {
    vertical-align: middle;
    border-color: inherit; }
  .section-releases-detail .content .track-preview {
    width: 45px; }
    .section-releases-detail .content .track-preview-content {
      position: relative; }
    .section-releases-detail .content .track-preview.no-preview {
      width: 0;
      padding: 0; }
    .section-releases-detail .content .track-preview a {
      display: block;
      width: 1em;
      height: 1em; }
    .section-releases-detail .content .track-preview .glyphicon {
      position: absolute;
      top: 0;
      left: 0; }
  .section-releases-detail .content .track-duration {
    text-align: right; }
  .section-releases-detail .content .track-lyrics {
    width: 80px; }
    .section-releases-detail .content .track-lyrics.no-lyrics {
      width: 0;
      padding: 0; }
    .section-releases-detail .content .track-lyrics .show-lyrics-btn {
      background: transparent;
      text-transform: uppercase;
      font-style: italic;
      font-size: 0.7em;
      opacity: 0.8; }
    .section-releases-detail .content .track-lyrics .modal, .section-releases-detail .content .track-lyrics .modal-title {
      color: #000; }
  .section-releases-detail .header .meta {
    display: none; }
  .section-releases-detail .header .title {
    margin-top: 0; }
  .section-releases-detail .footer {
    margin-top: 20px; }
  .section-releases-detail dl {
    margin: 0; }
  .section-releases-detail dt, .section-releases-detail dd {
    display: inline-block;
    font-weight: 400; }
  .section-releases-detail .meta-item-release-date, .section-releases-detail .meta-item-publisher {
    font-style: italic;
    font-size: 0.9em;
    opacity: 0.8; }
  .section-releases-detail .meta-item-release-type, .section-releases-detail .meta-key-links, .section-releases-detail .meta-item-socials, .section-releases-detail .meta-item-description, .section-releases-detail .meta-item-liner-notes {
    display: none; }
  .section-releases-detail .meta-item-back {
    margin-top: 40px;
    text-align: center; }
  .section-releases-detail .meta-item-release-description .release-details-btn, .section-releases-detail .meta-item-release-liner-notes .release-details-btn {
    background: transparent;
    font-style: italic;
    font-size: 0.9em;
    opacity: 0.8;
    padding: 0; }
  .section-releases-detail-loaded .meta-item-back a {
    border-bottom: 1px solid;
    font-size: 0.8em;
    font-weight: 800;
    text-transform: uppercase; }
  .section-releases-detail-loaded .meta-item-links dd {
    display: block; }
  .section-releases-detail-loaded .meta-item-links a {
    display: inline-block;
    padding: 3px 18px;
    margin: 20px 0 40px;
    text-decoration: none;
    font-family: inherit;
    color: #000;
    text-align: center;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    transition: color 250ms, background 250ms, border 250ms;
    display: block;
    margin: 10px 0; }
    .section-releases-detail-loaded .meta-item-links a:hover {
      color: #fff;
      background: #f2f2f2;
      border-color: #f2f2f2; }
  .section-releases-detail-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-releases-detail-placeholder .title {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-releases-detail-placeholder .content td span {
    display: block;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-releases-detail-placeholder .figure .image {
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-releases-detail-placeholder .meta dl {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-releases-detail-placeholder .footer .meta-item-links a, .section-releases-detail-placeholder .footer .meta-item-links a:hover {
    background-color: transparent;
    border-color: transparent; }

@media only screen and (min-width: 700px) {
  .section-releases-detail .figure {
    max-width: none; }
  .section-releases-detail .figure, .section-releases-detail .footer {
    float: left;
    clear: left;
    width: 30%;
    margin-bottom: 0; }
  .section-releases-detail .header, .section-releases-detail .content {
    float: right;
    width: calc(70% - 21px);
    margin-left: 21px; } }

.section-releases-detail {
  margin-top: 2em; }
  .section-releases-detail-header {
    display: none; }
  .section-releases-detail .header .title {
    font-weight: 600; }
  .section-releases-detail .content table tr {
    background: #f2f2f2; }
    .section-releases-detail .content table tr:nth-child(2n) {
      background: transparent; }
  .section-releases-detail .content table td {
    letter-spacing: 0.05em;
    padding: 0.5em;
    text-transform: uppercase; }
  .section-releases-detail .content .track-preview a:hover {
    color: #6c9cc4; }
  .section-releases-detail .footer .meta-item-back {
    font-size: 1.2em;
    margin: 2em 0; }
  .section-releases-detail .footer .meta-item-links a {
    padding: 0.5em 1em;
    transition: background 250ms ease-in, color 250ms ease-in; }
    .section-releases-detail .footer .meta-item-links a:hover {
      background: #6c9cc4;
      color: #f2f2f2;
      transition: background 250ms ease-in, color 250ms ease-in; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3RoZW1lLWltcG9ydC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3ZhcmlhYmxlcy92YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hdmF0YXIvYXZhdGFyLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvbWl4aW5zL21peGlucy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2dsb2JhbHMvZ2xvYmFscy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3N0b3JlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvbWl4aW4vZmxhZ2VkLXByb2R1Y3QtbGlzdGluZy1taXhpbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL21peGluL2dlbmVyYWwtcHJvZHVjdC1saXN0aW5nLW1peGluLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvZ2xvYmFsL3N0b3JlLWdsb2JhbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL2JpbGxpbmcvMi1jb2wtYmlsbGluZy1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2FydC9jYXJ0LXRhYmxlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2F0ZWdvcmllcy8zeC1jYXRlZ29yaWVzLWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9jYXRlZ29yaWVzL2NhdGVnb3JpZXMtbmF2LWxpc3Quc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9jYXRlZ29yeS8zLWNvbC1jYXRlZ29yeS1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvb3JkZXIvZXh0cmEvMS1jb2wtb3JkZXItZXh0cmEtbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL29yZGVyL3BheW1lbnQvMS1jb2wtb3JkZXItcGF5bWVudC10YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL29yZGVyL3dpbGxjYWxsLzEtY29sLW9yZGVyLXdpbGwtY2FsbC1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcGFydGlhbHMvYXNpZGUvMS1jb2wtYXNpZGUuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9wYXJ0aWFscy9tZXRhL21ldGEtcm93LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcGFydGlhbHMvcHJvZ3Jlc3MvcHJvZ3Jlc3MtaW5kaWNhdG9yLXJvdy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3Byb2R1Y3QvZGV0YWlsLzItY29sLXByb2R1Y3QtZGV0YWlsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcHJvZHVjdC9saXN0aW5nLzItY29sLXByb2R1Y3QtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3Byb2R1Y3QvbGlzdGluZy8zLWNvbC1wcm9kdWN0LWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9zaGlwcGluZy8yLWNvbC1zaGlwcGluZy1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9hY2NvdW50LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9nbG9iYWwvYWNjb3VudC1nbG9iYWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L2FkZHJlc3MvMi1jb2wtYWRkcmVzcy1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L2Rhc2hib2FyZC8yLWNvbC1hY2NvdW50LWRhc2hib2FyZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvbGlua2VkLWFjY291bnQvMi1jb2wtbGlua2VkLWFjY291bnQtZGFzaGJvYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9tYW5hZ2UtYWNjb3VudC8yLWNvbC1tYW5hZ2UtcHJvZmlsZS1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L21hbmFnZS1hdmF0YXIvMi1jb2wtYXZhdGFyLWRhc2hib2FyZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvbm90aWZpY2F0aW9ucy8yLWNvbC1tYW5hZ2Utbm90aWZpY2F0aW9ucy1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L29yZGVycy9kZXRhaWwvbXVsdGktcm93LW9yZGVyLWRldGFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvb3JkZXJzL2xpc3RpbmcvMi1jb2wtb3JkZXItbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvcGFydGlhbHMvbmF2aWdhdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2hlYWRlci9oZWFkZXIuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9mb290ZXIvZm9vdGVyLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvaG9tZS9ob21lLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvZnVsbC13aWR0aC1yZXNwb25zaXZlLWNhcm91c2VsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3N0eWxlcy9hcHAuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9hY2Nlc3NpYmlsaXR5L2FjY2Vzc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9hbmd1bGFyL2FuZ3VsYXIuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9vbGRfYnJvd3Nlcl9tZXNzYWdlL29sZC1icm93c2VyLW1lc3NhZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9zcGxhc2hfcGFnZS9zcGxhc2gtcGFnZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3N0eWxlX2hlbHBlcnMvaGVscGVycy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL2ZhbGxiYWNrL21hc3Rlci1mYWxsYmFjay1iaXJ0aGRheS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL2ZhbGxiYWNrL21hc3Rlci1mYWxsYmFjay1yZXNldC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9fYm9vdHN0cmFwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcmludC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19zY2FmZm9sZGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3R5cGUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9uLWdyb3Vwcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYWdlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xhYmVscy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JhZGdlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RodW1ibmFpbHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19hbGVydHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcm9ncmVzcy1iYXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWVkaWEuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFuZWxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcG9wb3ZlcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL2Vycm9yL2FuaW1hdGVkLTQwNC5zY3NzIiwiLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL3BhZ2UtZmFkZS10cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3VpL3ZpZGVvLWZ1bGx3aWR0aC1vdmVybGF5LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvc2ltcGxlLXBhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvaGVhZGVyL25hdi1idG4tM2Jhci10by14LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL2V2ZW50cy9saXN0aW5nL2FsdGVybmF0aW5nLWJnLWV2ZW50cy10YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9ldmVudHMvbGlzdGluZy9ldmVudHMtdGlja2V0LWJ1dHRvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvZXZlbnRzL2RldGFpbC8xLWNvbC1ldmVudC1kZXRhaWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvdWkvbWFwLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL25ld3MvbGlzdGluZy8zLWZsZXhib3gtZ3JpZC1uZXdzLWxpc3Quc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvbmV3cy9kZXRhaWwvMS1jb2wtbmV3cy1kZXRhaWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvbWVkaWEvbGlzdGluZy8zLWNvbC1tZWRpYS1saXN0LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL21lZGlhL2RldGFpbC8xLWNvbC1tZWRpYS1kZXRhaWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvcmVsZWFzZXMvbGlzdGluZy8zeC1yZWxlYXNlcy1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3JlbGVhc2VzL2RldGFpbC8yLWNvbC1yZWxlYXNlLWRldGFpbC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogV29uZGVyZnVsIFVuaW9uXG4gKiBPcmlnaW4gVGhlbWVcbioqL1xuXG4vKiBPcmlnaW4gRGVwZW5kZW5jaWVzICovXG5AaW1wb3J0IFwiLi92YXJpYWJsZXMuc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy90aGVtZS1pbXBvcnQuc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3R5bGVzL2FwcC5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXBcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL2Vycm9yL2FuaW1hdGVkLTQwNC5zY3NzXCI7XG5cbi8qIEljb25zICovXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS9zdHlsZS5zY3NzXCI7XG5cbi8qKlxuICogR2VuZXJhbFxuICogPT09PT09PVxuICpcbiovXG5cbiAgYm9keSB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGZvbnQtZmFtaWx5OiAkbWFpbkZvbnQ7XG4gIH1cbiAgYSB7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMTUwbXM7XG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm1ldGEtdmFsdWUtYmFjayB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIC8qIFBhZ2UgVHJhbnNpdGlvbiAqL1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL3BhZ2UtZmFkZS10cmFuc2l0aW9uXCI7XG5cbiAgLyogTG9hZGluZyBJbmRpY2F0b3IgKi9cbiAgI2xvYWRpbmctYmFyIHtcbiAgICAuYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgfVxuICAgIC5wZWcge1xuICAgICAgYm94LXNoYWRvdzogJHdoaXRlIDFweCAwIDZweCAxcHg7XG4gICAgfVxuICB9XG4gICNsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogR3JpZCAqL1xuICAucGFnZSwgLnNpdGUtaGVhZGVyLCAuc2l0ZS1mb290ZXIge1xuICAgIC53cmFwIHtcbiAgICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG4gIC5wYWdlIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjIwcHgpO1xuICB9XG5cbiAgLyogU2VjdGlvbiBIZWFkZXJzICovXG4gIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgaDEge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLyogU2VjdGlvbiBGb290ZXJzICovXG4gIC5zZWN0aW9uLWZvb3RlciwgLnNlY3Rpb24gLmZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAud3JhcCB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIFZpZGVvIFdpZGdldCAqL1xuICAkb3ZlcmxheS1iZy1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICRwbGF5LWJ1dHRvbjogdHJ1ZTtcbiAgJHBsYXktYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4gICRwbGF5LWJ1dHRvbi1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy91aS92aWRlby1mdWxsd2lkdGgtb3ZlcmxheVwiO1xuICAuc2VjdGlvbi1mZWF0dXJlZC12aWRlbyxcbiAgLnNlY3Rpb24td2lkZ2V0LXZpZGVvIHtcbiAgICAudmlkZW8tdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnZpZGVvLWZyYW1lIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiAwLjVlbSBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1mZWF0dXJlZC12aWRlby52aWRlby1sb2FkZWQsXG4gIC5zZWN0aW9uLXdpZGdldC12aWRlby53aWRnZXQtbG9hZGVkIHtcbiAgICAuaW5uZXIge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogUGFnaW5hdGlvbiAqL1xuICAkYWN0aXZlLXBhZ2UtYmc6IHRyYW5zcGFyZW50O1xuICAkYWN0aXZlLXBhZ2UtY29sb3I6ICRhY2NlbnQ7XG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvc2ltcGxlLXBhZ2luYXRpb25cIjtcbiAgLnNlY3Rpb24tcGFnaW5hdGlvbiB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRncmV5LCA1JSk7XG4gIH1cbiAgLnBhZ2luYXRpb24ge1xuICAgID4gbGkge1xuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIHN0cmlrZVRocm91Z2goKTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTUlO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmZpcnN0LWNoaWxkLCAmOmxhc3QtY2hpbGQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hY3RpdmUge1xuICAgICAgPiBhIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIENNUyBQYWdlICovXG4gIC5zZWN0aW9uLWNtcy1wYWdlIHtcbiAgICAud3JhcCB7XG4gICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIH1cbiAgICAmLWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8qIENhYnJlcmEgQ3JldyAqL1xuICAucGFnZS1jYWJyZXJhc2NyZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuc2VjdGlvbi1jbXMtcGFnZSB7XG4gICAgICAuaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC53cmFwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTA1cHgpO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgI3N3ZWV0LWVtYmVkIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuLyoqXG4gKiBIZWFkZXJcbiAqID09PT09PVxuICpcbiovXG5cbiAgLyogTmF2ICovXG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL2hlYWRlci9uYXYtYnRuLTNiYXItdG8teFwiO1xuXG4gIC5zaXRlLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogJGdyZXkgdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL3J5YW5jYWJyZXJhL3NpdGUvZ2xvYmFsL2ludC1uYXYtYmcuanBnJykgbm8tcmVwZWF0IHRvcC9jb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubmF2YmFyLW5hdiB7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiBsaSB7XG4gICAgICA+IGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uYXZiYXItZGVmYXVsdCB7XG4gICAgLm5hdmJhci10b2dnbGUge1xuICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICB9XG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRncmV5O1xuICAgIH1cbiAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL3J5YW5jYWJyZXJhL3NpdGUvZ2xvYmFsL2xvZ28ucG5nJykgbGVmdCBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICBwYWRkaW5nOiA1MHB4IDE1cHg7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICB9XG4gICAgLnNpdGUtbmF2IHtcbiAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIHN0cmlrZVRocm91Z2goKTtcbiAgICAgICAgICBtYXJnaW46IGF1dG8gMS40ZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLW1lZGlhIHtcbiAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWNhYnJlcmEge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3RyaWtlVGhyb3VnaCgpO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzAlIDIwJTtcbiAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zb2NpYWwtbmF2IHtcbiAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDdweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgLnNpdGUtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogMTA1cHg7XG4gICAgfVxuICAgIC5zb2NpYWwtbmF2IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgLm5hdmJhci1kZWZhdWx0IHtcbiAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLy8gLnNpdGUtbmF2IHtcbiAgICAgIC8vICAgLmRyb3Bkd29uLW1lbnUge1xuICAgICAgLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIC8vICAgfVxuICAgICAgLy8gfVxuICAgIH1cbiAgfVxuXG5cbi8qKlxuICogRm9vdGVyXG4gKiA9PT09PT1cbiAqXG4qL1xuXG4gIC5wYWdlLWhvbWUge1xuICAgIC5zaXRlLWZvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgIH1cbiAgfVxuICAuc2l0ZS1mb290ZXIge1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuY2xpZW50LWZvb3RlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgPiAqIHtcbiAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgIH1cbiAgICAuZm9vdGVyLWJyYW5kIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvcnlhbmNhYnJlcmEvc2l0ZS9nbG9iYWwvbG9nby5wbmcnKSBjZW50ZXIvMTAwJSBuby1yZXBlYXQ7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICB9XG4gICAgLmZvb3Rlci1zb2NpYWxzIHtcbiAgICAgIG1hcmdpbi10b3A6IC4yNWVtO1xuXG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICAubmF2LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGFjY2VudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAud3UtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNXB4O1xuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgIH1cbiAgICAuY29weXJpZ2h0LCAucG93ZXJlZGJ5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG5cblxuXG4vKipcbiAqIEhvbWVcbiAqID09PT09PVxuICpcbiovXG5cbiAgLyogQ2Fyb3VzZWwgKi9cbiAgJGxvYWRpbmctaWNvbjogJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvcnlhbmNhYnJlcmEvc2l0ZS9nbG9iYWwvbG9hZGluZy5zdmcnO1xuICAkaGVpZ2h0LXBlcmNlbnRhZ2U6IDUzJTtcbiAgJGJnLWNvbG9yOiAkd2hpdGU7XG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvZnVsbC13aWR0aC1yZXNwb25zaXZlLWNhcm91c2VsXCI7XG5cbiAgLnNlY3Rpb24tY2Fyb3VzZWwge1xuICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICB9XG5cbiAgLyogTmV3c2xldHRlciAqL1xuICAuc2VjdGlvbi1uZXdzbGV0dGVyLXNpZ251cCB7XG4gICAgZm9udC1mYW1pbHk6ICRib2xkRm9udDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGxhYmVsLCBpbnB1dCwgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogMCAuNWVtO1xuICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XG4gICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgIH1cbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgcGFkZGluZzogMTJweCAyNXB4IDhweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXk7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIE5ld3NsZXR0ZXIgTW9kYWwgKi9cbiAgLm5ld3NsZXR0ZXItbW9kYWwge1xuICAgICYuaW4ge1xuICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwJSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgbWF4LXdpZHRoOiA0MTBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAyLjUlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkZ3JleTtcblxuICAgICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWluZGVudDogNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgfVxuICAgICAgLnNpemUxb2YyIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tY2UtbW9udGgsIC5tY2UtZGF5IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICB9XG4gICAgICAubWNlLW1vbnRoIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIC5jbG9zZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgICYuY2xvc2Uge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIEZlYXR1cmVkIFZpZGVvICovXG4gIC5wYWdlLWhvbWUge1xuICAgIC5zZWN0aW9uLXdpZGdldC12aWRlbyB7XG4gICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgfVxuICB9XG5cbiAgLyogTmV3cyAqL1xuICAucGFnZS1ob21lIHtcbiAgICAuc2VjdGlvbi1uZXdzLWxpc3Qge1xuICAgICAgcGFkZGluZy10b3A6IDkwcHg7XG5cbiAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1uZXdzLWZvb3RlciB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIFNwb3RpZnkgRW1iZWQgKi9cbiAgLnNlY3Rpb24tc3BvdGlmeSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAud2lkZ2V0LXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zcG90aWZ5LWVtYmVkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLndyYXAge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zcG90aWZ5LWZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgLnNlY3Rpb24tc3BvdGlmeSB7XG4gICAgICAuc3BvdGlmeS1lbWJlZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zcG90aWZ5LWZpZ3VyZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMud29uZGVyZnVsdW5pb24ubmV0L2dyb3VuZGN0cmwvY2xpZW50cy9yeWFuY2FicmVyYS9zaXRlL2hvbWUvc3BvdGlmeUltZy5qcGcnKSBuby1yZXBlYXQgY2VudGVyL2NvdmVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA0NTNweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8qKlxuICAgKiBFdmVudHNcbiAgICogPT09PT09XG4gICAqXG4gICovXG5cbiAgICAvKiBFdmVudHMgTGlzdGluZyAqL1xuICAgICRmdWxsLWJsZWVkOiB0cnVlO1xuICAgICRldmVudC1saXN0LWJyZWFrLXBvaW50OiAkZ3JpZC1mbG9hdC1icmVha3BvaW50O1xuICAgICRhbHRlcm5hdGluZy1iZy1jb2xvcjogJHdoaXRlO1xuICAgICRldmVudC1kYXRlLWNvbG9yOiAkYWNjZW50O1xuXG4gICAgJHRpY2tldC1idXR0b24tY29sb3I6ICRibGFjaztcbiAgICAkdGlja2V0LWJ1dHRvbi1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAkdGlja2V0LWJ1dHRvbi1ib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgICR0aWNrZXQtYnV0dG9uLWhvdmVyLWNvbG9yOiAkYWNjZW50O1xuICAgICR0aWNrZXQtYnV0dG9uLWhvdmVyLWJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgJHRpY2tldC1idXR0b24taG92ZXItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAkdmlwLWJ1dHRvbi1jb2xvcjogJGJsYWNrO1xuICAgICR2aXAtYnV0dG9uLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICR2aXAtYnV0dG9uLWJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgJHZpcC1idXR0b24taG92ZXItY29sb3I6ICRhY2NlbnQ7XG4gICAgJHZpcC1idXR0b24taG92ZXItYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAkdmlwLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICR1bmF2YWxhYmxlLWJ1dHRvbi1jb2xvcjogcmdiYSgkc2Vjb25kYXJ5LCAwLjE1KTtcbiAgICAkdW5hdmFsYWJsZS1idXR0b24tYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAkdW5hdmFsYWJsZS1idXR0b24tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9ldmVudHMvbGlzdGluZy9hbHRlcm5hdGluZy1iZy1ldmVudHMtdGFibGUuc2Nzc1wiO1xuICAgIC5zZWN0aW9uLWV2ZW50cyB7XG5cbiAgICAgIC50YWJsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgJi1saXN0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2xkRm9udDtcbiAgICAgICAgdHIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICAgIHRyYW5zaXRpb246IDE1MG1zIGVhc2UtaW47XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHNwYW4sIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGFjY2VudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAxNTBtcyBlYXNlLWluO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnRpY2tldHMge1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHN0cmlrZVRocm91Z2goKTtcbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE1JTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICAuc2VjdGlvbi1ldmVudHMtbGlzdCB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLCAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMDAwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICByaWdodDogLTEwMDBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGlja2V0cyB7XG4gICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4vKiBFdmVudHMgRGV0YWlsICovXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9ldmVudHMvZGV0YWlsLzEtY29sLWV2ZW50LWRldGFpbC5zY3NzXCI7XG4uc2VjdGlvbi1ldmVudHMtZGV0YWlsLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VjdGlvbi1ldmVudHMtZGV0YWlsIHtcbiAgYmFja2dyb3VuZDogJGdyZXk7XG4gIG1hcmdpbjogNDBweCBhdXRvO1xuICAuaGVhZGVyIHtcbiAgICAudGl0bGUsIC52ZW51ZSB7XG4gICAgICBmb250LWZhbWlseTogJGJvbGRGb250O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmRhdGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgfVxuICB9XG4gIC53cmFwIHtcbiAgICBwYWRkaW5nOiAyZW07XG4gIH1cbiAgLnNlY3Rpb24tbWFwLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMmVtIDA7XG4gICAgLndyYXAge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRncmV5LCA1JSk7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAxLjVlbTtcbiAgICB9XG4gIH1cbiAgLnRpY2tldC1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9sZEZvbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGdyZXksIDUlKTtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgIH1cbiAgfVxufVxuXG5cblxuLyoqXG4gKiBOZXdzXG4gKiA9PT09XG4gKlxuKi9cblxuLyogTmV3cyBMaXN0aW5nICovXG4kbmV3cy1kZWZhdWx0LWltYWdlOiAnLy9zdGF0aWMud29uZGVyZnVsdW5pb24ubmV0L2dyb3VuZGN0cmwvY2xpZW50cy9iZWF1dGlmdWwtdHJhdW1hL3NpdGUvMjAxNy9nbG9iYWwvcGxhY2Vob2xkZXIuanBnJztcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL25ld3MvbGlzdGluZy8zLWZsZXhib3gtZ3JpZC1uZXdzLWxpc3RcIjtcbi5zZWN0aW9uLW5ld3MtbGlzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlY3Rpb24tbmV3cy1saXN0IHtcbiAgZm9udC1mYW1pbHk6ICRib2xkRm9udDtcbiAgcGFkZGluZy10b3A6IDIlO1xuXG4gIC5oZWFkZXIge1xuICAgIC50aXRsZSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvb3RlciB7XG4gICAgLnJlYWQtbW9yZSB7XG4gICAgICBAaW5jbHVkZSBzdHJpa2VUaHJvdWdoKCk7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjAlIDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNTgwcHgpIHtcbiAgICAuYXJ0aWNsZSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgybiszKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLyogRmFsbGJhY2sgKi9cbiAgICAubm8tZmxleGJveCAmIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAuYXJ0aWNsZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA5cHgpO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzMpIHtcbiAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgybis0KSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogODAwcHgpIHtcbiAgICAuYXJ0aWNsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDlweCk7XG4gICAgICBtYXJnaW46IDAgMThweCAxOHB4IDA7XG5cbiAgICAgIC5maWd1cmUge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzNTBtcztcblxuICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRzZWNvbmRhcnksIDAuNzUpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0NTBtcztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdSZWFkIE1vcmUnO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDUwbXM7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzUwbXM7XG4gICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDUwbXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIC5maWd1cmUsIC5oZWFkZXIsIC5jb250ZW50LCAuZm9vdGVyIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXIsIC5jb250ZW50LCAuZm9vdGVyIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgY2xlYXI6IHJpZ2h0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5maWd1cmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA5MHB4O1xuXG4gICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOWVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFic3RyYWN0IHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIC5mb290ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwwKSAwLCR3aGl0ZSAxMDAlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogOTkycHgpIHtcbiAgICAuYXJ0aWNsZSB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDMzLjMzMzMlIC0gMTJweCk7XG5cbiAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgybiszKSwgJjpudGgtY2hpbGQoM24rMykge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzbis0KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBGYWxsYmFjayAqL1xuICAgIC5uby1mbGV4Ym94ICYge1xuICAgICAgLmFydGljbGUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAxMnB4KTtcblxuICAgICAgICAmOm50aC1jaGlsZCgybis0KSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoM24rNSkge1xuICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAkZ3JleTtcbiAgfVxuICAuaGVhZGVyIHtcbiAgICAubWV0YSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLmZpZ3VyZSB7XG4gICAgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuICAgIH1cbiAgfVxuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDI1cHggMjBweDtcblxuICAgIC5yZWFkLW1vcmUge1xuICAgICAgcGFkZGluZzogMjVweDs7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGFjY2VudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGFjY2VudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi1wbGFjZWhvbGRlciB7XG4gICAgLmFydGljbGUge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gICAgLmZpZ3VyZSB7XG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXIge1xuICAgICAgLm1ldGEge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICAuYXJ0aWNsZSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLmhlYWRlciwgLmZvb3RlciB7XG4gICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4gIC8qIE5ld3MgRGV0YWlsICovXG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL25ld3MvZGV0YWlsLzEtY29sLW5ld3MtZGV0YWlsLnNjc3NcIjtcbiAgLnNlY3Rpb24tbmV3cy1kZXRhaWwtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zZWN0aW9uLW5ld3MtZGV0YWlsIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleTtcbiAgICBtYXJnaW46IDQwcHggYXV0bztcbiAgICAuaGVhZGVyIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9sZEZvbnQ7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIH1cbiAgICB9XG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZzogMmVtO1xuICAgIH1cbiAgICAuZmlndXJlIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gICAgLnZpZGVvIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1ldGEtdmFsdWUtYmFjayB7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY2NlbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zLCBib3JkZXItY29sb3IgMjUwbXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMsIGJvcmRlci1jb2xvciAyNTBtcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbi8qKlxuICogTWVkaWFcbiAqID09PT1cbiAqXG4qL1xuXG4gIC8qIE1lZGlhIExpc3RpbmcgKi9cbiAgJGFzc2V0LWJnLWhvdmVyOiByZ2JhKCRzZWNvbmRhcnksIDAuOSk7XG4gICRhc3NldC10aXRsZS1jb2xvcjogJHdoaXRlO1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9tZWRpYS9saXN0aW5nLzMtY29sLW1lZGlhLWxpc3Quc2Nzc1wiO1xuICAuc2VjdGlvbi1tZWRpYSB7XG4gICAgJi1oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi1nYWxsZXJpZXMge1xuICAgICAgbWFyZ2luOiAxZW0gYXV0bztcbiAgICB9XG4gICAgJi1saXN0IHtcbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlLWluO1xuICAgICAgfVxuICAgICAgLmhlYWRlciB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRib2xkRm9udDtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1hc3NldCB7XG4gICAgICAuaGVhZGVyLCAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwYWRkaW5nOiAxZW0gMWVtIDAuNWVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgICB9XG4gICAgICAuZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1saXN0LCAmLWxpc3QtbG9hZGVkIHtcbiAgICAgIC5pdGVtIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAuZmlndXJlIC5pbWFnZSwgLmhlYWRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtZm9vdGVyIHtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBNZWRpYSBEZXRhaWwgKi9cbiAgQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvbWVkaWEvZGV0YWlsLzEtY29sLW1lZGlhLWRldGFpbC5zY3NzXCI7XG5cblxuLyoqXG4gKiBSZWxlYXNlc1xuICogPT09PVxuICpcbiovXG5cbiAgLyogUmVsZWFzZXMgTGlzdGluZyAqL1xuICAkcmVsZWFzZS1iZy1ob3ZlcjogcmdiYSgkc2Vjb25kYXJ5LCAwLjkpO1xuICAkcmVsZWFzZS10aXRsZS1jb2xvcjogJHdoaXRlO1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9yZWxlYXNlcy9saXN0aW5nLzN4LXJlbGVhc2VzLWdyaWQuc2Nzc1wiO1xuICAuc2VjdGlvbi1yZWxlYXNlcy1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgJi1oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICAudGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWxvYWRlZCB7XG4gICAgICAucmVsZWFzZSB7XG4gICAgICAgIC5maWd1cmUgLmltYWdlLCAuaGVhZGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXM7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLmZpZ3VyZSAuaW1hZ2UsIC5oZWFkZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIFJlbGVhc2VzIERldGFpbCAqL1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9yZWxlYXNlcy9kZXRhaWwvMi1jb2wtcmVsZWFzZS1kZXRhaWwuc2Nzc1wiO1xuICAuc2VjdGlvbi1yZWxlYXNlcy1kZXRhaWwge1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICAmLWhlYWRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaGVhZGVyIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRyYWNrLXByZXZpZXcge1xuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyIHtcbiAgICAgIC5tZXRhLWl0ZW0ge1xuICAgICAgICAmLWJhY2sge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgfVxuICAgICAgICAmLWxpbmtzIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogMC41ZW0gMWVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMjUwbXMgZWFzZS1pbiwgY29sb3IgMjUwbXMgZWFzZS1pbjtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zIGVhc2UtaW4sIGNvbG9yIDI1MG1zIGVhc2UtaW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4iLCIvKlxuKiBEZWZhdWx0IEJvb3RzdHJhcCBWYXJzXG4qIHJhdy5naXRodWJ1c2VyY29udGVudC5jb20vdHdicy9ib290c3RyYXAtc2Fzcy9tYXN0ZXIvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3NcbiovXG5cbi8qIFR5cGUgKi9cbiRpY29uLWZvbnQtcGF0aDogJy4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC8nO1xuXG4vKiBGb250cyAqL1xuJG1haW5Gb250OiBcImZ1dHVyYS1wdFwiLCBzYW5zLXNlcmlmO1xuJGJvbGRGb250OiBcImZ1dHVyYS1wdC1ib2xkXCIsIHNhbnMtc2VyaWY7XG5cbi8qIENvbG9yICovXG4kYmxhY2s6ICMwMDA7XG4kd2hpdGU6ICNmZmY7XG4kYWNjZW50OiAjNmM5Y2M0O1xuJHNlY29uZGFyeTogIzM0MzY0YztcbiRncmV5OiAjZjJmMmYyO1xuXG4kYm9keS1iZzogJHdoaXRlO1xuJHRleHQtY29sb3I6ICRibGFjaztcbiRsaW5rLWNvbG9yOiAkYmxhY2s7XG4kbGluay1ob3Zlci1jb2xvcjogJGdyZXk7XG5cbi8qIE5hdiAqL1xuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogMTAyMHB4O1xuXG4kbmF2YmFyLWhlaWdodDogNzVweDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAkc2Vjb25kYXJ5O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICRhY2NlbnQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6IHRyYW5zcGFyZW50O1xuXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAkYmxhY2s7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAkYmxhY2s7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbi8qIEFjY291bnQgVmFyJ3MgKi9cbiR3aWR0aDogMTE4MHB4O1xuJHRoZW1lOiAnbGlnaHQnO1xuJHRhYmxlQm9yZGVyQ29sb3I6ICRzZWNvbmRhcnk7XG4kYmFja2dyb3VuZENvbG9yOiB0cmFuc3BhcmVudDtcbiRib3JkZXJDb2xvcjogJHNlY29uZGFyeTtcbiRsaW5rQ29sb3I6ICRhY2NlbnQ7XG4kbGlua0NvbG9ySG92ZXI6IHJnYmEoJGFjY2VudCwgLjc1KTtcbiRwcmltYXJ5OiAkYWNjZW50O1xuJGFjY291bnRNb2JpbGVQYWRkaW5nOiAwO1xuJGhhc1dyYXA6IGZhbHNlO1xuXG4vKiBIZWxwZXJzICovXG4gIC5uby1wYWdpbmF0aW9uIHtcbiAgICAuc2VjdGlvbi1wYWdpbmF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5yb3cubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5yb3cubm8tZ3V0dGVycyA+IFtjbGFzc149XCJjb2wtXCJdLFxuICAucm93Lm5vLWd1dHRlcnMgPiBbY2xhc3MqPVwiIGNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgfVxuICBAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIH1cbiAgQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgJGJ1dHRvbi1jb2xvcjogJGJsYWNrO1xuICAkYnV0dG9uLWJvcmRlcjogJGdyZXk7XG4gICRidXR0b24tYmFja2dyb3VuZDogJGdyZXk7XG4gICRidXR0b24taG92ZXItY29sb3I6ICR3aGl0ZTtcbiAgJGJ1dHRvbi1ob3Zlci1ib3JkZXI6ICRncmV5O1xuICAkYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ6ICRncmV5O1xuICBAbWl4aW4gYnV0dG9uKCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMThweDtcbiAgICBtYXJnaW46IDIwcHggMCA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBjb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRidXR0b24tYm9yZGVyO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zLCBiYWNrZ3JvdW5kIDI1MG1zLCBib3JkZXIgMjUwbXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICBAbWl4aW4gc3RyaWtlVGhyb3VnaCgpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL3J5YW5jYWJyZXJhL3NpdGUvZ2xvYmFsL3N0cmlrZS1hY2NlbnQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuIiwiLyoqXG4gKiBpbXBvcnQgdGhpcyBpbnRvIGNsaWVudCBkaXJlY3RvcnkgYW5kIHJlZGVmaW5lXG4gKiBzYXNzIHZhcmlhYmxlcyBmb3IgY3VzdG9taXphdGlvblxuICogZmluZCB2YXJpYWJsZXMgaW5zaWRlIEBpbXBvcnQgJy4vdmFyaWFibGVzL3ZhcmlhYmxlcy5zY3NzJztcbiAqL1xuXG5AaW1wb3J0ICcuL3ZhcmlhYmxlcy92YXJpYWJsZXMuc2Nzcyc7XG5cbi8qIG1vZHVsZXMgKi9cbkBpbXBvcnQgJy4vYXZhdGFyL2F2YXRhci5zY3NzJztcbkBpbXBvcnQgJy4vbWl4aW5zL21peGlucy5zY3NzJztcbkBpbXBvcnQgJy4vZ2xvYmFscy9nbG9iYWxzLnNjc3MnO1xuQGltcG9ydCAnLi9zdG9yZS9zdG9yZS5zY3NzJztcbkBpbXBvcnQgJy4vYWNjb3VudC9hY2NvdW50LnNjc3MnO1xuQGltcG9ydCAnLi9oZWFkZXIvaGVhZGVyLnNjc3MnO1xuQGltcG9ydCAnLi9mb290ZXIvZm9vdGVyLnNjc3MnO1xuQGltcG9ydCAnLi9ob21lL2hvbWUuc2Nzcyc7XG5cbi8qIFN0eWxlcyBmb3IgYm9vdHN0cmFwIGNhcm91c2VsICovXG5AaW1wb3J0ICcuLi8uLi8uLi9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvd2lkZ2V0cy9mdWxsLXdpZHRoLXJlc3BvbnNpdmUtY2Fyb3VzZWwuc2Nzcyc7XG4iLCIvKiBUeXBlICovXG4kaWNvbi1mb250LXBhdGg6ICcuLi8uLi8uLi90aGVtZXMvdW5pb24vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC8nICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbCAqL1xuJGJnLWNvbG9yOiAjMzMzMzMzICFpbXBvcnRhbnQ7XG4vKiBjb21tb24gdmFyaWFibGVzIGZvciB0aGUgc3RvcmUgJiYgYWNjb3VudCB0ZW1wbGF0ZXMgKi9cblxuJGhhc1dyYXA6IHRydWUgIWRlZmF1bHQ7XG5cbi8qIGNvbG9ycyAqL1xuJGJhY2tncm91bmRDb2xvcjogaHNsYSgwLCAwJSwgMTAwJSwgLjA3KSAhZGVmYXVsdDtcbiRjaGVja291dEJhY2tncm91bmRDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRibGFjazogIzA0MDQwNDtcbiRibHVlOiAjMTc3N0EyICFkZWZhdWx0O1xuJGRhcmtHcmVlbjogIzVjYjg1YyAhZGVmYXVsdDtcbiRkYXJrR3JleTogIzY2NjY2NiAhZGVmYXVsdDtcbiRtaWRHcmV5OiAjQUFBQUFBICFkZWZhdWx0O1xuJGVycm9yUmVkOiAjZDk1MzRmICFkZWZhdWx0O1xuJGdyZWVuOiAjNkM4ODY5ICFkZWZhdWx0O1xuJGdyZXk6ICNlNGU0ZTQgIWRlZmF1bHQ7XG4kbGlnaHRHcmV5OiAjZjdmN2Y3ICFkZWZhdWx0O1xuJGxpZ2h0R3JlZW46ICNCNEQ3QjggIWRlZmF1bHQ7XG4kbGlnaHRCbGFjazogIzQ0NDQ0NCAhZGVmYXVsdDtcbiRsaWdodGVyQmxhY2s6ICMzQzMzMzMgIWRlZmF1bHQ7XG4kbGlua0NvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbGlua0NvbG9ySG92ZXI6ICRkYXJrR3JleSAhZGVmYXVsdDtcbiR0YWJsZUJvcmRlckNvbG9yOiAkZ3JleSAhZGVmYXVsdDtcbiRwcmltYXJ5OiAjRkE0QzA2ICFkZWZhdWx0O1xuJGhvdmVyUHJpbWFyeTogZGFya2VuKCRwcmltYXJ5LCAxMCkgIWRlZmF1bHQ7XG4kcmVkOiAjZDk1MzRmICFkZWZhdWx0O1xuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGljb25CYXJDb2xvcjogIzg4ODg4OCAhZGVmYXVsdDtcbiRpY29uQmFyQ29sb3JFeHBhbmRlZDogIzg4ODg4OCAhZGVmYXVsdDtcblxuLyogYm9yZGVycyAqL1xuJGJvcmRlclJhZGl1czogNHB4ICFkZWZhdWx0O1xuJGJvcmRlckNvbG9yOiAkbGlnaHRlckJsYWNrICFkZWZhdWx0O1xuJGJvcmRlcjogMCBzb2xpZCAkbGlnaHRlckJsYWNrICFkZWZhdWx0O1xuXG4vKiBmb250ICovXG4kZm9udFdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGZvbnRXZWlnaHQzMDA6IDMwMCAhZGVmYXVsdDtcbiRmb250V2VpZ2h0NDAwOiA0MDAgIWRlZmF1bHQ7XG4kZm9udEZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250U2l6ZTogMTZweCAhZGVmYXVsdDtcbiRjb3VudGVyTGluZUhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLyogbGluZSBoZWlnaHQgKi9cbiRMYWJlbExpbmVIZWlnaHQ6IDE4cHggIWRlZmF1bHQ7XG4kZm9ybUlucHV0TGluZUhlaWdodDogMzZweCAhZGVmYXVsdDtcblxuLyogZm9ybSBlbGVtZW50cyAqL1xuJGZvcm1FbGVtZW50Rm9jdXNPcGFjaXR5OiAwLjggIWRlZmF1bHQ7XG5cbi8qIGFuaW1hdGlvbnMgKi9cbiRlYXNlOiAwLjVzIGVhc2UgIWRlZmF1bHQ7XG5cbi8qIGxheW91dCAmJiBicmVha3BvaW50cyAqL1xuJHdpZHRoOiAxMTQwcHggIWRlZmF1bHQ7XG4kbW9iaWxlQnJlYWtwb2ludDogODQwcHggIWRlZmF1bHQ7XG4kc21hbGxNb2JpbGVCcmVha3BvaW50OiA1MDBweCAhZGVmYXVsdDtcblxuJG1vYmlsZU5hdkJyZWFrcG9pbnQ6ICRtb2JpbGVCcmVha3BvaW50ICFkZWZhdWx0O1xuXG4vKiBoZWFkZXIgLyBtYWluIG5hdiAqL1xuJGhlYWRlckJhY2tncm91bmRDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRoZWFkZXJCb3JkZXJDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRoZWFkZXJMaW5rQ29sb3I6ICRsaW5rQ29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyTGlua0NvbG9ySG92ZXI6ICRsaW5rQ29sb3JIb3ZlciAhZGVmYXVsdDtcblxuLyogYWNjb3VudCAqL1xuJGFjY291bnRNb2JpbGVQYWRkaW5nOiAyMHB4ICFkZWZhdWx0O1xuJGNvdW50ZXJCZ0NvbG9yOiAkZ3JleSAhZGVmYXVsdDtcbiRjb3VudGVyQ29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLyogc3RvcmUgbGlzdGluZyB0eXBlcyAqL1xuJHN0b3JlSGFzRmxhZ2dlZExpc3Rpbmc6ICd0cnVlJyAhZGVmYXVsdDtcblxuLyogc3RvcmUgYXNpZGUgKi9cbiRzdG9yZUFzaWRlQmFja2dyb3VuZENvbG9yOiAkYmFja2dyb3VuZENvbG9yICFkZWZhdWx0O1xuJHN0b3JlQXNpZGVCb3JkZXJDb2xvcjogJGJvcmRlckNvbG9yICFkZWZhdWx0O1xuLy8gJHN0b3JlQXNpZGVIYXNDYXRlZ29yaWVzSGVhZGVyOiBmYWxzZSAhZGVmYXVsdDtcblxuLyogZm9vdGVyICovXG4kZm9vdGVyQ29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRmb290ZXJMaW5rQ29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRmb290ZXJCYWNrZ3JvdW5kQ29sb3I6ICRiYWNrZ3JvdW5kQ29sb3IgIWRlZmF1bHQ7XG4kZm9vdGVyTGlua0NvbG9ySG92ZXI6ICRncmV5ICFkZWZhdWx0O1xuIiwiLyogQXZhdGFyIHJvbGxvdmVycyAqL1xuJGF2YXRhclJvbGxvdmVyQmFja2dyb3VuZENvbG9yOiAjRUVFRUVFICFkZWZhdWx0O1xuJGF2YXRhclJvbGxvdmVyQ29sb3I6ICMyMjIyMjIgIWRlZmF1bHQ7XG4kYXZhdGFyUm9sbG92ZXJCb3JkZXJSYWRpdXM6IDVweCAhZGVmYXVsdDtcblxuLmF2YXRhcl93cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLmF2YXRhcl9yb2xsb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTEwMDtcbiAgcGFkZGluZzogNnB4O1xuICBjb2xvcjogJGF2YXRhclJvbGxvdmVyQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRhdmF0YXJSb2xsb3ZlckJvcmRlclJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGF2YXRhclJvbGxvdmVyQmFja2dyb3VuZENvbG9yO1xuICBvcGFjaXR5OiAwLjk7XG5cbiAgaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxuICAucm9sbG92ZXJfY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIC5tb3JlIHtcbiAgICAgIGR0LCBkZCB7XG4gICAgICAgIHdpZHRoOiA0OXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgICAgLnN0YXQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogY29tbW9uIHZhcmlhYmxlcyBmb3IgdGhlIHN0b3JlICYmIGFjY291bnQgdGVtcGxhdGVzICovXG5cbkBtaXhpbiBjb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBjb2xvcjogJGJsYWNrO1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIEBzdXBwb3J0cyhwYWRkaW5nOiBtYXgoMHB4KSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc3ViQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgY29sb3I6ICRibGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG5AbWl4aW4gdW5pb25CdXR0b24ge1xuICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JleTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBjb2xvcjogJHdoaXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZGFya0dyZXksIDEwKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIHByaW1hcnlCdXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJQcmltYXJ5O1xuICB9XG59XG5cbkBtaXhpbiBmb3JtSW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtSW5wdXRMaW5lSGVpZ2h0O1xuICB0ZXh0LWluZGVudDogOXB4O1xuICBjb2xvcjogJGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogJGZvcm1FbGVtZW50Rm9jdXNPcGFjaXR5O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvcm1TZWxlY3Qge1xuICBoZWlnaHQ6IDM2cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAmOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAkZm9ybUVsZW1lbnRGb2N1c09wYWNpdHk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gc2VsZWN0QmFja2dyb3VuZCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWFYTnZMVGc0TlRrdE1TSS9QandoUkU5RFZGbFFSU0J6ZG1jZ1VGVkNURWxESUNJdEx5OVhNME12TDBSVVJDQlRWa2NnTVM0eEx5OUZUaUlnSW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTDBkeVlYQm9hV056TDFOV1J5OHhMakV2UkZSRUwzTjJaekV4TG1SMFpDSStQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJR2xrUFNKRFlYQmhYekVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGc5SWpCd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU16QTJjSGdpSUdobGFXZG9kRDBpTXpBMmNIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBek1EWWdNekEySWlCemRIbHNaVDBpWlc1aFlteGxMV0poWTJ0bmNtOTFibVE2Ym1WM0lEQWdNQ0F6TURZZ016QTJPeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BHYytQR2NnYVdROUltVjRjR0Z1WkMxdGIzSmxJajQ4Y0c5c2VXZHZiaUJ3YjJsdWRITTlJakkzTUM0ekxEVTRMalkxSURFMU15d3hOelV1T1RVZ016VXVOeXcxT0M0Mk5TQXdMRGswTGpNMUlERTFNeXd5TkRjdU16VWdNekEyTERrMExqTTFJQ0l2UGp3dlp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQQzl6ZG1jK1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYyg5OC43NSUgLSA1cHgpIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xufVxuXG5AbWl4aW4gZm9ybUxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogJExhYmVsTGluZUhlaWdodDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuQG1peGluIGVycm9yIHtcbiAgY29sb3I6ICRlcnJvclJlZDtcbn1cblxuQG1peGluIGxlZ2VuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiA1cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbkBtaXhpbiBtb2JpbGVEaXNwbGF5QmxvY2sge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICBAc3VwcG9ydHMocGFkZGluZzogbWF4KDBweCkpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgICAgcGFkZGluZy1yaWdodDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1vYmlsZVRhYmxlIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUge1xuICAgICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICB0ciB7XG4gICAgICB0ZCwgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB3cmFwIHtcbiAgLndyYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbm9Cb3JkZXIge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cbi5uby1ib3JkZXIge1xuICBAaW5jbHVkZSBub0JvcmRlcjtcbn1cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRDb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICBmb250LXNpemU6ICRmb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0O1xuXG4gICYuYWNjb3VudCwgJi5zdG9yZSB7XG4gICAgI3BhZ2Uge1xuICAgICAgQGluY2x1ZGUgd3JhcDtcblxuICAgICAgYSB7XG4gICAgICAgIHRyYW5zaXRpb246ICRlYXNlO1xuICAgICAgICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgY29sb3I6ICRsaW5rQ29sb3JIb3ZlcjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gICYuYWNjb3VudCB7XG4gICAgI2NvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIG1heC13aWR0aDogJHdpZHRoO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBwYWRkaW5nOiAwICRhY2NvdW50TW9iaWxlUGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zdG9yZSB7XG4gICAgLnNlY3Rpb24tY2FydCxcbiAgICAuc2VjdGlvbi1vcmRlci1iaWxsaW5nLFxuICAgIC5zZWN0aW9uLXNoaXBwaW5nLW1ldGhvZCxcbiAgICAuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uLFxuICAgIC5zZWN0aW9uLW9yZGVyLXN1bW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNoZWNrb3V0QmFja2dyb3VuZENvbG9yO1xuXG4gICAgICAmLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5tZWRpYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgJi5wcml2YWN5IHtcbiAgICAuc2VjdGlvbi5wcml2YWN5IHtcbiAgICAgIG1heC13aWR0aDogJHdpZHRoO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGlmICgkaGFzV3JhcCA9PSB0cnVlKSB7XG4gIEBpbmNsdWRlIHdyYXA7XG59XG5cbnVsIHtcbiAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAwO1xuICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMDtcbiAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWVuZDogMDtcbiAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG5cbm9sIHtcbiAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAwO1xuICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMDtcbiAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWVuZDogMDtcbiAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwO1xufVxuXG5oMSwgaDIsIGgzIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuXG4vKiBGb3JtIGVsZW1lbnRzICovXG5pbnB1dCB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgcGFkZGluZzogNXB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuYnV0dG9uIHtcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuYSB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuc2VsZWN0IHtcbiAgY29sb3I6ICRibGFjaztcbiAgdGV4dC1pbmRlbnQ6IDVweDtcbn1cblxuLmlucHV0LCAuc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm1MYWJlbDtcbiAgfVxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybUlucHV0O1xuICB9XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybUlucHV0O1xuICAgIEBpbmNsdWRlIGZvcm1TZWxlY3Q7XG4gICAgQGluY2x1ZGUgc2VsZWN0QmFja2dyb3VuZDtcbiAgfVxuICAuZXJyb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogLTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICBAaW5jbHVkZSBlcnJvcjtcbiAgfVxuICAmLmlucHV0LW1lc3NhZ2Uge1xuICAgIC5lcnJvciB7XG4gICAgICBtYXJnaW4tdG9wOiA5cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIHJvdyAqL1xuLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxuLnJvdy1idXR0b25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBtYXJnaW46NXB4IDA7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucm93LWJ1dHRvbnMtdHdvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBidXR0b25zICovXG4uYnV0dG9uLCBhLmJ1dHRvbiB7XG4gIEBpbmNsdWRlIHVuaW9uQnV0dG9uO1xuXG4gIC8qIFBpc3MgUG9vciBQbGFubmluZyBQcm9tb3RlcyBQb29yIFBlcmZvcm1hbmNlICAqL1xuICBib2R5LmFjY291bnQgI3BhZ2UgJixcbiAgYm9keS5zdG9yZSAjcGFnZSAmIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5idXR0b24tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG59XG5cbmJ1dHRvbltkaXNhYmxlZD1cImRpc2FibGVkXCJdLFxuYVtkaXNhYmxlZD1cImRpc2FibGVkXCJdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5idG4tYWNjb3JkaW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAuNWVtIDAuMjVlbSAwIDAuMjVlbTtcbiAgICBib3JkZXItY29sb3I6ICRsaW5rQ29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxufVxuXG4jZmFuY3lib3gtY29udGVudCB7XG4gIHAge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgQGluY2x1ZGUgdW5pb25CdXR0b247XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxuICB9XG59XG4iLCJcbi8qIHN0b3JlIGltcG9ydHMgKi9cbkBpbXBvcnQgXCIuL21peGluL2ZsYWdlZC1wcm9kdWN0LWxpc3RpbmctbWl4aW4uc2Nzc1wiO1xuQGltcG9ydCBcIi4vbWl4aW4vZ2VuZXJhbC1wcm9kdWN0LWxpc3RpbmctbWl4aW4uc2Nzc1wiO1xuQGltcG9ydCBcIi4vZ2xvYmFsL3N0b3JlLWdsb2JhbC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9iaWxsaW5nLzItY29sLWJpbGxpbmctbGlzdGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiLi9jYXJ0L2NhcnQtdGFibGUuc2Nzc1wiO1xuQGltcG9ydCBcIi4vY2F0ZWdvcmllcy8zeC1jYXRlZ29yaWVzLWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vY2F0ZWdvcmllcy9jYXRlZ29yaWVzLW5hdi1saXN0LnNjc3NcIjtcbkBpbXBvcnQgXCIuL2NhdGVnb3J5LzMtY29sLWNhdGVnb3J5LWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vb3JkZXIvZXh0cmEvMS1jb2wtb3JkZXItZXh0cmEtbGlzdGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlci9wYXltZW50LzEtY29sLW9yZGVyLXBheW1lbnQtdGFibGUuc2Nzc1wiO1xuQGltcG9ydCBcIi4vb3JkZXIvd2lsbGNhbGwvMS1jb2wtb3JkZXItd2lsbC1jYWxsLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcGFydGlhbHMvYXNpZGUvMS1jb2wtYXNpZGUuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcGFydGlhbHMvbWV0YS9tZXRhLXJvdy5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wYXJ0aWFscy9wcm9ncmVzcy9wcm9ncmVzcy1pbmRpY2F0b3Itcm93LnNjc3NcIjtcbkBpbXBvcnQgXCIuL3Byb2R1Y3QvZGV0YWlsLzItY29sLXByb2R1Y3QtZGV0YWlsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3Byb2R1Y3QvbGlzdGluZy8yLWNvbC1wcm9kdWN0LWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcHJvZHVjdC9saXN0aW5nLzMtY29sLXByb2R1Y3QtZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9zaGlwcGluZy8yLWNvbC1zaGlwcGluZy1saXN0aW5nLnNjc3NcIjtcbiIsIi8qIG1peGluIGZvciBmbGFnZWQgbGlzdGluZyBmb3IgcHJvZHVjdHMgYW5kIGNhdGVnb3JpZXMgKi9cblxuQG1peGluIGZsYWdnZWRQcm9kdWN0TGlzdGluZyAoJHdpZHRoKSB7XG4gIC5pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1hcmdpbjogMCAxJSAxJSAwO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgfVxuICAgID4gLnByb2R1Y3Qge1xuICAgICAgYm9yZGVyOiA0cHggc29saWQgJGJsYWNrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC5maWd1cmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjkpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiAkZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuICAgICAgLnRhYiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIi5cIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kb3duIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmV5O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuY29zdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTRweCAwIDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuOHMgZWFzZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgJi5jb3N0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciAuY29udGVudCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgICAmOmhvdmVyIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpO1xuICAgIH1cbiAgICAuZmVhdHVyZWQucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0ge1xuICAgICAgd2lkdGg6IDQ5JTtcblxuICAgICAgJi5zZWNvbmQge1xuICAgICAgICBtYXJnaW46IDAgMCAyJTtcbiAgICAgIH1cbiAgICAgIC5jb250ZW50IC50YWIge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgLmRvd24ge1xuICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGUyNjAnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb3N0IHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTFweDtcblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IC5mbGFnIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICB6LWluZGV4OiAxMDE7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnL3RoZW1lcy9vcmlnaW4vaW1nL2ZsYWdzLnBuZycpIDAgMCBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAmLmZlYXR1cmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NnB4IDA7XG4gICAgICB9XG4gICAgICAmLmJ1bmRsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgIH1cbiAgICAgICYubmV3IHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTc4cHggMHB4O1xuICAgICAgfVxuICAgICAgJi5zYWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzMnB4IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0cyAubGlzdGluZyAuaXRlbS50aGlyZCB7XG4gICAgICBtYXJnaW46IDAgMCAyJTtcbiAgICB9XG4gICAgLnByb2R1Y3RzLnNob3Age1xuICAgICAgLmxpc3Rpbmcge1xuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgLnRhYiB7XG4gICAgICAgICAgICAgIC5kb3duIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzFweDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ub25lIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQgKyAxKSB7XG4gICAgLmNvbXBhY3Qge1xuICAgICAgLml0ZW0ge1xuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgLnRhYiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgIC5kb3duIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IC5jb3N0IHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gLmNvc3QgPiBzcGFuIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAxNHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBnZW5lcmFsIGxpc3RpbmcgZm9yIHByb2R1Y3RzIGFuZCBjYXRlZ29yaWVzXG4gKi9cbkBtaXhpbiBnZW5lcmFsUHJvZHVjdExpc3RpbmcgKCR3aWR0aCkge1xuICAuaXRlbSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuZmlndXJlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRyYW5zaXRpb246ICRlYXNlO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogc3RvcmUgZWxlbWVudHMgKi9cbi5tYWluLXN0b3JlLXByb2R1Y3RzLFxuLm1haW4tY2F0ZWdvcnktcHJvZHVjdHMge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgQGluY2x1ZGUgbW9iaWxlRGlzcGxheUJsb2NrO1xuICB3aWR0aDogNzUlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5hc2lkZS1zdG9yZSB7XG4gIEBpbmNsdWRlIG1vYmlsZURpc3BsYXlCbG9jaztcbiAgY29sb3I6ICRibGFjaztcbiAgd2lkdGg6IDI1JTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbmFzaWRlI3d1LWFsZXJ0LWJhbm5lciB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGIwMDAwO1xuICBvcGFjaXR5OiAwLjk7XG4gIGNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiAxMjM0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAubWVzc2FnZS10ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleC1iYXNpczogNTAlO1xuXG4gICAgLm1vcmUtaW5mbyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNsb3NlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogMTBweDtcbiAgfVxufSIsIi5zZWN0aW9uLW9yZGVyLWJpbGxpbmcge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgLnNlY3Rpb24tYmlsbGluZy1wcm9maWxlLFxuICAuc2VjdGlvbi1iaWxsaW5nLWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICBoMSwgaDIsIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIGlucHV0LCBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGZvbnQ6IDMwMCAxNnB4IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB9XG4gICAgLnJvdy1wYXltZW50LW1ldGhvZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAuZmllbGRzZXQge1xuICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zaXRpb246ICRlYXNlO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uLWNvbnRpbnVlLFxuICAgIC5idXR0b24tc2F2ZSB7XG4gICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuICAgIH1cblxuICB9XG4gIC5zZWN0aW9uLWJpbGxpbmctcHJvZmlsZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAuc2VjdGlvbi1iaWxsaW5nLWluZm9ybWF0aW9uIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gIC5TdHJpcGVFbGVtZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LWluZGVudDogOXB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB9XG59XG4iLCIuY2FydC1pbmZvIHtcbiAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuXG4gIGNvbG9yOiAkYmxhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuXG4gIC5jYXJ0LWl0ZW1zIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5zZWN0aW9uLWNhcnQge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgaDEge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIG1hcmdpbjogMjBweCAwIDQwcHggMDtcbiAgfVxuXG4gIC5zZWN0aW9uLWNhcnQtaW5mb3JtYXRpb24ge1xuICAgIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcblxuICAgIC5yZXZpZXcge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgdGhlYWQge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG90YWwge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgdGgucXVhbnRpdHksXG4gICAgdGQucXVhbnRpdHkge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVzY3JpcHRpb24pO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0MzAwO1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgICAgJi50ZC1idW5kbGUtZXh0cmEge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi1xdWFudGl0eSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JleTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6IDMxcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0QmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pdGVtIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2t1IHtcbiAgICAgICAgICBjb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucXVhbnRpdHkge1xuICAgICAgICBpbnB1dCxcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRmb290IHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICB9XG5cbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4IDRweCAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbiAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR0YWJsZUJvcmRlckNvbG9yLCAwLjIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGVCb3JkZXJDb2xvcjtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB3aWR0aDogMTAwcHg7XG4gIH1cblxuICAucm93LWJ1dHRvbnMtYWN0aW9ucyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIC5idXR0b24tY29udGludWUge1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgYSxcbiAgICBidXR0b24ge1xuICAgICAgQGluY2x1ZGUgdW5pb25CdXR0b247XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtaWRHcmV5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24tdXBkYXRlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIC5idXR0b24tY2hlY2tvdXQge1xuICAgICAgQGluY2x1ZGUgcHJpbWFyeUJ1dHRvbjtcbiAgICB9XG4gIH1cbn1cbiIsIi5zZWN0aW9uLXN0b3JlLWNhdGVnb3JpZXMge1xuICBAaW5jbHVkZSBnZW5lcmFsUHJvZHVjdExpc3RpbmcoJHdpZHRoOiAzMyUpO1xuXG4gIC5oZWFkZXItc3RvcmUtY2F0ZWdvcmllcyB7XG4gICAgaDIudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gIH1cbiAgLml0ZW0ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLml0ZW0ge1xuICAgIC5jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4IDEwcHggMTBweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmhlYWRlci1jYXRlZ29yaWVzLCAuaGVhZGVyLXN0b3JlLWNhdGVnb3JpZXMge1xuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuICAuZGV0YWlsLXN0b3JlLWNhdGVnb3JpZXMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMTAwcHggYXV0bztcblxuICAgIC5saXN0aW5nIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICB9XG4gIC5kZXRhaWxzIHtcbiAgICAmLmV4Y2VycHQge1xuICAgICAgLm5hbWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogc3RvcmUgY2F0ZWdvcnkgbmF2IGxpc3QgKi9cbi5uYXYtY2F0ZWdvcmllcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAud3JhcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgcGFkZGluZy10b3A6IDEycHg7XG5cbiAgICAubGlzdGluZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIubWFpbi1jYXRlZ29yeS1wcm9kdWN0cyB7XG4gIC5oZWFkZXItY2F0ZWdvcnkge1xuICAgIGgxLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICB9XG4gIC5saXN0aW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLmRldGFpbCB7XG4gICAgQGluY2x1ZGUgZ2VuZXJhbFByb2R1Y3RMaXN0aW5nKCR3aWR0aDogMzMlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMCAwIDEwMHB4IDA7XG5cbiAgICAuaXRlbSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZGV0YWlscyB7XG4gICAgICAudGFiIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXNoIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1vcmRlci1leHRyYSB7XG4gIC8vIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAuc2VjdGlvbi1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuZmllbGRzZXQge1xuICAgICAgbGVnZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgbGVnZW5kO1xuXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJvdy1idXR0b25zIHtcbiAgICAgIC5idXR0b24tc2hpcHBpbmctYmFjayB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMjRweDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24tc3VibWl0LWFkZGl0aW9uYWwtaW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG5cbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIC5oZWFkZXItb3JkZXItc3VtbWFyeSB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1wYXltZW50LWFkZHJlc3MtaW5mb3JtYXRpb24sXG4gIC5zZWN0aW9uLXB1cmNoYXNlLWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuY29sIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAmLmNvbC0xLTIge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAgIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGVCb3JkZXJDb2xvcjtcbiAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR0YWJsZUJvcmRlckNvbG9yLCAuMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudGFibGUge1xuICAgICAgLnRvdGFsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmVlbjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDZweCA4cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2t1IHtcbiAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgIH1cbiAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICNwcm9tb0NvZGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzNDBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiA5cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGVhZCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWRlc2NyaXB0aW9uKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRmb290IHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDhweCA0cHggOHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgI3RvdGFscyB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAuZ3JhbmQtdG90YWwge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tcHVyY2hhc2UtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgLnJvdy1yZXZpZXcge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uLWNvbnRpbnVlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JlZW47XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGRhcmtHcmVlbiwgMTApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBhIHtcbiAgICAmLmJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucm93LXJldmlldyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuIiwiLnNlY3Rpb24td2lsbC1jYWxsIHtcbiAgLnNlY3Rpb24td2lsbC1jYWxsLWZvcm0ge1xuICAgIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcbiAgfVxufVxuIiwiLmFzaWRlLXN0b3JlIHtcbiAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAyNSU7XG4gIG1hcmdpbjogMDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gID4gLmhlYWRlciB7XG4gICAgcGFkZGluZzogMCAwIDE1cHggMDtcbiAgfVxuICAuaGVhZGVyIHtcbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmNhcnQtaXRlbXMge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICAgICYtYXNpZGUge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgLmV4cGlyZSB7XG4gICAgICAgICAgLmNhcnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlldy1jYXJ0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICYuY2FydCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHBhZGRpbmc6IDExcHggMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgbWFyZ2luOiAtMC4yZW0gMCAwIDAuNWVtO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICBkYXJrZW4oJHByaW1hcnksIDEwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2FydC1pdGVtcyB7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG8gNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAudGl0bGUge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAubGlzdGluZyB7XG4gICAgLml0ZW0ge1xuICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG5cbiAgICAgIHNwYW4sIGEge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWNhdGVnb3JpZXMge1xuICAgIC5oZWFkZXItYXNpZGUsIC5oZWFkZXItY2F0ZWdvcmllcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbCB7XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgICYuY3VycmVudCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAuY29sbGFwc2UsIC5jb2xsYXBzaW5nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmJ0bi1hY2NvcmRpb24ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2FydC10aW1lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuZXhwaXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICAuY2FydCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAmLXZpc2libGUge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNoZWNrb3V0LXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbjogMTBweCBhdXRvIDMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcblxuICBsaSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG4gICAgaSB7XG4gICAgICBjb2xvcjogJGRhcmtHcmVlbjtcbiAgICAgIHRvcDogM3B4O1xuICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgIH1cbiAgfVxuICAuY3VycmVudCB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgfVxufVxuIiwiLnNlY3Rpb24tcHJvZHVjdC1kZXRhaWwge1xuICBjb2xvcjogJGJsYWNrO1xuXG4gIEBzdXBwb3J0cyhwYWRkaW5nOiBtYXgoMHB4KSkge1xuICAgIHBhZGRpbmctbGVmdDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgIHBhZGRpbmctcmlnaHQ6IG0je2F9eCgxMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG4gIH1cbiAgLndyYXAge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgfVxuICAuc2VjdGlvbi1wcm9kdWN0LWRlc2NyaXB0aW9uLFxuICAuc2VjdGlvbi1wcm9kdWN0LXB1cmNoYXNlIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCArIDEpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgIC5maWd1cmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5NiU7XG4gICAgICAgIG1hcmdpbjogMiUgYXV0bztcbiAgICAgICAgcGFkZGluZzogMiU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcblxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3Qtc29jaWFsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgIG1hcmdpbjogMmVtIDA7XG5cbiAgICAgIC5saWtlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICB9XG4gICAgICAudHJ1c3RwaWxvdC13aWRnZXQge1xuICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tcHJvZHVjdC1wdXJjaGFzZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgID4gaDEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgfVxuICAgIC5wcmljZSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwLjI1ZW0gMCAwLjVlbSAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLnByaWNlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgICYuc3RvY2ssXG4gICAgICAgICYuc2t1IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJi5zdG9jayB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuXG4gICAgICAgICAgJi5vdXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yUmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHVyY2hhc2VfZm9ybSB7XG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxbXMgMTAwbXM7XG5cbiAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMnB4IDAgMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4wO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICYudmFyaWF0aW9ucyB7XG4gICAgICAgICAgICAuc2VsZWN0IHtcbiAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnBheW1lbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDZweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JlZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMnB4IDAgMCAtMjVweDtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmVycm9yIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3JSZWQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXR0b24tYWRkLXRvLWNhcnQge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogICRwcmltYXJ5O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkZWFzZTtcblxuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICBkYXJrZW4oJHByaW1hcnksIDEwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgKyB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1ldGEge1xuICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLyogMi1jb2wgUHJvZHVjdCBMaXN0aW5nICovXG4ubWFpbi1zdG9yZS1wcm9kdWN0cyB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgLmhlYWRlci1wcm9kdWN0cyB7XG4gICAgLnRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0cyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgLml0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvc3Qge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB9XG4gICAgJi5zZWN0aW9uLXByb2R1Y3RzLWZlYXR1cmVkIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5saXN0aW5nIHtcbiAgICAgICAgLm5vbmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5zZWN0aW9uLXByb2R1Y3RzIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLyogMy1jb2wgUHJvZHVjdCBMaXN0aW5nICovXG4uc2VjdGlvbi1wcm9kdWN0cy1mZWF0dXJlZCwgLnNlY3Rpb24tcHJvZHVjdHMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmxpc3Rpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICAgIC5mbGFnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC50YWIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLnByb2R1Y3QtZGV0YWlscywgLnRhYiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tcHJvZHVjdHMtZmVhdHVyZWQge1xuICAubGlzdGluZyB7XG4gICAgLml0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAuc2VjdGlvbi1wcm9kdWN0cyB7XG4gICAgLml0ZW0ge1xuICAgICAgLm5hbWUge1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIC5zZWN0aW9uLXNoaXBwaW5nLWFkZHJlc3MtY29udGFpbmVyLFxuICAuc2VjdGlvbi1zaGlwcGluZy1tZXRob2QtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuYnV0dG9uLXNhdmUtYWRkcmVzcyxcbiAgICAuYnV0dG9uLXNhdmUtbWV0aG9kIHtcbiAgICAgIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXNoaXBwaW5nLWFkZHJlc3MtY29udGFpbmVyIHtcbiAgICAuZmllbGRzZXQtY2hhbmdlLXNoaXBwaW5nLWFkZHJlc3Mge1xuICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBtYXJnaW46IDJweCAwIDAgLTIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICAuZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogJGVhc2U7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBsZWdlbmQge1xuICAgICAgQGluY2x1ZGUgbGVnZW5kO1xuICAgIH1cbiAgICAuY2hlY2tib3gge1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgNXB4IDEwcHggMDtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwICA1cHggMCAwO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybVNlbGVjdDtcbiAgICAgICAgQGluY2x1ZGUgc2VsZWN0QmFja2dyb3VuZDtcblxuICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAgLSA4MHB4KTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucmFkaW8gKyAucmFkaW8sIC5jaGVja2JveCArIC5jaGVja2JveCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuICAjaW50ZXJuYXRpb25hbEZpZWxkc2V0IHtcbiAgICAuY2hlY2tib3gge1xuICAgICAgaW5wdXQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJvdy1idXR0b25zIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBhY2NvdW50IGltcG9ydHMgKi9cblxuQGltcG9ydCBcIi4vZ2xvYmFsL2FjY291bnQtZ2xvYmFsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2FkZHJlc3MvMi1jb2wtYWRkcmVzcy1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vZGFzaGJvYXJkLzItY29sLWFjY291bnQtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2xpbmtlZC1hY2NvdW50LzItY29sLWxpbmtlZC1hY2NvdW50LWRhc2hib2FyZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9tYW5hZ2UtYWNjb3VudC8yLWNvbC1tYW5hZ2UtcHJvZmlsZS1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vbWFuYWdlLWF2YXRhci8yLWNvbC1hdmF0YXItZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL25vdGlmaWNhdGlvbnMvMi1jb2wtbWFuYWdlLW5vdGlmaWNhdGlvbnMtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVycy9kZXRhaWwvbXVsdGktcm93LW9yZGVyLWRldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlcnMvbGlzdGluZy8yLWNvbC1vcmRlci1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL25hdmlnYXRpb24uc2Nzc1wiO1xuIiwiLm1haW4tYWNjb3VudCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgbWluLWhlaWdodDogNjAwcHg7XG5cbiAgJiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICAuaGVhZGVyLWFjY291bnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuXG4gICAgaDEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1uYXYsXG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5hc2lkZS1uYXYge1xuICAgIHdpZHRoOiAyNSU7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG5cbiAgICAuZmllbGRzZXQtYWNjb3VudCB7XG4gICAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hc2lkZS1hY2NvdW50IHtcbiAgLnRhYmxlIHtcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQge1xuICAgICAgdHIge1xuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbWFuYWdlLWFkZHJlc3Mge1xuICAuYXNpZGUtYWNjb3VudC1tYW5hZ2UtYWRkcmVzcyB7XG4gICAgbGVnZW5kIHtcbiAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcbiAgICB9XG4gICAgLmZpZWxkc2V0LWJpbGxpbmcge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgLmlucHV0LCAuc2VsZWN0IHtcbiAgICAgICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkc2V0LXNoaXBwaW5nIHtcbiAgICAgIC5jaGVja2JveCB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LWRhc2hib2FyZCB7XG4gIC5hc2lkZS1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgLnRhYmxlIHtcbiAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LW1hbmFnZWQtbGlua2VkIHtcbiAgLmFzaWRlLWFjY291bnQtbWFuYWdlZC1saW5rZWQge1xuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuXG4gICAgLnRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1tYW5hZ2Uge1xuICAuYXNpZGUtYWNjb3VudCB7XG4gICAgLnJvdy1wb2xpY3ktcHJldmlldyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgcCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG4gICNjb250YWluZXIgJiB7XG4gICAgLmVycm9yIHtcbiAgICAgICYsICYgYSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGNvbG9yOiAjZDk1MzRmO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1hdmF0YXIge1xuICAuc2VjdGlvbi1hY2NvdW50LW1hbmFnZS1hdmF0YXIge1xuICAgIC5ub3RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5maWVsZHNldC1tYW5hZ2UtYXZhdGFyIHtcbiAgICAgIC5saXN0IHtcbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgLmZpbGUge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnVybCB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0R3JleTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXByaXZhY3ktcG9saWN5LWRpc2NsYWltZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbm90aWZpY2F0aW9ucyB7XG4gIC5hc2lkZS1hY2NvdW50LW5vdGlmaWNhdGlvbnMge1xuICAgIGxlZ2VuZCB7XG4gICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucy10d28ge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIH1cbiAgICAuZmllbGRzZXQtc3Vic2NyaXB0aW9uLW5vdGlmaWNhdGlvbnMge1xuICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgKyAuY2hlY2tib3gge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLm5vdGUge1xuICAgICAgICAgIG1hcmdpbjogMnB4IDAgMTBweCAyNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1vcmRlci1zdW1tYXJ5IHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuXG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBoMSwgLmgxLCBoMiwgLmgyLCBoMywgLmgzIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIC5zZWN0aW9uLW9yZGVyLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1vcmRlci1pdGVtaXphdGlvbixcbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzLFxuICAuc2VjdGlvbi1vcmRlci13aWxsLWNhbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAudGFibGUge1xuICAgICAgdGhlYWQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRyIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IHRoZWFkIHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB0Ym9keSB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuXG4gICAgICAgICAgICAuc2t1IHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1vcmRlci1pbmZvcm1hdGlvbiB7XG4gICAgLmNvbCB7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgJi5jb2wtMS0zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItaXRlbWl6YXRpb24ge1xuICAgIC50YWJsZSB7XG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzIHtcbiAgICAucm93LXNoaXBwaW5nLWluZm9ybWF0aW9uIHtcbiAgICAgIC5vcmRlciB7XG4gICAgICAgICYuc3RhdHVzIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICYuY29sLTEtMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1yb3cge1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG4gIC50cnVzdHBpbG90LXJldmlldyB7XG4gICAgbWFyZ2luOiAyZW0gYXV0bztcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1vcmRlci1saXN0IHtcblxuICAuYXNpZGUtb3JkZXItbGlzdCB7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgLm5vLW9yZGVycyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtb2JpbGVUYWJsZTtcbiAgfVxufVxuIiwiLmFzaWRlLW5hdiB7XG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLml0ZW0ge1xuICAgICAgJi5saW5rZWQge1xuICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDdweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvdW50ZXJCZ0NvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkY291bnRlckNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hdmF0YXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5waWMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogc3RvcmUgdGhlbWUgaGVhZGVyXG4gKiBpbmNsdWRlcyBzdHlsZXMgZm9yIGJvb3RzdHJhcCBuYXZiYXJcbiAqL1xuXG4uaGVhZGVyLW1haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyQmFja2dyb3VuZENvbG9yO1xuICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcblxuICAubmF2YmFyLWRlZmF1bHQsIC5uYXZiYXIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlckJhY2tncm91bmRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcblxuICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRoZWFkZXJMaW5rQ29sb3I7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGhlYWRlckxpbmtDb2xvckhvdmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyQmFja2dyb3VuZENvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaGVhZGVyQm9yZGVyQ29sb3I7XG5cbiAgICAgIC5pY29uLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uQmFyQ29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDEzMG1zIGVhc2UgMTMwbXMsIGJvdHRvbSAxMzBtcyBlYXNlIDEzMG1zLCB0cmFuc2Zvcm0gMTMwbXMgZWFzZTtcbiAgICAgIH1cbiAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAuaWNvbi1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uQmFyQ29sb3JFeHBhbmRlZDtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIHN0b3JlIHRoZW1lIGZvb3RlciAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyNHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXJCYWNrZ3JvdW5kQ29sb3I7XG4gIGNvbG9yOiAkZm9vdGVyQ29sb3I7XG5cbiAgLndyYXAge1xuICAgIC5zaXRlLWxvZ28ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udFNpemUgLSAycHg7XG4gICAgICAgIGNvbG9yOiAkZm9vdGVyTGlua0NvbG9yO1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAkZm9vdGVyTGlua0NvbG9ySG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6ICRmb250U2l6ZSAtIDJweDtcbiAgICAgICAgY29sb3I6ICRmb290ZXJDb2xvcjtcbiAgICAgIH1cbiAgICAgICYtdGVybXMge1xuICAgICAgICAuaXRlbS1jb3BwYSwgLml0ZW0tcG93ZXJlZGJ5IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogc3RvcmUgaG9tZSBzdHlsZXMgKi9cblxuLnNlY3Rpb24taG9tZS1wcm9kdWN0cyB7XG4gIHBhZGRpbmc6IDYwcHggMCAxMDBweCAwO1xuXG4gIC5mb290ZXItaG9tZS1wcm9kdWN0cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYnV0dG9uLWFsbC1wcm9kdWN0cyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLyogRnVsbCBXaWR0aCBSZXNwb25zaXZlIENhcm91c2VsICovXG5cbiAgLyogVmFycyAqL1xuICAkaGVpZ2h0LXBlcmNlbnRhZ2U6IDQwJSAhZGVmYXVsdDtcbiAgJGJnLWNvbG9yOiAjMDAwICFkZWZhdWx0O1xuXG4gICRsb2FkaW5nLWljb246IG51bGwgIWRlZmF1bHQ7XG5cbiAgLnNlY3Rpb24tY2Fyb3VzZWwge1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1ib3R0b206ICRoZWlnaHQtcGVyY2VudGFnZTtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG5cbiAgICAuaXRlbSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAuY2FwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGhlaWdodC1wZXJjZW50YWdlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgIHdpZHRoOiA1JTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkbG9hZGluZy1pY29uIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgkbG9hZGluZy1pY29uKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDI1MG1zIDBtcywgb3BhY2l0eSAyNTBtcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qISBcbiAqIGFuZ3VsYXItbG9hZGluZy1iYXIgdjAuOS4wXG4gKiBodHRwczovL2NoaWVmZmFuY3lwYW50cy5naXRodWIuaW8vYW5ndWxhci1sb2FkaW5nLWJhclxuICogQ29weXJpZ2h0IChjKSAyMDE2IFdlcyBDcnV2ZXJcbiAqIExpY2Vuc2U6IE1JVFxuICovXG5cbi8qIE1ha2UgY2xpY2tzIHBhc3MtdGhyb3VnaCAqL1xuI2xvYWRpbmctYmFyLFxuI2xvYWRpbmctYmFyLXNwaW5uZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzNTBtcyBsaW5lYXIgYWxsO1xuICAtbW96LXRyYW5zaXRpb246IDM1MG1zIGxpbmVhciBhbGw7XG4gIC1vLXRyYW5zaXRpb246IDM1MG1zIGxpbmVhciBhbGw7XG4gIHRyYW5zaXRpb246IDM1MG1zIGxpbmVhciBhbGw7XG59XG5cbiNsb2FkaW5nLWJhci5uZy1lbnRlcixcbiNsb2FkaW5nLWJhci5uZy1sZWF2ZS5uZy1sZWF2ZS1hY3RpdmUsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1lbnRlcixcbiNsb2FkaW5nLWJhci1zcGlubmVyLm5nLWxlYXZlLm5nLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbiNsb2FkaW5nLWJhci5uZy1lbnRlci5uZy1lbnRlci1hY3RpdmUsXG4jbG9hZGluZy1iYXIubmctbGVhdmUsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1lbnRlci5uZy1lbnRlci1hY3RpdmUsXG4jbG9hZGluZy1iYXItc3Bpbm5lci5uZy1sZWF2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiNsb2FkaW5nLWJhciAuYmFyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcbiAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcbiAgLW8tdHJhbnNpdGlvbjogd2lkdGggMzUwbXM7XG4gIHRyYW5zaXRpb246IHdpZHRoIDM1MG1zO1xuXG4gIGJhY2tncm91bmQ6ICMyOWQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMXB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMXB4O1xufVxuXG4vKiBGYW5jeSBibHVyIGVmZmVjdCAqL1xuI2xvYWRpbmctYmFyIC5wZWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA3MHB4O1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDJweDtcbiAgb3BhY2l0eTogLjQ1O1xuICAtbW96LWJveC1zaGFkb3c6ICMyOWQgMXB4IDAgNnB4IDFweDtcbiAgLW1zLWJveC1zaGFkb3c6ICMyOWQgMXB4IDAgNnB4IDFweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAjMjlkIDFweCAwIDZweCAxcHg7XG4gIGJveC1zaGFkb3c6ICMyOWQgMXB4IDAgNnB4IDFweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMDAlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbiNsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDI7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMTBweDtcbn1cblxuI2xvYWRpbmctYmFyLXNwaW5uZXIgLnNwaW5uZXItaWNvbiB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG5cbiAgYm9yZGVyOiAgc29saWQgMnB4IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWNvbG9yOiAgIzI5ZDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMyOWQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZGluZy1iYXItc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1tb3otYW5pbWF0aW9uOiAgICBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbjogICAgIGxvYWRpbmctYmFyLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xuICAtby1hbmltYXRpb246ICAgICAgbG9hZGluZy1iYXItc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogICAgICAgICBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXIge1xuICAwJSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIDAlICAgeyAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cbkAtby1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIDAlICAgeyAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuQC1tcy1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIDAlICAgeyAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5Aa2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXIge1xuICAwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuQGltcG9ydCAnLi4vc3JjL3N0eWxlcy9hY2Nlc3NpYmlsaXR5L2FjY2Vzc2liaWxpdHkuc2Nzcyc7XG5AaW1wb3J0ICcuLi9zcmMvc3R5bGVzL2FuZ3VsYXIvYW5ndWxhci5zY3NzJztcbkBpbXBvcnQgJy4uL3NyYy9zdHlsZXMvb2xkX2Jyb3dzZXJfbWVzc2FnZS9vbGQtYnJvd3Nlci1tZXNzYWdlLnNjc3MnO1xuQGltcG9ydCAnLi4vc3JjL3N0eWxlcy9zcGxhc2hfcGFnZS9zcGxhc2gtcGFnZS5zY3NzJztcbkBpbXBvcnQgJy4uL3NyYy9zdHlsZXMvc3R5bGVfaGVscGVycy9oZWxwZXJzLnNjc3MnO1xuQGltcG9ydCAnLi4vc3JjL3N0eWxlcy9mYWxsYmFjay9tYXN0ZXItZmFsbGJhY2stYmlydGhkYXkuc2Nzcyc7XG5AaW1wb3J0ICcuLi9zcmMvc3R5bGVzL2ZhbGxiYWNrL21hc3Rlci1mYWxsYmFjay1yZXNldC5zY3NzJztcbiIsIi8qIEFjY2Vzc2liaWxpdHkgKi9cbiNwYWdlIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufSIsIi8qIEFuZ3VsYXIgKi9cbi5uZy1jbG9hayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5bbmctY2xpY2tdLCBbZGF0YS1uZy1jbGlja10sIFt1aS1zcmVmXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5wYWdlLWlubmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCIvKiBPbGQgQnJvd3NlciBNZXNzYWdlICovXG5wLmJyb3dzZXJ1cGdyYWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogLjJlbTtcbiAgYmFja2dyb3VuZDogI2YwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk7XG59XG5wLmJyb3dzZXJ1cGdyYWRlIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5wLmJyb3dzZXJ1cGdyYWRlIGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn0iLCIvKiBTcGxhc2ggUGFnZSAqL1xuLnBhZ2Utc3BsYXNoIHtcbiAgaGVhZGVyLCBmb290ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iLCIvKiBIZWxwZXJzICovXG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm1vZGFsLXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4ucHJlLW5vLXN0eWxlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZml0LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXG4gIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIE92ZXJyaWRlIGlubGluZSBzdHlsZXNcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59IiwiLyogTWFzdGVyIEZhbGxiYWNrIEZpeGVzICovXG4jR0Mge1xuICAmLkdDX2JpcnRoZGF5IHtcbiAgICBzZWxlY3Qge1xuICAgICAgYXBwZWFyYW5jZTogbWVudWxpc3QtYnV0dG9uO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxufSIsIi8qXG4gKiBSZXNwb25zaXZlL3R5cGUgcmVzZXQgZm9yIE9yaWdpbiBUaGVtZSBmYWxsYmFjayB0byBNYXN0ZXIgVGhlbWVcbiAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIE1hc3RlciBUaGVtZSc7XG4gIHNyYzogdXJsKFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIuZW90XCIpO1xuICBzcmM6IHVybChcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3B1YmxpYy9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIuc3ZnI2dseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuLmdseXBoaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIE1hc3RlciBUaGVtZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4ubWFzdGVyLXRoZW1lIHtcbiAgcCwgZGwsIG9sLCB1bCB7IG1hcmdpbjogMWVtIDA7IHBhZGRpbmc6IDA7IH1cbiAgZGQgeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cbiAgaSwgZW0geyBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgYiwgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBhLCBzcGFuIHsgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cbiAgfVxuICB0YWJsZSB7IG1hcmdpbjogMDsgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgfVxuICAmLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCB0aCwgZHQsIHAsIGEsIHNwYW4sIGxpLCB0ZCwgZGQsIGFkZHJlc3MsIGlucHV0LCB0ZXh0YXJlYSwgLnZjYXJkLCAjZGFzaGJvYXJkLCAjYnJlYWRjcnVtYnMsIGxlZ2VuZCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB9XG4gIGEsIGE6dmlzaXRlZCB7IGNvbG9yOiBpbmhlcml0OyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBidXR0b24geyBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgJiB7IGZvbnQtc2l6ZTogMTZweDsgfVxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZWxlZ2liaWxpdHk7XG4gICAgICBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIH1cbiAgaDEgeyBmb250LXNpemU6IDJlbTsgbGluZS1oZWlnaHQ6IDEuMzMzZW07IH1cbiAgaDIgeyBmb250LXNpemU6IDEuNGVtOyBsaW5lLWhlaWdodDogMS40ZW07IH1cbiAgaDMgeyBmb250LXNpemU6IDEuMmVtOyB9XG4gIGg0IHsgZm9udC1zaXplOiAxLjFlbTsgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICBoNSB7IGZvbnQtc2l6ZTogMC44NDZlbTsgbGluZS1oZWlnaHQ6IDIuMDllbTsgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuICBoNiB7IGZvbnQtc2l6ZTogMC42N2VtOyB9XG4gICosICo6YmVmb3JlLCAqOmFmdGVyIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfSAjZmFuY3lib3gtd3JhcCB7IGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG4gIC5jbGVhcmZpeCB7XG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAmOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cbiAgfVxuICBwLmJyb3dzZXJ1cGdyYWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC4yZW07XG4gICAgYmFja2dyb3VuZDogI2YwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiA5OTk5OTk5OTk5O1xuICB9XG4gIHAuYnJvd3NlcnVwZ3JhZGUgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgcC5icm93c2VydXBncmFkZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAvKiBHZW5lcmFsICovXG4gIC5ldmVudCB7XG4gICAgLmluZm8sICN1bmlmaWVkIC50aXRsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAjR0MgeyBtYXJnaW46IDAgYXV0bzsgbWF4LXdpZHRoOiAxMjAwcHg7IH1cbiAgaW5wdXQsIHRleHRhcmVhIHsgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgYm9yZGVyLXJhZGl1czogMnB4OyBiYWNrZ3JvdW5kOiAjZmZmOyBib3gtc2hhZG93OiBub25lOyB9XG4gICNHQyAucmVjYXB0Y2hhX2lucHV0X2FyZWEgeyB3aWR0aDogYXV0byAhaW1wb3J0YW50OyBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICBibG9ja3F1b3RlIHsgYm9yZGVyOiAwOyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7IC5hdXRob3IgeyBmb250LXdlaWdodDogNzAwOyB9fVxuICBwcmUgeyB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7IH1cbiAgLnNlY3Rpb24ubmV3cyAuYXJ0aWNsZSA+IC5mb290ZXIgLm5hdi5hY3Rpb25zID4gLnJlYWRtb3JlIHsgZmxvYXQ6IG5vbmU7IH1cbiAgLnNlY3Rpb24ubmV3cyAuYXJ0aWNsZSA+IC5mb290ZXIgLm5hdi5hY3Rpb25zIHsgaGVpZ2h0OiBhdXRvOyB9XG4gICNmb290ZXIgeyBoZWlnaHQ6IGF1dG87IH1cbiAgI2JyZWFkY3J1bWJzLCAucnNzIHsgZGlzcGxheTogbm9uZTsgfVxuICBhW2hyZWYqPVwiL3VzZXIvXCJdIHsgd29yZC1icmVhazogYnJlYWstYWxsOyB9XG4gIC5jb250ZW50IGxpIHsgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAvKiBHcmlkICovXG4gICNkYXNoYm9hcmQgLnNlY3Rpb24sICNwYWdlLCAjYnJlYWRjcnVtYnMsICNoZWFkZXIgLnNlY3Rpb24sICNmb290ZXIgLnNlY3Rpb24sICYuc3RvcmUgI21haW4uZnVsbCwgI21haW4uZnVsbCwgLm1haW4uZnVsbCwgI2FzaWRlLCAuYXNpZGUgeyB3aWR0aDogMTAwJTsgfVxuICAjZGFzaGJvYXJkIC5zZWN0aW9uLCAjY29udGFpbmVyLCAjYnJlYWRjcnVtYnMsICNoZWFkZXIgLnNlY3Rpb24sICNmb290ZXIgLnNlY3Rpb24sICNtYWluLmZ1bGwsIC5tYWluLmZ1bGwgeyBtYXgtd2lkdGg6IDk2MHB4OyB9XG4gICNtYWluLCAubWFpbiB7IHdpZHRoOiA1NCU7IG1heC13aWR0aDogNTQwcHg7IG1hcmdpbjogMCBhdXRvOyB9XG4gICNhc2lkZSwgLmFzaWRlIHsgd2lkdGg6IDM4JTsgbWF4LXdpZHRoOiAzODBweDsgbWFyZ2luOiAwIGF1dG87IH1cbiAgLyogRXZlbnRzICovXG4gIC5ldmVudHMgLnRpY2tldHMgYSwgLmV2ZW50cyAudGlja2V0cyBzcGFuLCAuZXZlbnRzIC50aWNrZXRzLnZpcCBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuICAvKiBTdG9yZSAqL1xuICAmLnN0b3JlLCAmLnN0b3JlICNhc2lkZSAubGlzdGluZyAuaXRlbSBzcGFuLCAmLnN0b3JlICNhc2lkZSAubGlzdGluZyAuaXRlbSBhIHsgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cbiAgJi5zdG9yZSAjY29udGFpbmVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0byAxNTBweCBhdXRvO1xuICAgIG1heC13aWR0aDogOTIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbiAgJi5zdG9yZSAjYXNpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMzAlO1xuICB9XG4gICYuc3RvcmUgI21haW4gPiAuc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMCAxNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiA+IC5oZWFkZXIsXG4gICYuc3RvcmUgI21haW4gPiAuc2VjdGlvbiA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQge1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgcGFkZGluZzogNDBweCAwIDAgMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0sXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtIHtcbiAgICBtYXJnaW46IDAgMiUgMiUgMDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSA+IC5wcm9kdWN0LFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSA+IC5wcm9kdWN0LFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSA+IC5wcm9kdWN0IHtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAjMDAwO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0gLmZpZ3VyZSxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0gLmZpZ3VyZSxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0gLmZpZ3VyZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5saXN0aW5nIC5pdGVtIGEsXG4gICYuc3RvcmUgI21haW4gLmxpc3RpbmcgLml0ZW0gYSBzcGFuLFxuICAmLnN0b3JlICNtYWluIC5saXN0aW5nIC5pdGVtIGEgc3BhbiBzcGFuIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0gLmNvbnRlbnQsXG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtIC5jb250ZW50LFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSAuY29udGVudCxcbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbTpob3ZlciAuY29udGVudCxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW06aG92ZXIgLmNvbnRlbnQsXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtOmhvdmVyIC5jb250ZW50IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtZGV0YWlscyxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtZGV0YWlscyxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW06aG92ZXIgLnByb2R1Y3QtZGV0YWlscyxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW06aG92ZXIgLnByb2R1Y3QtZGV0YWlscyxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW06aG92ZXIgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgbWF4LWhlaWdodDogMTAwcHg7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1jb250YWluZXIsXG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtIC5wcm9kdWN0LWNvbnRhaW5lcixcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtY29udGFpbmVyID4gYSxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtY29udGFpbmVyID4gYSxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtY29udGFpbmVyID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICAmLnN0b3JlIC5wcm9kdWN0IC5maWd1cmUgaW1nLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSAuZmlndXJlIGltZyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG4gIC8qIEhlYWRlciAqL1xuICAmLnN0b3JlIGgxLnRpdGxlIHtcbiAgICBtYXJnaW46IDQwcHggMCAyMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbiAgLyogRmVhdHVyZWQgTGlzdGluZyAqL1xuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSB7d2lkdGg6IDQ5JTt9XG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtLnNlY29uZCB7bWFyZ2luOiAwIDAgMiUgMDt9XG4gICYuc3RvcmUgI21haW4gPiAuZmVhdHVyZWQgLmZsYWcge21hcmdpbjogMDt9XG4gIC8qIFJlZ3VsYXIgTGlzdGluZyAqL1xuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSB7XG4gICAgd2lkdGg6IDMyJTtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtLnRoaXJkLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbS50aGlyZCB7XG4gICAgbWFyZ2luOiAwIDAgMiUgMDtcbiAgfVxuICAmLnN0b3JlIC5idXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC8qIFNpZGViYXIgKi9cbiAgJi5zdG9yZSAjYXNpZGUgI0dDLnN0b3JlLmhlYWRlciB7bWFyZ2luOiA2NXB4IDE1cHggMTVweCAxNXB4O31cbiAgLyogQ2F0ZWdvcmllcyAqL1xuICAmLnN0b3JlICNhc2lkZSAubGlzdGluZyAuaXRlbSB7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRlZGVkO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cbiAgJi5zdG9yZSAjYXNpZGUgLmxpc3RpbmcgLml0ZW0gKyAuaXRlbSB7Ym9yZGVyLXRvcDogbm9uZTt9XG4gICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIHNwYW4sXG4gICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICAmLnN0b3JlICNhc2lkZSAubGlzdGluZyAuaXRlbSBhOmhvdmVyIHtiYWNrZ3JvdW5kOiAjZmFmYWZhO31cbiAgJi5zdG9yZSAjYXNpZGUgLmNhdGVnb3JpZXMgPiAuaGVhZGVyIHtkaXNwbGF5OiBub25lO31cbiAgLyogQWNjb3VudCBDZW50ZXIgKi9cbiAgLyogU3RydWN0dXJlICovXG4gIC5hY2NvdW50ICNjb250YWluZXIge3BhZGRpbmctYm90dG9tOiAxNTBweDt9XG4gICNHQy5HQ19hY2NvdW50IHtwYWRkaW5nOiAwO31cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIHttYXJnaW46IDA7fVxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgPiAuR0NfdmlldyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgI3Rvb2xiYXIgdWwgbGksXG4gICNHQy5HQ19hY2NvdW50ICN0b29sYmFyIHVsIGxpLnNlbGVjdGVkLFxuICAjR0MuR0NfYWNjb3VudCAjdG9vbGJhciB1bCBsaTpob3ZlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkY2RjZGM7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMge3BhZGRpbmc6IDAgMTBweDt9XG4gIC8qIEhlYWRlciAqL1xuICAjR0MuR0NfYWNjb3VudCA+IC5HQ19oZWFkZXIge2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGNkY2RjO31cbiAgI0dDLkdDX2FjY291bnQgPiAuR0NfaGVhZGVyIGgxIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICAvKiBTaWRlYmFyICovXG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaSxcbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyLFxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24gdWwgbGkuc2VsZWN0ZWQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyLFxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24gdWwgbGkuc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gIH1cbiAgLyogQXZhdGFyICovXG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5lbWFpbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24gdWwgbGkuZW1haWwgYS5waWMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5lbWFpbCBpbWcge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5lbWFpbCAudXNlcm5hbWUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLyogVGFibGVzICovXG4gICNHQy5HQ19hY2NvdW50IHRhYmxlIHtwYWRkaW5nOiAwO31cbiAgI0dDLkdDX2FjY291bnQgdGFibGUgdGQsXG4gICNHQy5HQ19hY2NvdW50IHRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gICNHQy5HQ19hY2NvdW50IHRhYmxlIC5vcHRpb25zIHt3aWR0aDogMTBweDt9XG4gICNHQy5HQ19hY2NvdW50IHRhYmxlIC5hdmF0YXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG4gIC8qIFBhZ2luYXRpb24gKi9cbiAgI0dDLkdDX2FjY291bnQgLnBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIC50aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAucGFnaW5hdGlvbiAucGFnZXMge21hcmdpbjogLTQwcHggMCAwIDA7fVxuICAjR0MuR0NfYWNjb3VudCAucGFnaW5hdGlvbiAuZmlyc3QsXG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIC5sYXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBzcGVhazogbm9uZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAucGFnaW5hdGlvbiAucGFnZXMgPiAuYWN0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLnBhZ2luYXRpb24gLnBhZ2VzID4gLmZvcnRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLm1hcmtJdFVwSGVhZGVyIHtoZWlnaHQ6IDMwcHg7fVxuICAjR0MgLm1hcmtJdFVwSGVhZGVyIHVsIGEsXG4gIC5tYXJrSXRVcEhlYWRlciB1bCBhIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cbiAgI0dDIC5tYXJrSXRVcEhlYWRlciB1bCB1bCBsaSxcbiAgLm1hcmtJdFVwSGVhZGVyIHVsIHVsIGxpIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG4gICNHQ190aHJlYWRfcGFuZWwgLndyYXAgeyB3aWR0aDogMTAwJTsgfVxuICAjR0NfdGhyZWFkX3BhbmVsIC5tYXJrSXRVcEhlYWRlciB7IGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgI0dDIC5HQ19ibG9ncy5HQ19tb2RpZnkgI3RpdGxlLFxuICAjR0NfdGhyZWFkX3BhbmVsICNHQ190aHJlYWRfdGl0bGUsXG4gICNHQ190aHJlYWRfcGFuZWwgdGV4dGFyZWEsXG4gIC5tYXJrSXRVcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAmLmV2ZW50cyB7XG4gICAgI21haW4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg4MHB4KSB7XG4gIC5tYXN0ZXItdGhlbWUge1xuICAgIC8qIFN0b3JlICovXG4gICAgJi5zdG9yZSAjaGVhZGVyLFxuICAgICYuc3RvcmUgI2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zdG9yZSAjbWFpbixcbiAgICAmLnN0b3JlICNhc2lkZSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAvKiBHQyBTdHVmZiAqL1xuICAgICYgI21haW4gI0dDIHttaW4td2lkdGg6IDBweDt9XG4gICAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uLFxuICAgICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyA+IC5HQ192aWV3LFxuICAgICNHQyAjbWFya0l0VXBCb2R5IHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgICAjcmVjYXB0Y2hhX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICNyZWNhcHRjaGFfcmVzcG9uc2VfZmllbGQge3dpZHRoOiBhdXRvICFpbXBvcnRhbnQ7fVxuICAgICNyZWNhcHRjaGFfdGFibGUgPiB0Ym9keSB0ZCB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAjR0MuR0NfcHJvZHVjdCB7YmFja2dyb3VuZC1pbWFnZTogbm9uZTt9XG4gICAgI0dDLkdDX3Byb2R1Y3QgLkdDX3Byb2R1Y3RfZGVzY3JpcHRpb24sXG4gICAgI0dDLkdDX3Byb2R1Y3QgLkdDX3Byb2R1Y3RfcHVyY2hhc2UsXG4gICAgI0dDICNtYXJrSXRVcEJvZHkgI2JvZHkge1xuICAgICAgbWFyZ2luOiAxMHB4IDElO1xuICAgICAgd2lkdGg6IDk4JTtcbiAgICB9XG4gICAgI0dDLkdDX3N0b3JlIHRhYmxlIHtmb250LXNpemU6IDhweDt9XG4gICAgI0dDIGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICB9XG4gICAgI0dDICNHQ19jaGVja291dF9wcm9ncmVzcyBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweCA0JSA1cHggMiU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICNHQyBmaWVsZHNldCB1bCB7cGFkZGluZy10b3A6IDkwcHg7fVxuICAgICNHQyAuaW5wdXQgbGFiZWwsXG4gICAgI0dDIC5zZWxlY3QgbGFiZWwsXG4gICAgI0dDIC5jYXB0Y2hhIGxhYmVsLFxuICAgICNHQyAudGV4dCBsYWJlbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgICNHQyAuR0NfYWRkcmVzcyxcbiAgICAjR0MgLkdDX3BheW1lbnQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogOTMlO1xuICAgIH1cbiAgICAjR0MgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgI0dDIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAjR0MgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICNHQyBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICNHQyBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICAjR0MgdGV4dGFyZWEsXG4gICAgLnVpLWRpYWxvZyB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogOTMlO1xuICAgIH1cbiAgICAjR0MgLkdDX3NoaXBwaW5nIC5HQ19zYW1lX2FzX2JpbGxpbmcge2xlZnQ6IDA7fVxuICAgICNHQyAuYWN0aW9ucyBsaSxcbiAgICAjR0MgLmFjdGlvbnMgLnByZXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICB9XG4gICAgI0dDLkdDX2FjY291bnQgI3Rvb2xiYXIgeyBtYXJnaW46IDA7fVxuICAgICNHQy5HQ19hY2NvdW50ICN0b29sYmFyIC5uYXYgbGkgYSB7dGV4dC1pbmRlbnQ6IC05OTk5cHg7IH1cbiAgICAjR0MuR0NfZW5naW5lIHt3aWR0aDogOTAlO31cbiAgICAjR0MuR0NfYWNjb3VudC5HQ19tYWlsIHRhYmxlIC50aW1lLFxuICAgICNHQy5HQ19hY2NvdW50IC5HQ19mcmllbmRzICNHQ19mcmllbmRfYWN0aW9uIHRoOmxhc3QtY2hpbGQsXG4gICAgI0dDLkdDX2FjY291bnQgLkdDX2ZyaWVuZHMgI0dDX2ZyaWVuZF9hY3Rpb24gdGQudGltZSxcbiAgICAjR0MuR0NfYWNjb3VudCAuR0NfbGlua3MgdGFibGUgLnVybCxcbiAgICAjR0MuR0NfYWNjb3VudC5HQ19jb21tZW50cyB0YWJsZSAuYXV0aG9yLFxuICAgICNHQy5HQ19hY2NvdW50LkdDX2NvbW1lbnRzIHRhYmxlIC5kYXRlLFxuICAgICNHQy5HQ19hY2NvdW50LkdDX2xpbmtlZCB0YWJsZSB0ciAuZGlzcGxheW5hbWUsXG4gICAgI0dDLkdDX2FjY291bnQgLkdDX29yZGVycyAuZGF0ZSxcbiAgICAjR0MuR0NfYWNjb3VudCAuR0Nfb3JkZXJzIC50b3RhbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjR0MuR0NfcHJvZHVjdCAuR0NfcHJvZHVjdF9wdXJjaGFzZSAucHVyY2hhc2VfZm9ybSAuc2VsZWN0IHttYXJnaW46IDA7fVxuICAgICNHQy5HQ19jYXJ0IGgxIHtsaW5lLWhlaWdodDogMWVtO31cbiAgICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgPiAuR0NfdmlldyB7bWluLWhlaWdodDogMDt9XG5cbiAgICAjR0MgLmFjdGlvbnMgLnByZXYgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgICNHQyAuR0NfdGlja2V0LkdDX2NvdW50ZG93biB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgI0dDIGlucHV0LnF1YW50aXR5IHtcbiAgICAgIHdpZHRoOiAzZW07XG4gICAgfVxuICAgICNHQyAjR0NfY2hlY2tvdXRfcHJvZ3Jlc3Mge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAjR0MgdGgudG90YWwsICNHQyB0ZC50b3RhbCwgI0dDIHRmb290IHRoIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgICNHQy5HQ19wYXltZW50X2luZm9ybWF0aW9uIC50b3RhbCBzdHJvbmcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG4gICAgI0dDLkdDX3BheW1lbnRfaW5mb3JtYXRpb24gI1BheW1lbnRGb3JtLWNvbnRpbnVlIGJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICB9XG4gICAgI0dDIHRmb290IHtcbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgdGgge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIHRkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICNHQy5HQ19zdG9yZSB7XG4gICAgICB0YWJsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIHRib2R5IHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJi5pdGVtIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJJdGVtOiBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5zaGlwcGluZyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiU2hpcHBpbmc6IFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnByaWNlIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJQcmljZTogXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYucXVhbnRpdHkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlF1YW50aXR5OiBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi50b3RhbCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiVG90YWw6IFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAudWktZGlhbG9nIHtcbiAgICAgIG1heC13aWR0aDogMzIwcHggIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC40KSAwIDBweCAyMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjMuNC4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XG5cbi8vIENvcmUgQ1NTXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3R5cGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY29kZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9ncmlkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3RhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9mb3Jtc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2YmFyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhbmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3dlbGxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuQGltcG9ydCBcImJvb3RzdHJhcC9tb2RhbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wb3BvdmVyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xuXG4vLyBVdGlsaXR5IGNsYXNzZXNcbkBpbXBvcnQgXCJib290c3RyYXAvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7XG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0ZSBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2hpZGUtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy9vcGFjaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC1maWx0ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYi1mb2N1c1wiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1vdmVyZmxvd1wiO1xuQGltcG9ydCBcIm1peGlucy92ZW5kb3ItcHJlZml4ZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYW5lbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Byb2dyZXNzLWJhclwiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jZW50ZXItYmxvY2tcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LXZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy9cbi8vIEhlYWRzIHVwISB2MyBsYXVuY2hlZCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXG4vLyBtaXhpbnMgYmVpbmcgcmV1c2VkIGFzIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lLCB0aGlzIGRvZXNuJ3QgaG9sZCB1cC4gQXNcbi8vIG9mIHYzLjAuMSB3ZSBoYXZlIGFkZGVkIGAudGV4dC1oaWRlKClgIGFuZCBkZXByZWNhdGVkIGAuaGlkZS10ZXh0KClgLlxuLy9cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuXG4vLyBEZXByZWNhdGVkIGFzIG9mIHYzLjAuMSAoaGFzIGJlZW4gcmVtb3ZlZCBpbiB2NClcbkBtaXhpbiBoaWRlLXRleHQoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBOZXcgbWl4aW4gdG8gdXNlIGFzIG9mIHYzLjAuMVxuQG1peGluIHRleHQtaGlkZSgpIHtcbiAgQGluY2x1ZGUgaGlkZS10ZXh0O1xufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTsgIC8vIElFOCBmaWx0ZXJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5AbWl4aW4gc3F1YXJlKCRzaXplKSB7XG4gIEBpbmNsdWRlIHNpemUoJHNpemUsICRzaXplKTtcbn1cbiIsIi8vIFdlYktpdC1zdHlsZSBmb2N1c1xuXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xuICAvLyBXZWJLaXQtc3BlY2lmaWMuIE90aGVyIGJyb3dzZXJzIHdpbGwga2VlcCB0aGVpciBkZWZhdWx0IG91dGxpbmUgc3R5bGUuXG4gIC8vIChJbml0aWFsbHkgdHJpZWQgdG8gYWxzbyBmb3JjZSBkZWZhdWx0IHZpYSBgb3V0bGluZTogaW5pdGlhbGAsXG4gIC8vIGJ1dCB0aGF0IHNlZW1zIHRvIGVycm9uZW91c2x5IHJlbW92ZSB0aGUgb3V0bGluZSBpbiBGaXJlZm94IGFsdG9nZXRoZXIuKVxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBUZXh0IG92ZXJmbG93XG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIi8vIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuIiwiXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd25cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxufVxuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tbGVmdDogY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICosXG4gICo6YmVmb3JlLFxuICAqOmFmdGVyIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuXG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICB9XG5cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cblxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG5cbiAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAubmF2YmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5idG4sXG4gIC5kcm9wdXAgPiAuYnRuIHtcbiAgICA+IC5jYXJldCB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5sYWJlbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAudGFibGUtYm9yZGVyZWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBHbHlwaGljb25zIGZvciBCb290c3RyYXBcbi8vXG4vLyBTaW5jZSBpY29ucyBhcmUgZm9udHMsIHRoZXkgY2FuIGJlIHBsYWNlZCBhbnl3aGVyZSB0ZXh0IGlzIHBsYWNlZCBhbmQgYXJlXG4vLyB0aHVzIGF1dG9tYXRpY2FsbHkgc2l6ZWQgdG8gbWF0Y2ggdGhlIHN1cnJvdW5kaW5nIGNoaWxkLiBUbyB1c2UsIGNyZWF0ZSBhblxuLy8gaW5saW5lIGVsZW1lbnQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgbGlrZSBzbzpcbi8vXG4vLyA8YSBocmVmPVwiI1wiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1zdGFyXCI+PC9zcGFuPiBTdGFyPC9hPlxuXG5AYXQtcm9vdCB7XG4gIC8vIEltcG9ydCB0aGUgZm9udHNcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiR2x5cGhpY29ucyBIYWxmbGluZ3NcIjtcbiAgICBzcmM6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aChcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3RcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdFwiKSk7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeFwiKSwgXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeFwiKSkgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjJcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyXCIpKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aChcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmXCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmXCIpKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZlwiKSwgXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0udHRmXCIpKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aChcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH1cIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnN2ZyMjeyRpY29uLWZvbnQtc3ZnLWlkfVwiKSkgZm9ybWF0KFwic3ZnXCIpO1xuICB9XG59XG5cbi8vIENhdGNoYWxsIGJhc2VjbGFzc1xuLmdseXBoaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiR2x5cGhpY29ucyBIYWxmbGluZ3NcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi8vIEluZGl2aWR1YWwgaWNvbnNcbi5nbHlwaGljb24tYXN0ZXJpc2sgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmFcIjsgfSB9XG4uZ2x5cGhpY29uLXBsdXMgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMDJiXCI7IH0gfVxuLmdseXBoaWNvbi1ldXJvLFxuLmdseXBoaWNvbi1ldXIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBhY1wiOyB9IH1cbi5nbHlwaGljb24tbWludXMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNjAxXCI7IH0gfVxuLmdseXBoaWNvbi1lbnZlbG9wZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwOVwiOyB9IH1cbi5nbHlwaGljb24tcGVuY2lsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MGZcIjsgfSB9XG4uZ2x5cGhpY29uLWdsYXNzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAxXCI7IH0gfVxuLmdseXBoaWNvbi1tdXNpYyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMlwiOyB9IH1cbi5nbHlwaGljb24tc2VhcmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA1XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNlwiOyB9IH1cbi5nbHlwaGljb24tc3Rhci1lbXB0eSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDdcIjsgfSB9XG4uZ2x5cGhpY29uLXVzZXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA4XCI7IH0gfVxuLmdseXBoaWNvbi1maWxtICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGFyZ2UgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRoICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDExXCI7IH0gfVxuLmdseXBoaWNvbi10aC1saXN0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMlwiOyB9IH1cbi5nbHlwaGljb24tb2sgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTNcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE0XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLWluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNVwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1vdXQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTZcIjsgfSB9XG4uZ2x5cGhpY29uLW9mZiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE3XCI7IH0gfVxuLmdseXBoaWNvbi1zaWduYWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOFwiOyB9IH1cbi5nbHlwaGljb24tY29nICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIwXCI7IH0gfVxuLmdseXBoaWNvbi1ob21lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMVwiOyB9IH1cbi5nbHlwaGljb24tZmlsZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjJcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIzXCI7IH0gfVxuLmdseXBoaWNvbi1yb2FkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNFwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQtYWx0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjVcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI2XCI7IH0gfVxuLmdseXBoaWNvbi11cGxvYWQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyN1wiOyB9IH1cbi5nbHlwaGljb24taW5ib3ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjhcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYXktY2lyY2xlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXBlYXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMFwiOyB9IH1cbi5nbHlwaGljb24tcmVmcmVzaCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWxpc3QtYWx0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2NrICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzM1wiOyB9IH1cbi5nbHlwaGljb24tZmxhZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzRcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRwaG9uZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM1XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtb2ZmICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNlwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzdcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM4XCI7IH0gfVxuLmdseXBoaWNvbi1xcmNvZGUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOVwiOyB9IH1cbi5nbHlwaGljb24tYmFyY29kZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDBcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQxXCI7IH0gfVxuLmdseXBoaWNvbi10YWdzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MlwiOyB9IH1cbi5nbHlwaGljb24tYm9vayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDNcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2ttYXJrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ0XCI7IH0gfVxuLmdseXBoaWNvbi1wcmludCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NVwiOyB9IH1cbi5nbHlwaGljb24tY2FtZXJhICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDZcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ3XCI7IH0gfVxuLmdseXBoaWNvbi1ib2xkICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OFwiOyB9IH1cbi5nbHlwaGljb24taXRhbGljICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtaGVpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUwXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LXdpZHRoICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MVwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTJcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWNlbnRlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUzXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NFwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tanVzdGlmeSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTVcIjsgfSB9XG4uZ2x5cGhpY29uLWxpc3QgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU2XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtbGVmdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1N1wiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LXJpZ2h0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNThcIjsgfSB9XG4uZ2x5cGhpY29uLWZhY2V0aW1lLXZpZGVvICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU5XCI7IH0gfVxuLmdseXBoaWNvbi1waWN0dXJlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MFwiOyB9IH1cbi5nbHlwaGljb24tbWFwLW1hcmtlciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjJcIjsgfSB9XG4uZ2x5cGhpY29uLWFkanVzdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYzXCI7IH0gfVxuLmdseXBoaWNvbi10aW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NFwiOyB9IH1cbi5nbHlwaGljb24tZWRpdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY2XCI7IH0gfVxuLmdseXBoaWNvbi1jaGVjayAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2N1wiOyB9IH1cbi5nbHlwaGljb24tbW92ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjhcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY5XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MFwiOyB9IH1cbi5nbHlwaGljb24tYmFja3dhcmQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzFcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYXkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXVzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3M1wiOyB9IH1cbi5nbHlwaGljb24tc3RvcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZvcndhcmQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc1XCI7IH0gfVxuLmdseXBoaWNvbi1mYXN0LWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NlwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzdcIjsgfSB9XG4uZ2x5cGhpY29uLWVqZWN0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc4XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OVwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1yaWdodCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODBcIjsgfSB9XG4uZ2x5cGhpY29uLXBsdXMtc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgxXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cy1zaWduICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MlwiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLXNpZ24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODNcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLXNpZ24gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg0XCI7IH0gfVxuLmdseXBoaWNvbi1xdWVzdGlvbi1zaWduICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NVwiOyB9IH1cbi5nbHlwaGljb24taW5mby1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODZcIjsgfSB9XG4uZ2x5cGhpY29uLXNjcmVlbnNob3QgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg3XCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtY2lyY2xlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OFwiOyB9IH1cbi5nbHlwaGljb24tb2stY2lyY2xlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhbi1jaXJjbGUgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkwXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MVwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTJcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkzXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1kb3duICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NFwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1mdWxsICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk2XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtc21hbGwgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5N1wiOyB9IH1cbi5nbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDFcIjsgfSB9XG4uZ2x5cGhpY29uLWdpZnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAyXCI7IH0gfVxuLmdseXBoaWNvbi1sZWFmICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwM1wiOyB9IH1cbi5nbHlwaGljb24tZmlyZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1vcGVuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA1XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtY2xvc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNlwiOyB9IH1cbi5nbHlwaGljb24td2FybmluZy1zaWduICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDdcIjsgfSB9XG4uZ2x5cGhpY29uLXBsYW5lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA4XCI7IH0gfVxuLmdseXBoaWNvbi1jYWxlbmRhciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOVwiOyB9IH1cbi5nbHlwaGljb24tcmFuZG9tICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbW1lbnQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTExXCI7IH0gfVxuLmdseXBoaWNvbi1tYWduZXQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMlwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi11cCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tZG93biAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE0XCI7IH0gfVxuLmdseXBoaWNvbi1yZXR3ZWV0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNVwiOyB9IH1cbi5nbHlwaGljb24tc2hvcHBpbmctY2FydCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTZcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1jbG9zZSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE3XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOFwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIwXCI7IH0gfVxuLmdseXBoaWNvbi1oZGQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMVwiOyB9IH1cbi5nbHlwaGljb24tYnVsbGhvcm4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjJcIjsgfSB9XG4uZ2x5cGhpY29uLWJlbGwgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIzXCI7IH0gfVxuLmdseXBoaWNvbi1jZXJ0aWZpY2F0ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNFwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI2XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyN1wiOyB9IH1cbi5nbHlwaGljb24taGFuZC1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjhcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI5XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMFwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMyXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctdXAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzM1wiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWRvd24gICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzRcIjsgfSB9XG4uZ2x5cGhpY29uLWdsb2JlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM1XCI7IH0gfVxuLmdseXBoaWNvbi13cmVuY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNlwiOyB9IH1cbi5nbHlwaGljb24tdGFza3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzdcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbHRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM4XCI7IH0gfVxuLmdseXBoaWNvbi1icmllZmNhc2UgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOVwiOyB9IH1cbi5nbHlwaGljb24tZnVsbHNjcmVlbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDBcIjsgfSB9XG4uZ2x5cGhpY29uLWRhc2hib2FyZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQxXCI7IH0gfVxuLmdseXBoaWNvbi1wYXBlcmNsaXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MlwiOyB9IH1cbi5nbHlwaGljb24taGVhcnQtZW1wdHkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxpbmsgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ0XCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NVwiOyB9IH1cbi5nbHlwaGljb24tcHVzaHBpbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDZcIjsgfSB9XG4uZ2x5cGhpY29uLXVzZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ4XCI7IH0gfVxuLmdseXBoaWNvbi1nYnAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OVwiOyB9IH1cbi5nbHlwaGljb24tc29ydCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdCAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MlwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlciAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTNcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXItYWx0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU0XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzLWFsdCB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTZcIjsgfSB9XG4uZ2x5cGhpY29uLXVuY2hlY2tlZCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU3XCI7IH0gfVxuLmdseXBoaWNvbi1leHBhbmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OFwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtZG93biAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTlcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLXVwICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYwXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctaW4gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MVwiOyB9IH1cbi5nbHlwaGljb24tZmxhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1vdXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYzXCI7IH0gfVxuLmdseXBoaWNvbi1uZXctd2luZG93ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NFwiOyB9IH1cbi5nbHlwaGljb24tcmVjb3JkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY2XCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2N1wiOyB9IH1cbi5nbHlwaGljb24tc2F2ZWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjhcIjsgfSB9XG4uZ2x5cGhpY29uLWltcG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY5XCI7IH0gfVxuLmdseXBoaWNvbi1leHBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MFwiOyB9IH1cbi5nbHlwaGljb24tc2VuZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1kaXNrICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcyXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3M1wiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXJlbW92ZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzRcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc1XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktb3BlbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NlwiOyB9IH1cbi5nbHlwaGljb24tY3JlZGl0LWNhcmQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzdcIjsgfSB9XG4uZ2x5cGhpY29uLXRyYW5zZmVyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc4XCI7IH0gfVxuLmdseXBoaWNvbi1jdXRsZXJ5ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OVwiOyB9IH1cbi5nbHlwaGljb24taGVhZGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODBcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbXByZXNzZWQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgxXCI7IH0gfVxuLmdseXBoaWNvbi1lYXJwaG9uZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MlwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUtYWx0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODNcIjsgfSB9XG4uZ2x5cGhpY29uLXRvd2VyICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg0XCI7IH0gfVxuLmdseXBoaWNvbi1zdGF0cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NVwiOyB9IH1cbi5nbHlwaGljb24tc2QtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODZcIjsgfSB9XG4uZ2x5cGhpY29uLWhkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg3XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJ0aXRsZXMgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtc3RlcmVvICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLWRvbGJ5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC01LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNi0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTctMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkzXCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5cmlnaHQtbWFyayAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NFwiOyB9IH1cbi5nbHlwaGljb24tcmVnaXN0cmF0aW9uLW1hcmsgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTVcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLWRvd25sb2FkICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk3XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC11cGxvYWQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OFwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1jb25pZmVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtZGVjaWR1b3VzICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAwXCI7IH0gfVxuLmdseXBoaWNvbi1jZCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZS1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDJcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4tZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAzXCI7IH0gfVxuLmdseXBoaWNvbi1sZXZlbC11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNFwiOyB9IH1cbi5nbHlwaGljb24tY29weSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXBhc3RlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA2XCI7IH0gfVxuLy8gVGhlIGZvbGxvd2luZyAyIEdseXBoaWNvbnMgYXJlIG9taXR0ZWQgZm9yIHRoZSB0aW1lIGJlaW5nIGJlY2F1c2Vcbi8vIHRoZXkgY3VycmVudGx5IHVzZSBVbmljb2RlIGNvZGVwb2ludHMgdGhhdCBhcmUgb3V0c2lkZSB0aGVcbi8vIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKS4gT2xkZXIgYnVnZ3kgdmVyc2lvbnMgb2YgV2ViS2l0IGNhbid0IGhhbmRsZVxuLy8gbm9uLUJNUCBjb2RlcG9pbnRzIGluIENTUyBzdHJpbmcgZXNjYXBlcywgYW5kIHRodXMgY2FuJ3QgZGlzcGxheSB0aGVzZSB0d28gaWNvbnMuXG4vLyBOb3RhYmx5LCB0aGUgYnVnIGFmZmVjdHMgc29tZSBvbGRlciB2ZXJzaW9ucyBvZiB0aGUgQW5kcm9pZCBCcm93c2VyLlxuLy8gTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMTA2XG4vLyAuZ2x5cGhpY29uLWRvb3IgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjZhYVwiOyB9IH1cbi8vIC5nbHlwaGljb24ta2V5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNTExXCI7IH0gfVxuLmdseXBoaWNvbi1hbGVydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwOVwiOyB9IH1cbi5nbHlwaGljb24tZXF1YWxpemVyICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTBcIjsgfSB9XG4uZ2x5cGhpY29uLWtpbmcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjExXCI7IH0gfVxuLmdseXBoaWNvbi1xdWVlbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMlwiOyB9IH1cbi5nbHlwaGljb24tcGF3biAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTNcIjsgfSB9XG4uZ2x5cGhpY29uLWJpc2hvcCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE0XCI7IH0gfVxuLmdseXBoaWNvbi1rbmlnaHQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNVwiOyB9IH1cbi5nbHlwaGljb24tYmFieS1mb3JtdWxhICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTZcIjsgfSB9XG4uZ2x5cGhpY29uLXRlbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNmZhXCI7IH0gfVxuLmdseXBoaWNvbi1ibGFja2JvYXJkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOFwiOyB9IH1cbi5nbHlwaGljb24tYmVkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTlcIjsgfSB9XG4uZ2x5cGhpY29uLWFwcGxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmOGZmXCI7IH0gfVxuLmdseXBoaWNvbi1lcmFzZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyMVwiOyB9IH1cbi5nbHlwaGljb24taG91cmdsYXNzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIzMWJcIjsgfSB9XG4uZ2x5cGhpY29uLWxhbXAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIzXCI7IH0gfVxuLmdseXBoaWNvbi1kdXBsaWNhdGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNFwiOyB9IH1cbi5nbHlwaGljb24tcGlnZ3ktYmFuayAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjVcIjsgfSB9XG4uZ2x5cGhpY29uLXNjaXNzb3JzICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI2XCI7IH0gfVxuLmdseXBoaWNvbi1iaXRjb2luICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24tYnRjICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXhidCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi15ZW4gICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tanB5ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YmxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1ydWIgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tc2NhbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMxXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHktdGFzdGVkICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMlwiOyB9IH1cbi5nbHlwaGljb24tZWR1Y2F0aW9uICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzNcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi1ob3Jpem9udGFsICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM0XCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24tdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1oYW1idXJnZXIgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzZcIjsgfSB9XG4uZ2x5cGhpY29uLW1vZGFsLXdpbmRvdyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM3XCI7IH0gfVxuLmdseXBoaWNvbi1vaWwgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOFwiOyB9IH1cbi5nbHlwaGljb24tZ3JhaW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzlcIjsgfSB9XG4uZ2x5cGhpY29uLXN1bmdsYXNzZXMgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQwXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LXNpemUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1jb2xvciAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDJcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtYmFja2dyb3VuZCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQzXCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdG9wICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWJvdHRvbSAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDVcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ob3Jpem9udGFseyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ2XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0N1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXZlcnRpY2FsICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDhcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ5XCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1yaWdodCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MFwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtbGVmdCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWJvdHRvbSAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUyXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS10b3AgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1M1wiOyB9IH1cbi5nbHlwaGljb24tY29uc29sZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXN1cGVyc2NyaXB0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU1XCI7IH0gfVxuLmdseXBoaWNvbi1zdWJzY3JpcHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NlwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1sZWZ0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTdcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU4XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWRvd24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OVwiOyB9IH1cbi5nbHlwaGljb24tbWVudS11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNjBcIjsgfSB9XG4iLCIvL1xuLy8gU2NhZmZvbGRpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLlxuLy8gRm9yIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxuLy8gaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2RvY3MvMy40L2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZ1xuKiB7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuXG5cbi8vIEJvZHkgcmVzZXRcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBSZXNldCBmb250cyBmb3IgcmVsZXZhbnQgZWxlbWVudHNcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHRhYi1mb2N1cztcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBXZSByZXNldCB0aGlzIGhlcmUgYmVjYXVzZSBwcmV2aW91c2x5IE5vcm1hbGl6ZSBoYWQgbm8gYGZpZ3VyZWAgbWFyZ2lucy4gVGhpc1xuLy8gZW5zdXJlcyB3ZSBkb24ndCBicmVhayBhbnlvbmUncyB1c2Ugb2YgdGhlIGVsZW1lbnQuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBJbWFnZXNcblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4uaW1nLXJlc3BvbnNpdmUge1xuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbn1cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4uaW1nLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIGlzIG1peGluLWVkIGludG8gdGh1bWJuYWlscy5sZXNzIGZvciBgLnRodW1ibmFpbGAuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZShpbmxpbmUtYmxvY2spO1xufVxuXG4vLyBQZXJmZWN0IGNpcmNsZVxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IC8vIHNldCByYWRpdXMgaW4gcGVyY2VudHNcbn1cblxuXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1ib3JkZXI7XG59XG5cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuXG5cbi8vIGlPUyBcImNsaWNrYWJsZSBlbGVtZW50c1wiIGZpeCBmb3Igcm9sZT1cImJ1dHRvblwiXG4vL1xuLy8gRml4ZXMgXCJjbGlja2FiaWxpdHlcIiBpc3N1ZSAoYW5kIG1vcmUgZ2VuZXJhbGx5LCB0aGUgZmlyaW5nIG9mIGV2ZW50cyBzdWNoIGFzIGZvY3VzIGFzIHdlbGwpXG4vLyBmb3IgdHJhZGl0aW9uYWxseSBub24tZm9jdXNhYmxlIGVsZW1lbnRzIHdpdGggcm9sZT1cImJ1dHRvblwiXG4vLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4iLCIvL1xuLy8gVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBIZWFkaW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGhlYWRpbmdzLXNtYWxsLWNvbG9yO1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNjUlO1xuICB9XG59XG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgfVxufVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgxOyB9XG5oMiwgLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG5oMywgLmgzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgzOyB9XG5oNCwgLmg0IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg0OyB9XG5oNSwgLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG5oNiwgLmg2IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg2OyB9XG5cblxuLy8gQm9keSB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnAge1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG59XG5cbi5sZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6IGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAxLjE1KSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgfVxufVxuXG5cbi8vIEVtcGhhc2lzICYgbWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBFeDogKDEycHggc21hbGwgZm9udCAvIDE0cHggYmFzZSBmb250KSAqIDEwMCUgPSBhYm91dCA4NSVcbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiBmbG9vcigoMTAwJSAqICRmb250LXNpemUtc21hbGwgLyAkZm9udC1zaXplLWJhc2UpKTtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRlLXdhcm5pbmctYmc7XG59XG5cbi8vIEFsaWdubWVudFxuLnRleHQtbGVmdCAgICAgICAgICAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4udGV4dC1yaWdodCAgICAgICAgICB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4udGV4dC1jZW50ZXIgICAgICAgICB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLnRleHQtanVzdGlmeSAgICAgICAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4udGV4dC1ub3dyYXAgICAgICAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLy8gVHJhbnNmb3JtYXRpb25cbi50ZXh0LWxvd2VyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuLnRleHQtdXBwZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4udGV4dC1jYXBpdGFsaXplICAgICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbn1cblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJHN0YXRlLWluZm8tdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2FybmluZycsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWRhbmdlcicsICRzdGF0ZS1kYW5nZXItdGV4dCk7XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcbi8vIEZvciBub3cgd2UnbGwgbGVhdmUgdGhlc2UgYWxvbmdzaWRlIHRoZSB0ZXh0IGNsYXNzZXMgdW50aWwgdjQgd2hlbiB3ZSBjYW5cbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cbi5iZy1wcmltYXJ5IHtcbiAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcbiAgLy8gYXV0b21hdGljYWxseS5cbiAgY29sb3I6ICNmZmY7XG59XG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXN1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1pbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctd2FybmluZycsICRzdGF0ZS13YXJuaW5nLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFBhZ2UgaGVhZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWhlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSk7XG4gIG1hcmdpbjogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDIpIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vLyBMaXN0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVbm9yZGVyZWQgYW5kIE9yZGVyZWQgbGlzdHNcbnVsLFxub2wge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBMaXN0IG9wdGlvbnNcblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4vLyBEZXNjcmlwdGlvbiBMaXN0c1xuZGwge1xuICBtYXJnaW4tdG9wOiAwOyAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbn1cbmR0LFxuZGQge1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cblxuLmRsLWhvcml6b250YWwge1xuICBkZCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGRsLWhvcml6b250YWwtYnJlYWtwb2ludCkge1xuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6ICgkZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdztcbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkbC1ob3Jpem9udGFsLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgQGV4dGVuZCAudGV4dC11cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG5cbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIHNtYWxsIGFuZCAuc21hbGwgYXMgb2YgdjMuMS4wXG4gIC8vIENvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NjBcbiAgZm9vdGVyLFxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHBvc2l0ZSBhbGlnbm1lbnQgb2YgYmxvY2txdW90ZVxuLy9cbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cbi5ibG9ja3F1b3RlLXJldmVyc2UsXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAwO1xuXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgJjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcMDBBMCBcXDIwMTRcIjsgLy8gbmJzcCwgZW0gZGFzaFxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRyZXNzZXNcbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuIiwiLy9cbi8vIENvZGUgKGlubGluZSBhbmQgYmxvY2spXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG59XG5cbi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIC4yNSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgfVxufVxuXG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbi5yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuLnJvdy1uby1ndXR0ZXJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvL1xuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xuXG4gIC8vIFRhYmxlIGNlbGwgc2l6aW5nXG4gIC8vXG4gIC8vIFJlc2V0IGRlZmF1bHQgdGFibGUgYmVoYXZpb3JcblxuICBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gICAgZGlzcGxheTogdGFibGUtY29sdW1uO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgdGQsXG4gIHRoIHtcbiAgICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYzsgLy8gUHJldmVudCBib3JkZXIgaGlkaW5nIGluIEZpcmVmb3ggYW5kIElFOS0xMSAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2MjMpXG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIEJhc2VsaW5lIHN0eWxlc1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIC8vIENlbGxzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcbiAgPiBjYXB0aW9uICsgdGhlYWQsXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTmVzdGluZ1xuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHRoZWFkID4gdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbi8vIEdlbmVyYXRlIHRoZSBjb250ZXh0dWFsIHZhcmlhbnRzXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnYWN0aXZlJywgJHRhYmxlLWJnLWFjdGl2ZSk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdpbmZvJywgJHN0YXRlLWluZm8tYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBXcmFwIHlvdXIgdGFibGVzIGluIGAudGFibGUtcmVzcG9uc2l2ZWAgYW5kIHdlJ2xsIG1ha2UgdGhlbSBtb2JpbGUgZnJpZW5kbHlcbi8vIGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgPDc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXRcbi8vIHdpbGwgZGlzcGxheSBub3JtYWxseS5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBtaW4taGVpZ2h0OiAuMDElOyAvLyBXb3JrYXJvdW5kIGZvciBJRTkgYnVnIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNDgzNylcbiAgb3ZlcmZsb3cteDogYXV0bztcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAuNzUpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXG4gICAgPiAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIC8vIENocm9tZSBhbmQgRmlyZWZveCBzZXQgYSBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gc28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgaXQgYmVoYXZlcyBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OS5cbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuXG4vLyBOb3JtYWxpemUgZm9ybSBjb250cm9sc1xuLy9cbi8vIFdoaWxlIG1vc3Qgb2Ygb3VyIGZvcm0gc3R5bGVzIHJlcXVpcmUgZXh0cmEgY2xhc3Nlcywgc29tZSBiYXNpYyBub3JtYWxpemF0aW9uXG4vLyBpcyByZXF1aXJlZCB0byBlbnN1cmUgb3B0aW11bSBkaXNwbGF5IHdpdGggb3Igd2l0aG91dCB0aG9zZSBjbGFzc2VzIHRvIGJldHRlclxuLy8gYWRkcmVzcyBicm93c2VyIGluY29uc2lzdGVuY2llcy5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cbiAgLy8gU2VhcmNoIGlucHV0cyBpbiBpT1NcbiAgLy9cbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbjogNHB4IDAgMDtcbiAgbWFyZ2luLXRvcDogMXB4IFxcOTsgLy8gSUU4LTlcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAvLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXG4gIC8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4gIC8vXG4gIC8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gTWFrZSByYW5nZSBpbnB1dHMgYmVoYXZlIGxpa2UgdGV4dHVhbCBmb3JtIGNvbnRyb2xzXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIE1ha2UgbXVsdGlwbGUgc2VsZWN0IGVsZW1lbnRzIGhlaWdodCBub3QgZml4ZWRcbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvY3VzIGZvciBmaWxlLCByYWRpbywgYW5kIGNoZWNrYm94XG5pbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB7XG4gIEBpbmNsdWRlIHRhYi1mb2N1cztcbn1cblxuLy8gQWRqdXN0IG91dHB1dCBlbGVtZW50XG5vdXRwdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG59XG5cblxuLy8gQ29tbW9uIGZvcm0gY29udHJvbHNcbi8vXG4vLyBTaGFyZWQgc2l6ZSBhbmQgdHlwZSByZXNldHMgZm9yIGZvcm0gY29udHJvbHMuIEFwcGx5IGAuZm9ybS1jb250cm9sYCB0byBhbnlcbi8vIG9mIHRoZSBmb2xsb3dpbmcgZm9ybSBjb250cm9sczpcbi8vXG4vLyBzZWxlY3Rcbi8vIHRleHRhcmVhXG4vLyBpbnB1dFt0eXBlPVwidGV4dFwiXVxuLy8gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGVcIl1cbi8vIGlucHV0W3R5cGU9XCJtb250aFwiXVxuLy8gaW5wdXRbdHlwZT1cInRpbWVcIl1cbi8vIGlucHV0W3R5cGU9XCJ3ZWVrXCJdXG4vLyBpbnB1dFt0eXBlPVwibnVtYmVyXCJdXG4vLyBpbnB1dFt0eXBlPVwiZW1haWxcIl1cbi8vIGlucHV0W3R5cGU9XCJ1cmxcIl1cbi8vIGlucHV0W3R5cGU9XCJzZWFyY2hcIl1cbi8vIGlucHV0W3R5cGU9XCJ0ZWxcIl1cbi8vIGlucHV0W3R5cGU9XCJjb2xvclwiXVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTsgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnQgKGJhc2UgbGluZS1oZWlnaHQgKyBwYWRkaW5nICsgYm9yZGVyKVxuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiA8c2VsZWN0PnMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzKTtcblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cztcblxuICAvLyBQbGFjZWhvbGRlclxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcjtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmW2Rpc2FibGVkXSxcbiAgJltyZWFkb25seV0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogMTsgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NVxuICB9XG5cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGV4dGFyZWEmIHRvIHRleHRhcmVhLmZvcm0tY29udHJvbFxufVxuXG4vLyBSZXNldCBoZWlnaHQgZm9yIGB0ZXh0YXJlYWBzXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gU3BlY2lhbCBzdHlsZXMgZm9yIGlPUyB0ZW1wb3JhbCBpbnB1dHNcbi8vXG4vLyBJbiBNb2JpbGUgU2FmYXJpLCBzZXR0aW5nIGBkaXNwbGF5OiBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcbi8vIHRleHQgd2l0aGluIHRoZSBpbnB1dCB0byBiZWNvbWUgdmVydGljYWxseSBtaXNhbGlnbmVkLiBBcyBhIHdvcmthcm91bmQsIHdlXG4vLyBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsIGJ1dCBvbmx5XG4vLyBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuLy9cbi8vIE5vdGUgdGhhdCBhcyBvZiA5LjMsIGlPUyBkb2Vzbid0IHN1cHBvcnQgYHdlZWtgLlxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1zbSxcbiAgICAuaW5wdXQtZ3JvdXAtc20gJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICB9XG5cbiAgICAmLmlucHV0LWxnLFxuICAgIC5pbnB1dC1ncm91cC1sZyAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgLy8gVGhlc2UgYXJlIHVzZWQgb24gZWxlbWVudHMgd2l0aCA8bGFiZWw+IGRlc2NlbmRhbnRzXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDsgLy8gRW5zdXJlIHRoZSBpbnB1dCBkb2Vzbid0IGp1bXAgd2hlbiB0aGVyZSBpcyBubyB0ZXh0XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4ucmFkaW8taW5saW5lIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uY2hlY2tib3gtaW5saW5lIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogNHB4IFxcOTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xufVxuXG4ucmFkaW8gKyAucmFkaW8sXG4uY2hlY2tib3ggKyAuY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAtNXB4OyAvLyBNb3ZlIHVwIHNpYmxpbmcgcmFkaW9zIG9yIGNoZWNrYm94ZXMgZm9yIHRpZ2h0ZXIgc3BhY2luZ1xufVxuXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXG4ucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBUaGVzZSBhcmUgdXNlZCBkaXJlY3RseSBvbiA8bGFiZWw+c1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG4ucmFkaW8taW5saW5lICsgLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUgKyAuY2hlY2tib3gtaW5saW5lIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcbn1cblxuXG4vLyBTdGF0aWMgZm9ybSBjb250cm9sIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIGBwYCBlbGVtZW50IHRvIG1ha2UgYW55IHN0cmluZyBvZiB0ZXh0IGFsaWduIHdpdGggbGFiZWxzIGluXG4vLyBhIGhvcml6b250YWwgZm9ybSBsYXlvdXQuXG5cbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICRmb250LXNpemUtYmFzZSk7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICYuaW5wdXQtbGcsXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1zbScsICRpbnB1dC1oZWlnaHQtc21hbGwsICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbi5mb3JtLWdyb3VwLXNtIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLXNtYWxsKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKSAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICB9XG59XG5cbkBpbmNsdWRlIGlucHV0LXNpemUoJy5pbnB1dC1sZycsICRpbnB1dC1oZWlnaHQtbGFyZ2UsICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbi5mb3JtLWdyb3VwLWxnIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cbiAgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICB9XG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbiAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICAgIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWxhcmdlKTtcbiAgICBwYWRkaW5nOiAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKyAxKSAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZlZWRiYWNrIHN0YXRlc1xuLy9cbi8vIEFwcGx5IGNvbnRleHR1YWwgYW5kIHNlbWFudGljIHN0YXRlcyB0byBpbmRpdmlkdWFsIGZvcm0gY29udHJvbHMuXG5cbi5oYXMtZmVlZGJhY2sge1xuICAvLyBFbmFibGUgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIEVuc3VyZSBpY29ucyBkb24ndCBvdmVybGFwIHRleHRcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogKCRpbnB1dC1oZWlnaHQtYmFzZSAqIDEuMjUpO1xuICB9XG59XG4vLyBGZWVkYmFjayBpY29uIChyZXF1aXJlcyAuZ2x5cGhpY29uIGNsYXNzZXMpXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyOyAvLyBFbnN1cmUgaWNvbiBpcyBhYm92ZSBpbnB1dCBncm91cHNcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWJhc2U7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmlucHV0LWxnICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xufVxuLmlucHV0LXNtICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbi5pbnB1dC1ncm91cC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uZm9ybS1ncm91cC1zbSAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHdpZHRoOiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xufVxuXG4vLyBGZWVkYmFjayBzdGF0ZXNcbi5oYXMtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLXRleHQsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbn1cbi5oYXMtd2FybmluZyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLXRleHQsICRzdGF0ZS13YXJuaW5nLWJnKTtcbn1cbi5oYXMtZXJyb3Ige1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItdGV4dCwgJHN0YXRlLWRhbmdlci1iZyk7XG59XG5cbi8vIFJlcG9zaXRpb24gZmVlZGJhY2sgaWNvbiBpZiBpbnB1dCBoYXMgdmlzaWJsZSBsYWJlbCBhYm92ZVxuLmhhcy1mZWVkYmFjayBsYWJlbCB7XG5cbiAgJiB+IC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIHRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArIDUpOyAvLyBIZWlnaHQgb2YgdGhlIGBsYWJlbGAgYW5kIGl0cyBtYXJnaW5cbiAgfVxuICAmLnNyLW9ubHkgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBIZWxwIHRleHRcbi8vXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB5b3Ugd2lzaCB0byBjcmVhdGUgbGlnaHQgdGV4dCBmb3IgcGxhY2VtZW50IGltbWVkaWF0ZWx5XG4vLyBiZWxvdyBhIGZvcm0gY29udHJvbC4gVXNlIGZvciBnZW5lcmFsIGhlbHAsIGZvcm1hdHRpbmcsIG9yIGluc3RydWN0aW9uYWwgdGV4dC5cblxuLmhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jazsgLy8gYWNjb3VudCBmb3IgYW55IGVsZW1lbnQgdXNpbmcgaGVscC1ibG9ja1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAyNSUpOyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XG59XG5cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIGAubmF2YmFyLWZvcm1gIGluIG5hdmJhcnMubGVzcy5cblxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5mb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGZvcm0taW5saW5lIHtcblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gSW4gbmF2YmFyLWZvcm0sIGFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIC5pbnB1dC1ncm91cC1hZGRvbixcbiAgICAgIC5pbnB1dC1ncm91cC1idG4sXG4gICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5wdXQgZ3JvdXBzIG5lZWQgdGhhdCAxMDAlIHdpZHRoIHRob3VnaFxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLnJhZGlvLFxuICAgIC5jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gUmUtb3ZlcnJpZGUgdGhlIGZlZWRiYWNrIGljb24uXG4gICAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGZvcm0taW5saW5lYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4uZm9ybS1pbmxpbmUge1xuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcbn1cblxuXG5cbi8vIEhvcml6b250YWwgZm9ybXNcbi8vXG4vLyBIb3Jpem9udGFsIGZvcm1zIGFyZSBidWlsdCBvbiBncmlkIGNsYXNzZXMgYW5kIGFsbG93IHlvdSB0byBjcmVhdGUgZm9ybXMgd2l0aFxuLy8gbGFiZWxzIG9uIHRoZSBsZWZ0IGFuZCBpbnB1dHMgb24gdGhlIHJpZ2h0LlxuXG4uZm9ybS1ob3Jpem9udGFsIHtcblxuICAvLyBDb25zaXN0ZW50IHZlcnRpY2FsIGFsaWdubWVudCBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXNcbiAgLy9cbiAgLy8gTGFiZWxzIGFsc28gZ2V0IHNvbWUgcmVzZXQgc3R5bGVzLCBidXQgdGhhdCBpcyBzY29wZWQgdG8gYSBtZWRpYSBxdWVyeSBiZWxvdy5cbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUge1xuICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAvLyBBY2NvdW50IGZvciBwYWRkaW5nIHdlJ3JlIGFkZGluZyB0byBlbnN1cmUgdGhlIGFsaWdubWVudCBhbmQgb2YgaGVscCB0ZXh0XG4gIC8vIGFuZCBvdGhlciBjb250ZW50IGJlbG93IGl0ZW1zXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94IHtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKSk7XG4gIH1cblxuICAvLyBNYWtlIGZvcm0gZ3JvdXBzIGJlaGF2ZSBsaWtlIHJvd3NcbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93O1xuICB9XG5cbiAgLy8gUmVzZXQgc3BhY2luZyBhbmQgcmlnaHQgYWxpZ24gbGFiZWxzLCBidXQgc2NvcGUgdG8gbWVkaWEgcXVlcmllcyBzbyB0aGF0XG4gIC8vIGxhYmVscyBvbiBuYXJyb3cgdmlld3BvcnRzIHN0YWNrIHRoZSBzYW1lIGFzIGEgZGVmYXVsdCBmb3JtIGV4YW1wbGUuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpOyAvLyBEZWZhdWx0IHBhZGRpbmcgcGx1cyBhIGJvcmRlclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gc3RhdGVzXG4gIC8vXG4gIC8vIFJlcG9zaXRpb24gdGhlIGljb24gYmVjYXVzZSBpdCdzIG5vdyB3aXRoaW4gYSBncmlkIGNvbHVtbiBhbmQgY29sdW1ucyBoYXZlXG4gIC8vIGBwb3NpdGlvbjogcmVsYXRpdmU7YCBvbiB0aGVtLiBBbHNvIGFjY291bnRzIGZvciB0aGUgZ3JpZCBndXR0ZXIgcGFkZGluZy5cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICByaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxuXG4gIC8vIEZvcm0gZ3JvdXAgc2l6ZXNcbiAgLy9cbiAgLy8gUXVpY2sgdXRpbGl0eSBjbGFzcyBmb3IgYXBwbHlpbmcgYC5pbnB1dC1sZ2AgYW5kIGAuaW5wdXQtc21gIHN0eWxlcyB0byB0aGVcbiAgLy8gaW5wdXRzIGFuZCBsYWJlbHMgd2l0aGluIGEgYC5mb3JtLWdyb3VwYC5cbiAgLmZvcm0tZ3JvdXAtbGcge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAtc20ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgLmNvbnRyb2wtbGFiZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWJhc2UtdmVydGljYWwsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1iYXNlLCAkbGluZS1oZWlnaHQtYmFzZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoLjY1KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYnRuXG59XG5cbmEuYnRuIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi8vIFN1Y2Nlc3MgYXBwZWFycyBhcyBncmVlblxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLy8gSW5mbyBhcHBlYXJzIGFzIGJsdWUtZ3JlZW5cbi5idG4taW5mbyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4taW5mby1jb2xvciwgJGJ0bi1pbmZvLWJnLCAkYnRuLWluZm8tYm9yZGVyKTtcbn1cbi8vIFdhcm5pbmcgYXBwZWFycyBhcyBvcmFuZ2Vcbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4td2FybmluZy1jb2xvciwgJGJ0bi13YXJuaW5nLWJnLCAkYnRuLXdhcm5pbmctYm9yZGVyKTtcbn1cbi8vIERhbmdlciBhbmQgZXJyb3IgYXBwZWFyIGFzIHJlZFxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cblxuLy8gTGluayBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJ1dHRvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1sZyB7XG4gIC8vIGxpbmUtaGVpZ2h0OiBlbnN1cmUgZXZlbi1udW1iZXJlZCBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gbGFyZ2UgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cbi5idG4tc20ge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIHByb3BlciBoZWlnaHQgb2YgYnV0dG9uIG5leHQgdG8gc21hbGwgaW5wdXRcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy14cy12ZXJ0aWNhbCwgJHBhZGRpbmcteHMtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYnRuLWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuXG5cbi8vIEJsb2NrIGJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb21wb25lbnQgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGVhZHMgdXAhXG4vL1xuLy8gV2UgZG9uJ3QgdXNlIHRoZSBgLm9wYWNpdHkoKWAgbWl4aW4gaGVyZSBzaW5jZSBpdCBjYXVzZXMgYSBidWcgd2l0aCB0ZXh0XG4vLyBmaWVsZHMgaW4gSUU3LTguIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzU1Mi5cblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjE1cyBsaW5lYXIpO1xuXG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmluICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdHImLmluIHRvIHRyLmNvbGxhcHNlLmluXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0Ym9keSYuaW4gdG8gdGJvZHkuY29sbGFwc2UuaW5cbn1cblxudHIuY29sbGFwc2UuaW4gICAgeyBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxudGJvZHkuY29sbGFwc2UuaW4geyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7IH1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShoZWlnaHQsIHZpc2liaWxpdHkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKC4zNXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihlYXNlKTtcbn1cbiIsIi8vXG4vLyBEcm9wZG93biBtZW51c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEcm9wZG93biBhcnJvdy9jYXJldFxuLmNhcmV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGgtYmFzZSBkYXNoZWQ7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGRpdilcbi5kcm9wdXAsXG4uZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIFByZXZlbnQgdGhlIGZvY3VzIG9uIHRoZSBkcm9wZG93biB0b2dnbGUgd2hlbiBjbG9zaW5nIGRyb3Bkb3duc1xuLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51ICh1bClcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDE2MHB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgbWFyZ2luOiAycHggMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjsgLy8gSUU4IGZhbGxiYWNrXG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIC4xNzUpKTtcblxuICAvLyBBbGlnbnMgdGhlIGRyb3Bkb3duIG1lbnUgdG8gcmlnaHRcbiAgLy9cbiAgLy8gRGVwcmVjYXRlZCBhcyBvZiAzLjEuMCBpbiBmYXZvciBvZiBgLmRyb3Bkb3duLW1lbnUtW2Rpcl1gXG4gICYucHVsbC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiB0aGUgZHJvcGRvd25cbiAgLmRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgfVxuXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuICA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3RpdmUgc3RhdGVcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtYmc7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBzdGF0ZVxuLy9cbi8vIEdyYXkgb3V0IHRleHQgYW5kIGVuc3VyZSB0aGUgaG92ZXIvZm9jdXMgc3RhdGUgcmVtYWlucyBncmF5XG5cbi5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE51a2UgaG92ZXIvZm9jdXMgZWZmZWN0c1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRcbiAgICBAaW5jbHVkZSByZXNldC1maWx0ZXI7XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4ub3BlbiB7XG4gIC8vIFNob3cgdGhlIG1lbnVcbiAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXG4gID4gYSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBNZW51IHBvc2l0aW9uaW5nXG4vL1xuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbn1cbi8vIFdpdGggdjMsIHdlIGVuYWJsZWQgYXV0by1mbGlwcGluZyBpZiB5b3UgaGF2ZSBhIGRyb3Bkb3duIHdpdGhpbiBhIHJpZ2h0XG4vLyBhbGlnbmVkIG5hdiBjb21wb25lbnQuIFRvIGVuYWJsZSB0aGUgdW5kb2luZyBvZiB0aGF0LCB3ZSBwcm92aWRlIGFuIG92ZXJyaWRlXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxuLy9cbi8vIFRoaXMgaXMgb25seSBmb3IgbGVmdC1hbGlnbmluZyBhIGRyb3Bkb3duIG1lbnUgd2l0aGluIGEgYC5uYXZiYXItcmlnaHRgIG9yXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMjBweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxuLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICgkemluZGV4LWRyb3Bkb3duIC0gMTApO1xufVxuXG4vLyBSaWdodCBhbGlnbmVkIGRyb3Bkb3duc1xuLnB1bGwtcmlnaHQgPiAuZHJvcGRvd24tbWVudSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQsIGJyby5cbi8vIFRPRE86IGFic3RyYWN0IHRoaXMgc28gdGhhdCB0aGUgbmF2YmFyIGZpeGVkIHN0eWxlcyBhcmUgbm90IHBsYWNlZCBoZXJlP1xuXG4uZHJvcHVwLFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcbiAgLmNhcmV0IHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gIH1cbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVpdGVyYXRlIHBlciBuYXZiYXIubGVzcyBhbmQgdGhlIG1vZGlmaWVkIGNvbXBvbmVudCBhbGlnbm1lbnQgdGhlcmUuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXG4gICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cbiAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7IHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4uYnRuLWdyb3VwIHtcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyAvLyBPZmZzZXQgdGhlIGZpcnN0IGNoaWxkJ3MgbWFyZ2luXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC5idG4sXG4gIC5idG4tZ3JvdXAsXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gU2V0IGNvcm5lcnMgaW5kaXZpZHVhbCBiZWNhdXNlIHNvbWV0aW1lcyBhIHNpbmdsZSBidXR0b24gY2FuIGJlIGluIGEgLmJ0bi1ncm91cCBhbmQgd2UgbmVlZCA6Zmlyc3QtY2hpbGQgYW5kIDpsYXN0LWNoaWxkIHRvIGJvdGggbWF0Y2hcbi5idG4tZ3JvdXAgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gICY6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi8vIE5lZWQgLmRyb3Bkb3duLXRvZ2dsZSBzaW5jZSA6bGFzdC1jaGlsZCBkb2Vzbid0IGFwcGx5LCBnaXZlbiB0aGF0IGEgLmRyb3Bkb3duLW1lbnUgaXMgdXNlZCBpbW1lZGlhdGVseSBhZnRlciBpdFxuLmJ0bi1ncm91cCA+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBDdXN0b20gZWRpdHMgZm9yIGluY2x1ZGluZyBidG4tZ3JvdXBzIHdpdGhpbiBidG4tZ3JvdXBzICh1c2VmdWwgZm9yIGluY2x1ZGluZyBkcm9wZG93biBidXR0b25zIHdpdGhpbiBhIGJ0bi1ncm91cClcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIE9uIGFjdGl2ZSBhbmQgb3BlbiwgZG9uJ3Qgc2hvdyBvdXRsaW5lXG4uYnRuLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXhzID4gLmJ0biB7IEBleHRlbmQgLmJ0bi14czsgfVxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSBsaW5lIGJldHdlZW4gYnV0dG9ucyBzb21lIGRlcHRoXG4uYnRuLWdyb3VwID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xufVxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgYW5kIHNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gUmVwb3NpdGlvbiB0aGUgY2FyZXRcbi5idG4gLmNhcmV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4vLyBDYXJldHMgaW4gb3RoZXIgYnV0dG9uIHNpemVzXG4uYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZSAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuLy8gVXBzaWRlIGRvd24gY2FyZXRzIGZvciAuZHJvcHVwXG4uZHJvcHVwIC5idG4tbGcgLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiAwICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2U7XG59XG5cblxuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIENsZWFyIGZsb2F0cyBzbyBkcm9wZG93biBtZW51cyBjYW4gYmUgcHJvcGVybHkgcGxhY2VkXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgPiAuYnRuIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxuXG4gID4gLmJ0biArIC5idG4sXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cblxuXG4vLyBKdXN0aWZpZWQgYnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWdyb3VwLWp1c3RpZmllZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDElO1xuICB9XG4gID4gLmJ0bi1ncm91cCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bi1ncm91cCAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0ge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIElucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGRyb3Bkb3duc1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLy8gcHJldmVudCBpbnB1dCBncm91cHMgZnJvbSBpbmhlcml0aW5nIGJvcmRlciBzdHlsZXMgZnJvbSB0YWJsZSBjZWxscyB3aGVuIHBsYWNlZCB3aXRoaW4gYSB0YWJsZVxuXG4gIC8vIFVuZG8gcGFkZGluZyBhbmQgZmxvYXQgb2YgZ3JpZCBjbGFzc2VzXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIC8vIElFOSBmdWJhcnMgdGhlIHBsYWNlaG9sZGVyIGF0dHJpYnV0ZSBpbiB0ZXh0IGlucHV0cyBhbmQgdGhlIGFycm93cyBvblxuICAgIC8vIHNlbGVjdCBlbGVtZW50cyBpbiBpbnB1dCBncm91cHMuIFRvIGZpeCBpdCwgd2UgZmxvYXQgdGhlIGlucHV0LiBEZXRhaWxzOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1NjEjaXNzdWVjb21tZW50LTI4OTM2ODU1XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmcgb3B0aW9uc1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtbGc7XG59XG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1zbTtcbn1cblxuXG4vLyBEaXNwbGF5IGFzIHRhYmxlLWNlbGxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4sXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4vLyBBZGRvbiBhbmQgYWRkb24gd3JhcHBlciBmb3IgYnV0dG9uc1xuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHdpZHRoOiAxJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuXG4vLyBUZXh0IGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIFNpemluZ1xuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgfVxuICAmLmlucHV0LWxnIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgfVxuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4vLyBCdXR0b24gaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBKYW5raWx5IHByZXZlbnQgaW5wdXQgYnV0dG9uIGdyb3VwcyBmcm9tIHdyYXBwaW5nIHdpdGggYHdoaXRlLXNwYWNlYCBhbmRcbiAgLy8gYGZvbnQtc2l6ZWAgaW4gY29tYmluYXRpb24gd2l0aCBgaW5saW5lLWJsb2NrYCBvbiBidXR0b25zLlxuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBzcGFjaW5nLCBwb3NpdGlvbiBmb3IgYnJpbmdpbmcgaG92ZXJlZC9mb2N1c2VkL2FjdGl2ZWRcbiAgLy8gZWxlbWVudCBhYm92ZSB0aGUgc2libGluZ3MuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgYnV0dG9uIHRvIHRoZSBmcm9udFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiB0byBvbmx5IGhhdmUgYSAxcHggYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBOYXZzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYge1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdWwvb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlIHNldHMgdGV4dCB0byBncmF5IGFuZCBudWtlcyBob3Zlci90YWIgZWZmZWN0c1xuICAgICYuZGlzYWJsZWQgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE9wZW4gZHJvcGRvd25zXG4gIC5vcGVuID4gYSB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1saW5rLWhvdmVyLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBOYXYgZGl2aWRlcnMgKGRlcHJlY2F0ZWQgd2l0aCB2My4wLjEpXG4gIC8vXG4gIC8vIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiByZW1vdmVkIGluIHYzIHdpdGggdGhlIGRyb3BwaW5nIG9mIGAubmF2LWxpc3RgLCBidXRcbiAgLy8gd2UgbWlzc2VkIGl0LiBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCB0aGlzIGFueXdoZXJlLCBidXQgaW4gdGhlIGludGVyZXN0XG4gIC8vIG9mIG1haW50YWluaW5nIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgaW4gY2FzZSB5b3UgdXNlIGl0LCBpdCdzIGRlcHJlY2F0ZWQuXG4gIC5uYXYtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgbmF2LWRpdmlkZXI7XG4gIH1cblxuICAvLyBQcmV2ZW50IElFOCBmcm9tIG1pc3BsYWNpbmcgaW1nc1xuICAvL1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvaXNzdWVzLzk4NCNpc3N1ZWNvbW1lbnQtMzk4NTk4OVxuICA+IGxpID4gYSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cblxuLy8gVGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHaXZlIHRoZSB0YWJzIHNvbWV0aGluZyB0byBzaXQgb25cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxuICAgID4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGUsIGFuZCBpdHMgOmhvdmVyIHRvIG92ZXJyaWRlIG5vcm1hbCA6aG92ZXJcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBwdWxsaW5nIHRoaXMgaW4gbWFpbmx5IGZvciBsZXNzIHNob3J0aGFuZFxuICAmLm5hdi1qdXN0aWZpZWQge1xuICAgIEBleHRlbmQgLm5hdi1qdXN0aWZpZWQ7XG4gICAgQGV4dGVuZCAubmF2LXRhYnMtanVzdGlmaWVkO1xuICB9XG59XG5cblxuLy8gUGlsbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5uYXYtcGlsbHMge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC8vIExpbmtzIHJlbmRlcmVkIGFzIHBpbGxzXG4gICAgPiBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdGFja2VkIHBpbGxzXG4ubmF2LXN0YWNrZWQge1xuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBubyBuZWVkIGZvciB0aGlzIGdhcCBiZXR3ZWVuIG5hdiBpdGVtc1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdiB2YXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBKdXN0aWZpZWQgbmF2IGxpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgPiBhIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBNb3ZlIGJvcmRlcnMgdG8gYW5jaG9ycyBpbnN0ZWFkIG9mIGJvdHRvbSBvZiBsaXN0XG4vL1xuLy8gTWl4aW4gZm9yIGFkZGluZyBvbiB0b3AgdGhlIHNoYXJlZCBgLm5hdi1qdXN0aWZpZWRgIHN0eWxlcyBmb3Igb3VyIHRhYnNcbi5uYXYtdGFicy1qdXN0aWZpZWQge1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gID4gbGkgPiBhIHtcbiAgICAvLyBPdmVycmlkZSBtYXJnaW4gZnJvbSAubmF2LXRhYnNcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEsXG4gICAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFNwZWNpZmljIGRyb3Bkb3duc1xuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgLy8gbWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIE5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBhbmQgYmFzZSBjbGFzc1xuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQ7IC8vIEVuc3VyZSBhIG5hdmJhciBhbHdheXMgc2hvd3MgKGUuZy4sIHdpdGhvdXQgYSAubmF2YmFyLWJyYW5kIGluIGNvbGxhcHNlZCBtb2RlKVxuICBtYXJnaW4tYm90dG9tOiAkbmF2YmFyLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gIC8vIFByZXZlbnQgZmxvYXRzIGZyb20gYnJlYWtpbmcgdGhlIG5hdmJhclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBoZWFkaW5nXG4vL1xuLy8gR3JvdXBzIGAubmF2YmFyLWJyYW5kYCBhbmQgYC5uYXZiYXItdG9nZ2xlYCBpbnRvIGEgc2luZ2xlIGNvbXBvbmVudCBmb3IgZWFzeVxuLy8gc3R5bGluZyBvZiByZXNwb25zaXZlIGFzcGVjdHMuXG5cbi5uYXZiYXItaGVhZGVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBjb2xsYXBzZSAoYm9keSlcbi8vXG4vLyBHcm91cCB5b3VyIG5hdmJhciBjb250ZW50IGludG8gdGhpcyBmb3IgZWFzeSBjb2xsYXBzaW5nIGFuZCBleHBhbmRpbmcgYWNyb3NzXG4vLyB2YXJpb3VzIGRldmljZSBzaXplcy4gQnkgZGVmYXVsdCwgdGhpcyBjb250ZW50IGlzIGNvbGxhcHNlZCB3aGVuIDw3NjhweCwgYnV0XG4vLyB3aWxsIGV4cGFuZCBwYXN0IHRoYXQgZm9yIGEgaG9yaXpvbnRhbCBkaXNwbGF5LlxuLy9cbi8vIFRvIHN0YXJ0IChvbiBtb2JpbGUgZGV2aWNlcykgdGhlIG5hdmJhciBsaW5rcywgZm9ybXMsIGFuZCBidXR0b25zIGFyZSBzdGFja2VkXG4vLyB2ZXJ0aWNhbGx5IGFuZCBpbmNsdWRlIGEgYG1heC1oZWlnaHRgIHRvIG92ZXJmbG93IGluIGNhc2UgeW91IGhhdmUgdG9vIG11Y2hcbi8vIGNvbnRlbnQgZm9yIHRoZSB1c2VyJ3Mgdmlld3BvcnQuXG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICYuaW4ge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmluIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gVW5kbyB0aGUgY29sbGFwc2Ugc2lkZSBwYWRkaW5nIGZvciBuYXZiYXJzIHdpdGggY29udGFpbmVycyB0byBlbnN1cmVcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cbiAgICAubmF2YmFyLWZpeGVkLXRvcCAmLFxuICAgIC5uYXZiYXItc3RhdGljLXRvcCAmLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1heC1oZWlnaHQ6ICRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDtcblxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogJHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gRml4IHRoZSB0b3AvYm90dG9tIG5hdmJhcnMgd2hlbiBzY3JlZW4gcmVhbCBlc3RhdGUgc3VwcG9ydHMgaXRcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXItZml4ZWQ7XG5cbiAgLy8gVW5kbyB0aGUgcm91bmRlZCBjb3JuZXJzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4ubmF2YmFyLWZpeGVkLXRvcCB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG92ZXJyaWRlIC5uYXZiYXIgZGVmYXVsdHNcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xufVxuXG5cbi8vIEJvdGggbmF2YmFyIGhlYWRlciBhbmQgY29sbGFwc2Vcbi8vXG4vLyBXaGVuIGEgY29udGFpbmVyIGlzIHByZXNlbnQsIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGhlYWRlciBhbmQgY29sbGFwc2UuXG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgPiAubmF2YmFyLWhlYWRlcixcbiAgPiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBOYXZiYXIgYWxpZ25tZW50IG9wdGlvbnNcbi8vXG4vLyBEaXNwbGF5IHRoZSBuYXZiYXIgYWNyb3NzIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBvciBmaXhlZCBpdCB0byB0aGUgdG9wIG9yXG4vLyBib3R0b20gb2YgdGhlIHBhZ2UuXG5cbi8vIFN0YXRpYyB0b3AgKHVuZml4ZWQsIGJ1dCAxMDAlIHdpZGUpIG5hdmJhclxuLm5hdmJhci1zdGF0aWMtdG9wIHtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXI7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcblxuLm5hdmJhci1icmFuZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyICYsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0b2dnbGVcbi8vXG4vLyBDdXN0b20gYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgYC5uYXZiYXItY29sbGFwc2VgLCBwb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZVxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxuICAvLyBzdHlsZXMgdG8gYDpmb2N1c2AuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBCYXJzXG4gIC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB9XG4gIC5pY29uLWJhciArIC5pY29uLWJhciB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdiBsaW5rc1xuLy9cbi8vIEJ1aWxkcyBvbiB0b3Agb2YgdGhlIGAubmF2YCBjb21wb25lbnRzIHdpdGggaXRzIG93biBtb2RpZmllciBjbGFzcyB0byBtYWtlXG4vLyB0aGUgbmF2IHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgaG9yaXpvbnRhbCBuYXYgKGFib3ZlIDc2OHB4KS5cblxuLm5hdmJhci1uYXYge1xuICBtYXJnaW46ICgkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgLyAyKSAoLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsKTtcblxuICA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICA+IGxpID4gYSxcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcbiAgICAgIH1cbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBmb3JtXG4vL1xuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cbi8vIG91ciBuYXZiYXJzLlxuXG4ubmF2YmFyLWZvcm0ge1xuICBwYWRkaW5nOiAxMHB4ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICRzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSksIDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG5cbiAgLy8gTWl4aW4gYmVoYXZpb3IgZm9yIG9wdGltdW0gZGlzcGxheVxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcblxuICAuZm9ybS1ncm91cCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gIC8vIFVuZG8gMTAwJSB3aWR0aCBmb3IgcHVsbCBjbGFzc2VzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd24gbWVudXNcblxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldCBzdXBwb3J0IGZvciBkcm9wdXBzIHZpYSBleHRyYSBkcm9wdXAgY2xhc3Ncbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xufVxuXG5cbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxuXG4ubmF2YmFyLWJ0biB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gICYuYnRuLXNtIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1zbWFsbCk7XG4gIH1cbiAgJi5idG4teHMge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XG4gIH1cbn1cblxuXG4vLyBUZXh0IGluIG5hdmJhcnNcbi8vXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cblxuLm5hdmJhci10ZXh0IHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZXB1cnBvc2UgdGhlIHB1bGwgdXRpbGl0aWVzIGFzIHRoZWlyIG93biBuYXZiYXIgdXRpbGl0aWVzIHRvIGF2b2lkIHNwZWNpZmljaXR5XG4vLyBpc3N1ZXMgd2l0aCBwYXJlbnRzIGFuZCBjaGFpbmluZy4gT25seSBkbyB0aGlzIHdoZW4gdGhlIG5hdmJhciBpcyB1bmNvbGxhcHNlZFxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXG4vL1xuLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIG5hdmJhciBjb21wb25lbnRzIHRvIGVuc3VyZSBtb3JlIHNwZWNpZmljaXR5IG9uIHRoZSBtYXJnaW5zLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhci1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBuYXZiYXJcbi5uYXZiYXItZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gb3BlbiBkcm9wZG93blxuICAgID4gLm9wZW4gPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAgIC5vcGVuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuICB9XG5cblxuICAvLyBMaW5rcyBpbiBuYXZiYXJzXG4gIC8vXG4gIC8vIEFkZCBhIGNsYXNzIHRvIGVuc3VyZSBsaW5rcyBvdXRzaWRlIHRoZSBuYXZiYXIgbmF2IGFyZSBjb2xvcmVkIGNvcnJlY3RseS5cblxuICAubmF2YmFyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSW52ZXJzZSBuYXZiYXJcblxuLm5hdmJhci1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJnO1xuICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS1ib3JkZXI7XG5cbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtY29sb3I7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93bnNcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xuICB9XG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsICRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICArIGxpOmJlZm9yZSB7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICAgIC8vIFtjb252ZXJ0ZXJdIFdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL2xpYnNhc3MvaXNzdWVzLzExMTVcbiAgICAgICRuYnNwOiBcIlxcMDBhMFwiO1xuICAgICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLXNlcGFyYXRvcn0jeyRuYnNwfVwiOyAvLyBVbmljb2RlIHNwYWNlIGFkZGVkIHNpbmNlIGlubGluZS1ibG9jayBtZWFucyBub24tY29sbGFwc2luZyB3aGl0ZS1zcGFjZVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIFBhZ2luYXRpb24gKG11bHRpcGxlIHBhZ2VzKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lOyAvLyBSZW1vdmUgbGlzdC1zdHlsZSBhbmQgYmxvY2stbGV2ZWwgZGVmYXVsdHNcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBDb2xsYXBzZSB3aGl0ZS1zcGFjZVxuICAgICAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSA+IGEsXG4gID4gLmFjdGl2ZSA+IHNwYW4ge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gID4gLmRpc2FibGVkIHtcbiAgICA+IHNwYW4sXG4gICAgPiBzcGFuOmhvdmVyLFxuICAgID4gc3Bhbjpmb2N1cyxcbiAgICA+IGEsXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG5cbi8vIFNtYWxsXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4iLCIvL1xuLy8gUGFnZXIgcGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucGFnZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1iZztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdlci1ib3JkZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAkcGFnZXItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlci1ob3Zlci1iZztcbiAgICB9XG4gIH1cblxuICAubmV4dCB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnByZXZpb3VzIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMsXG4gICAgPiBzcGFuIHtcbiAgICAgIGNvbG9yOiAkcGFnZXItZGlzYWJsZWQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTtcblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5sYWJlbFxuXG4gIC8vIEVtcHR5IGxhYmVscyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFF1aWNrIGZpeCBmb3IgbGFiZWxzIGluIGJ1dHRvbnNcbiAgLmJ0biAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG59XG5cbi8vIEFkZCBob3ZlciBlZmZlY3RzLCBidXQgb25seSBmb3IgbGlua3NcbmEubGFiZWwge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxhYmVsLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBDb2xvcnNcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGxhYmVscyBnZXQgZGFya2VyIG9uIDpob3ZlcilcblxuLmxhYmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kZWZhdWx0LWJnKTtcbn1cblxuLmxhYmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcbn1cblxuLmxhYmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1zdWNjZXNzLWJnKTtcbn1cblxuLmxhYmVsLWluZm8ge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1pbmZvLWJnKTtcbn1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcbn1cblxuLmxhYmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRhbmdlci1iZyk7XG59XG4iLCIvL1xuLy8gQmFkZ2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMHB4O1xuICBwYWRkaW5nOiAzcHggN3B4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYmFkZ2UtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYmFkZ2UtYm9yZGVyLXJhZGl1cztcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxuXG4gIC5idG4teHMgJixcbiAgLmJ0bi1ncm91cC14cyA+IC5idG4gJiB7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5iYWRnZVxuXG4gIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gJixcbiAgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhID4gJiB7XG4gICAgY29sb3I6ICRiYWRnZS1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhZGdlLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiArICYge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG5cbiAgLm5hdi1waWxscyA+IGxpID4gYSA+ICYge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIH1cbn1cblxuLy8gSG92ZXIgc3RhdGUsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5iYWRnZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4iLCIvL1xuLy8gSnVtYm90cm9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nLXRvcDogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuXG4gIGgxLFxuICAuaDEge1xuICAgIGNvbG9yOiAkanVtYm90cm9uLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gICAgZm9udC1zaXplOiAkanVtYm90cm9uLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICB9XG5cbiAgPiBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRqdW1ib3Ryb24tYmcsIDEwJSk7XG4gIH1cblxuICAuY29udGFpbmVyICYsXG4gIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICAgIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlOyAvLyBPbmx5IHJvdW5kIGNvcm5lcnMgYXQgaGlnaGVyIHJlc29sdXRpb25zIGlmIGNvbnRhaW5lZCBpbiBhIGNvbnRhaW5lclxuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDEuNik7XG4gICAgcGFkZGluZy1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuXG4gICAgLmNvbnRhaW5lciAmLFxuICAgIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKTtcbiAgICB9XG5cbiAgICBoMSxcbiAgICAuaDEge1xuICAgICAgZm9udC1zaXplOiAkanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFRodW1ibmFpbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gTWl4aW4gYW5kIGFkanVzdCB0aGUgcmVndWxhciBpbWFnZSBjbGFzc1xuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlciAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gID4gaW1nLFxuICBhID4gaW1nIHtcbiAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSY6aG92ZXIsIGEmOmZvY3VzLCBhJi5hY3RpdmUgdG8gYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzLCBhLnRodW1ibmFpbC5hY3RpdmVcblxuICAvLyBJbWFnZSBjYXB0aW9uc1xuICAuY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc7XG4gICAgY29sb3I6ICR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuXG4vLyBBZGQgYSBob3ZlciBzdGF0ZSBmb3IgbGlua2VkIHZlcnNpb25zIG9ubHlcbmEudGh1bWJuYWlsOmhvdmVyLFxuYS50aHVtYm5haWw6Zm9jdXMsXG5hLnRodW1ibmFpbC5hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xufVxuIiwiLy9cbi8vIEFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWxlcnQge1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGFsZXJ0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbiAgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIFNwZWNpZmllZCBmb3IgdGhlIGg0IHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICB9XG5cbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgfVxuXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcbiAgPiBwLFxuICA+IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgPiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4vLyBUaGUgbWlzc3BlbGxlZCAuYWxlcnQtZGlzbWlzc2FibGUgd2FzIGRlcHJlY2F0ZWQgaW4gMy4yLjAuXG4uYWxlcnQtZGlzbWlzc2FibGUsXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAoJGFsZXJ0LXBhZGRpbmcgKyAyMCk7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHJpZ2h0OiAtMjFweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtd2FybmluZy1iZywgJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCAkYWxlcnQtd2FybmluZy10ZXh0KTtcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XG59XG4iLCIvL1xuLy8gUHJvZ3Jlc3MgYmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXIgYW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBXZWJLaXRcbkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cbi8vIFNwZWMgYW5kIElFMTArXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuXG4vLyBCYXIgaXRzZWxmXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE91dGVyIGNvbnRhaW5lclxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuMSkpO1xufVxuXG4vLyBCYXIgb2YgcHJvZ3Jlc3Ncbi5wcm9ncmVzcy1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIC4xNSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoIC42cyBlYXNlKTtcbn1cblxuLy8gU3RyaXBlZCBiYXJzXG4vL1xuLy8gYC5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXItc3RyaXBlZGAgY2xhc3MsIHdoaWNoIHlvdSBqdXN0IGFkZCB0byBhbiBleGlzdGluZ1xuLy8gYC5wcm9ncmVzcy1iYXJgLlxuLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xufVxuXG4vLyBDYWxsIGFuaW1hdGlvbiBmb3IgdGhlIGFjdGl2ZSBvbmVcbi8vXG4vLyBgLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLmFjdGl2ZWAgYXBwcm9hY2guXG4ucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLmFjdGl2ZSB7XG4gIEBpbmNsdWRlIGFuaW1hdGlvbihwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGUpO1xufVxuXG5cbi8vIFZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnByb2dyZXNzLWJhci1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1pbmZvLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci13YXJuaW5nLWJnKTtcbn1cblxuLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZyk7XG59XG4iLCIubWVkaWEge1xuICAvLyBQcm9wZXIgc3BhY2luZyBiZXR3ZWVuIGluc3RhbmNlcyBvZiAubWVkaWFcbiAgbWFyZ2luLXRvcDogMTVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5tZWRpYSxcbi5tZWRpYS1ib2R5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgem9vbTogMTtcbn1cblxuLm1lZGlhLWJvZHkge1xuICB3aWR0aDogMTAwMDBweDtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIEZpeCBjb2xsYXBzZSBpbiB3ZWJraXQgZnJvbSBtYXgtd2lkdGg6IDEwMCUgYW5kIGRpc3BsYXk6IHRhYmxlLWNlbGwuXG4gICYuaW1nLXRodW1ibmFpbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5tZWRpYS1yaWdodCxcbi5tZWRpYSA+IC5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYSA+IC5wdWxsLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWVkaWEtbGVmdCxcbi5tZWRpYS1yaWdodCxcbi5tZWRpYS1ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm1lZGlhLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIGhlYWRpbmdzIGZvciB0aWdodGVyIGRlZmF1bHQgc3BhY2luZ1xuLm1lZGlhLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIE1lZGlhIGxpc3QgdmFyaWF0aW9uXG4vL1xuLy8gVW5kbyBkZWZhdWx0IHVsL29sIHN0eWxlc1xuLm1lZGlhLWxpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvL1xuLy8gTGlzdCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlcjtcblxuICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJi5kaXNhYmxlZDpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQWN0aXZlIGNsYXNzIG9uIGl0ZW0gaXRzZWxmLCBub3QgcGFyZW50XG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlcixcbiAgJi5hY3RpdmU6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmUgaXRlbXMuXG4vLyBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNob3dpbmcgc2VsZWN0ZWQgaXRlbXMuXG5cbmEubGlzdC1ncm91cC1pdGVtLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWNvbG9yO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxufVxuXG5idXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChzdWNjZXNzLCAkc3RhdGUtc3VjY2Vzcy1iZywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChpbmZvLCAkc3RhdGUtaW5mby1iZywgJHN0YXRlLWluZm8tdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCh3YXJuaW5nLCAkc3RhdGUtd2FybmluZy1iZywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudChkYW5nZXIsICRzdGF0ZS1kYW5nZXItYmcsICRzdGF0ZS1kYW5nZXItdGV4dCk7XG5cblxuLy8gQ3VzdG9tIGNvbnRlbnQgb3B0aW9uc1xuLy9cbi8vIEV4dHJhIGNsYXNzZXMgZm9yIGNyZWF0aW5nIHdlbGwtZm9ybWF0dGVkIGNvbnRlbnQgd2l0aGluIGAubGlzdC1ncm91cC1pdGVtYHMuXG5cbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4iLCIvL1xuLy8gUGFuZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi5wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSk7XG59XG5cbi8vIFBhbmVsIGNvbnRlbnRzXG4ucGFuZWwtYm9keSB7XG4gIHBhZGRpbmc6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBPcHRpb25hbCBoZWFkaW5nXG4ucGFuZWwtaGVhZGluZyB7XG4gIHBhZGRpbmc6ICRwYW5lbC1oZWFkaW5nLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFdpdGhpbiBoZWFkaW5nLCBzdHJpcCBhbnkgYGgqYCB0YWcgb2YgaXRzIGRlZmF1bHQgbWFyZ2lucyBmb3Igc3BhY2luZy5cbi5wYW5lbC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4xMjUpKTtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgPiBhLFxuICA+IHNtYWxsLFxuICA+IC5zbWFsbCxcbiAgPiBzbWFsbCA+IGEsXG4gID4gLnNtYWxsID4gYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgZm9vdGVyIChzdGF5cyBncmF5IGluIGV2ZXJ5IG1vZGlmaWVyIGNsYXNzKVxuLnBhbmVsLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRwYW5lbC1mb290ZXItcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbmVsLWZvb3Rlci1iZztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcbn1cblxuXG4vLyBMaXN0IGdyb3VwcyBpbiBwYW5lbHNcbi8vXG4vLyBCeSBkZWZhdWx0LCBzcGFjZSBvdXQgbGlzdCBncm91cCBjb250ZW50IGZyb20gcGFuZWwgaGVhZGluZ3MgdG8gYWNjb3VudCBmb3Jcbi8vIGFueSBraW5kIG9mIGN1c3RvbSBjb250ZW50IGJldHdlZW4gdGhlIHR3by5cblxuLnBhbmVsIHtcbiAgPiAubGlzdC1ncm91cCxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cbi8vIENvbGxhcHNlIHNwYWNlIGJldHdlZW4gd2hlbiB0aGVyZSdzIG5vIGFkZGl0aW9uYWwgY29udGVudC5cbi5wYW5lbC1oZWFkaW5nICsgLmxpc3QtZ3JvdXAge1xuICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG4ubGlzdC1ncm91cCArIC5wYW5lbC1mb290ZXIge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4vLyBUYWJsZXMgaW4gcGFuZWxzXG4vL1xuLy8gUGxhY2UgYSBub24tYm9yZGVyZWQgYC50YWJsZWAgd2l0aGluIGEgcGFuZWwgKG5vdCB3aXRoaW4gYSBgLnBhbmVsLWJvZHlgKSBhbmRcbi8vIHdhdGNoIGl0IGdvIGZ1bGwgd2lkdGguXG5cbi5wYW5lbCB7XG4gID4gLnRhYmxlLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLFxuICA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGNhcHRpb24ge1xuICAgICAgcGFkZGluZy1yaWdodDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcbiAgPiAudGFibGU6Zmlyc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICAgID4gdGhlYWQ6Zmlyc3QtY2hpbGQsXG4gICAgPiB0Ym9keTpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcblxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXG4gID4gLnRhYmxlOmxhc3QtY2hpbGQsXG4gID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRib2R5Omxhc3QtY2hpbGQsXG4gICAgPiB0Zm9vdDpsYXN0LWNoaWxkIHtcbiAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiAucGFuZWwtYm9keSArIC50YWJsZSxcbiAgPiAucGFuZWwtYm9keSArIC50YWJsZS1yZXNwb25zaXZlLFxuICA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxuICA+IC50YWJsZS1yZXNwb25zaXZlICsgLnBhbmVsLWJvZHkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG4gID4gLnRhYmxlLWJvcmRlcmVkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0ciB7XG4gICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB0aGVhZCxcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGJvZHksXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cblxuLy8gQ29sbGFwc2libGUgcGFuZWxzIChha2EsIGFjY29yZGlvbilcbi8vXG4vLyBXcmFwIGEgc2VyaWVzIG9mIHBhbmVscyBpbiBgLnBhbmVsLWdyb3VwYCB0byB0dXJuIHRoZW0gaW50byBhbiBhY2NvcmRpb24gd2l0aFxuLy8gdGhlIGhlbHAgb2Ygb3VyIGNvbGxhcHNlIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ucGFuZWwtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgLy8gVGlnaHRlbiB1cCBtYXJnaW4gc28gaXQncyBvbmx5IGJldHdlZW4gcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1cztcblxuICAgICsgLnBhbmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHksXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgICsgLnBhbmVsLWNvbGxhcHNlIC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xuLnBhbmVsLWRlZmF1bHQge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1kZWZhdWx0LWJvcmRlciwgJHBhbmVsLWRlZmF1bHQtdGV4dCwgJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZywgJHBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbn1cbi5wYW5lbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtcHJpbWFyeS1ib3JkZXIsICRwYW5lbC1wcmltYXJ5LXRleHQsICRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmcsICRwYW5lbC1wcmltYXJ5LWJvcmRlcik7XG59XG4ucGFuZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyLCAkcGFuZWwtc3VjY2Vzcy10ZXh0LCAkcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnLCAkcGFuZWwtc3VjY2Vzcy1ib3JkZXIpO1xufVxuLnBhbmVsLWluZm8ge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1pbmZvLWJvcmRlciwgJHBhbmVsLWluZm8tdGV4dCwgJHBhbmVsLWluZm8taGVhZGluZy1iZywgJHBhbmVsLWluZm8tYm9yZGVyKTtcbn1cbi5wYW5lbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtd2FybmluZy1ib3JkZXIsICRwYW5lbC13YXJuaW5nLXRleHQsICRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmcsICRwYW5lbC13YXJuaW5nLWJvcmRlcik7XG59XG4ucGFuZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGFuZ2VyLWJvcmRlciwgJHBhbmVsLWRhbmdlci10ZXh0LCAkcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmcsICRwYW5lbC1kYW5nZXItYm9yZGVyKTtcbn1cbiIsIi8vIEVtYmVkcyByZXNwb25zaXZlXG4vL1xuLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBNb2RpZmllciBjbGFzcyBmb3IgMTY6OSBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDQ6MyBhc3BlY3QgcmF0aW9cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuIiwiLy9cbi8vIFdlbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi53ZWxsIHtcbiAgbWluLWhlaWdodDogMjBweDtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdlbGwtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR3ZWxsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpKTtcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMTUpO1xuICB9XG59XG5cbi8vIFNpemVzXG4ud2VsbC1sZyB7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xufVxuLndlbGwtc20ge1xuICBwYWRkaW5nOiA5cHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xufVxuIiwiLy9cbi8vIENsb3NlIGljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogMS41KTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIEBpbmNsdWRlIG9wYWNpdHkoLjIpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC41KTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBidXR0b24mIHRvIGJ1dHRvbi5jbG9zZVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBNb2RhbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzaGl0XG5cbi8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuLm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgJi5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtMjUlKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjNzIGVhc2Utb3V0KTtcbiAgfVxuICAmLmluIC5tb2RhbC1kaWFsb2cgeyBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgMCk7IH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAuNSkpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIGFjY291bnQgZm9yIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gd2hpY2ggZ2V0cyB0aGUgYm90dG9tIG1hcmdpbiBsaWtlIGFsbCBvdGhlciBpbnB1dHNcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJHRvb2x0aXAtb3BhY2l0eSk7IH1cbiAgJi50b3Age1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIH1cbiAgJi5ib3R0b20ge1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICB9XG4gICYubGVmdCB7XG4gICAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgfVxuXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxuICAmLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi8vIEFycm93c1xuLnRvb2x0aXAtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4iLCIvL1xuLy8gUG9wb3ZlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgcGFkZGluZzogMXB4O1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSBwb3BvdmVycyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAuMikpO1xuXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuICAmLnRvcCB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLnJpZ2h0IHsgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYuYm90dG9tIHsgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5sZWZ0IHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuXG4gIC8vIEFycm93c1xuICAvLyAuYXJyb3cgaXMgb3V0ZXIsIC5hcnJvdzphZnRlciBpcyBpbm5lclxuICA+IC5hcnJvdyB7XG4gICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcblxuICAgICYsXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICB9XG4gIH1cblxuICAmLnRvcCA+IC5hcnJvdyB7XG4gICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbiAgJi5yaWdodCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICB9XG4gIH1cbiAgJi5ib3R0b20gPiAuYXJyb3cge1xuICAgIHRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItdGl0bGUtYmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcbiAgYm9yZGVyLXJhZGl1czogKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgMCAwO1xufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogOXB4IDE0cHg7XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gID4gLml0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjZzIGVhc2UtaW4tb3V0IGxlZnQpO1xuXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xuICAgID4gaW1nLFxuICAgID4gYSA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XG4gICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2LFxuICAgICAgJi5hY3RpdmUubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYubmV4dC5sZWZ0LFxuICAgICAgJi5wcmV2LnJpZ2h0LFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBmb250LXNpemU6ICRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIEZpeCBJRTkgY2xpY2stdGhydSBidWdcbiAgQGluY2x1ZGUgb3BhY2l0eSgkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5KTtcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXG4gICYubGVmdCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpKTtcbiAgfVxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcbiAgfVxuXG4gIC8vIFRvZ2dsZXNcbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBmb250LWZhbWlseTogc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAuaWNvbi1wcmV2IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAzOVwiOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXG4gICAgfVxuICB9XG4gIC5pY29uLW5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDNhXCI7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogNjAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcbiAgICAvL1xuICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDgtOSBkb2VzIG5vdCBzdXBwb3J0IGNsaWNrcyBvbiBlbGVtZW50cyB3aXRob3V0IGEgc2V0XG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGJ5IHRoZSBicm93c2VyLiBUaHVzLCBhIGhhY2sgaXMgbmVlZGVkLlxuICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjSW50ZXJuZXRfRXhwbG9yZXJcbiAgICAvL1xuICAgIC8vIEZvciBJRTgsIHdlIHNldCBzb2xpZCBibGFjayBhcyBpdCBkb2Vzbid0IHN1cHBvcnQgYHJnYmEoKWAuIEZvciBJRTksIHdlXG4gICAgLy8gc2V0IGFscGhhIHRyYW5zcGFyZW5jeSBmb3IgdGhlIGJlc3QgcmVzdWx0cyBwb3NzaWJsZS5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTsgLy8gSUU4XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgLy8gSUU5XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMTUlO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcblxuICAmIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXG4gIH1cbn1cblxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tcHJldixcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIHdpZHRoOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIGhlaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBtYXJnaW4tdG9wOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgICAgZm9udC1zaXplOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmljb24tcHJldiB7XG4gICAgICBtYXJnaW4tbGVmdDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICByaWdodDogMjAlO1xuICAgIGxlZnQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIGJvdHRvbTogMjBweDtcbiAgfVxufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2RvY3MvMy40L2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXG4vLyBTb3VyY2U6IGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwczovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCIvKiBBbmltYXRlZCA0MDQgZ2xpdGNoIHN0eWxlICovXG5cbkBrZXlmcmFtZXMgZmxpY2tlciB7XG4gIDAlICAgICB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgMjUlICAgIHsgb3BhY2l0eTogMC4wMTsgfVxuXG4gIDI1LjAxJSB7IG9wYWNpdHk6IDE7IH1cbiAgMjYlICAgIHsgb3BhY2l0eTogMTsgfVxuXG4gIDI2LjAxJSB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgNTAlICAgIHsgb3BhY2l0eTogMC4wMTsgfVxuXG4gIDUwLjAxJSB7IG9wYWNpdHk6IDE7IH1cbiAgNTglICAgIHsgb3BhY2l0eTogMTsgfVxuXG4gIDU4LjAxJSB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgNzAlICAgIHsgb3BhY2l0eTogMC4wMTsgfVxuXG4gIDcwLjAxJSB7IG9wYWNpdHk6IDE7IH1cbiAgNzIlICAgIHsgb3BhY2l0eTogMTsgfVxuXG4gIDcyLjAxJSB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgNzUlICAgIHsgb3BhY2l0eTogMC4wMTsgfVxuXG4gIDc1LjAxJSB7IG9wYWNpdHk6IDE7IH1cbiAgODAlICAgIHsgb3BhY2l0eTogMTsgfVxuXG4gIDgwLjAxJSB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgOTAlICAgIHsgb3BhY2l0eTogMC4wMTsgfVxuXG4gIDkwLjAxJSB7IG9wYWNpdHk6IDE7IH1cbiAgOTUlICAgIHsgb3BhY2l0eTogMTsgfVxuXG4gIDk1LjAxJSB7IG9wYWNpdHk6IDAuMDE7IH1cbiAgMTAwJSAgIHsgb3BhY2l0eTogMC4wMTsgfVxufVxuXG4vKiBEZXRhaWwgKi9cbi5wYWdlLTQwNCB7XG4gIC5wYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG59XG4uc2VjdGlvbi1lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAud3JhcCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgJi1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1OSU7XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL3dvbmRlcmZ1bC11bmlvbi9lcnJvci9lcnJvcjEucG5nJykgbm8tcmVwZWF0IGNlbnRlci9jb250YWluO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvd29uZGVyZnVsLXVuaW9uL2Vycm9yL2Vycm9yMi5qcGcnKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgICAgIG9wYWNpdHk6IDAuMDE7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlja2VyO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDZzO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAyZW0gMTBweCA0ZW07XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogI2VjMWMyNDtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogIzgwODA4MDtcbiAgICB9XG4gIH1cbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3d1LXNvY2lhbC1pY29ucyc7XG4gIHNyYzpcbiAgICB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL3d1LXNvY2lhbC1pY29ucy9jaXJjbGUvd3Utc29jaWFsLWljb25zLnR0Zj9xOWhrcTMnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS93dS1zb2NpYWwtaWNvbnMvY2lyY2xlL3d1LXNvY2lhbC1pY29ucy53b2ZmP3E5aGtxMycpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS93dS1zb2NpYWwtaWNvbnMuc3ZnP3E5aGtxMyN3dS1zb2NpYWwtaWNvbnMnKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzc149XCJ3dS1zb2NpYWwtXCJdLCBbY2xhc3MqPVwiIHd1LXNvY2lhbC1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ3d1LXNvY2lhbC1pY29ucycgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLnd1LXNvY2lhbC1naXBoeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuLnd1LXNvY2lhbC10aWt0b2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjtcbn1cbi53dS1zb2NpYWwtbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cbi53dS1zb2NpYWwtc291bmRjbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMlwiO1xufVxuLnd1LXNvY2lhbC1zcG90aWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjAyXCI7XG59XG4ud3Utc29jaWFsLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MDNcIjtcbn1cbi53dS1zb2NpYWwtZ29vZ2xlcGx1czpiZWZvcmUsXG4ud3Utc29jaWFsLWdvb2dsZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjA0XCI7XG59XG4ud3Utc29jaWFsLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MDVcIjtcbn1cbi53dS1zb2NpYWwtcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjBmXCI7XG59XG4ud3Utc29jaWFsLXBpbnRlcmVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTYxMFwiO1xufVxuLnd1LXNvY2lhbC12aW1lbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuLnd1LXNvY2lhbC1hcHBsZTpiZWZvcmUsXG4ud3Utc29jaWFsLWFwcGxlLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4ud3Utc29jaWFsLVZldm86YmVmb3JlLFxuLnd1LXNvY2lhbC12ZXZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4ud3Utc29jaWFsLW1lc3NlbmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuLnd1LXNvY2lhbC1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi53dS1zb2NpYWwtbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLnd1LXNvY2lhbC10dW1ibHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi53dS1zb2NpYWwtc25hcGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi53dS1zb2NpYWwtdmluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuLnd1LXNvY2lhbC1teXNwYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4ud3Utc29jaWFsLXdoYXRzYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4ud3Utc29jaWFsLWtpazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZThmY1wiO1xufVxuLnd1LXNvY2lhbC1nb29nbGVwbGF5OmJlZm9yZSxcbi53dS1zb2NpYWwtZ29vZ2xlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjtcbn1cbi53dS1zb2NpYWwtZmFuczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLnd1LXNvY2lhbC1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuLnd1LXNvY2lhbC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XG59XG4ud3Utc29jaWFsLWFtYXpvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuLnd1LXNvY2lhbC1ia3N0ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLnd1LXNvY2lhbC1pdHVuZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cbi53dS1zb2NpYWwtYnV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG4ud3Utc29jaWFsLWRlZXplcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuLnd1LXNvY2lhbC10YXJnZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cbi53dS1zb2NpYWwtd2FsbWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuLnd1LXNvY2lhbC1tdXNpY2FsbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cbi53dS1zb2NpYWwtcGFuZG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuLnd1LXNvY2lhbC10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cbi53dS1zb2NpYWwteWVscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYVwiO1xufVxuLnd1LXNvY2lhbC11bnRhcHBlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYlwiO1xufVxuIiwiLyogUGFnZSBGYWRlIFRyYW5zaXRpb24gKi9cbiRwYWdlLXRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFkZWZhdWx0O1xuXG4ucGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLWlubmVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGFnZS10cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLm5nLWVudGVyIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgICYubmctZW50ZXItYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICYubmctbGVhdmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmLm5nLWxlYXZlLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLyogRmVhdHVyZWQgVmlkZW8gLyBXaWRnZXQgVmlkZW8gd2l0aCBPdmVybGF5ICovXG5cbiRvdmVybGF5LWJnLWNvbG9yOiByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRmb250LWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuJGxvYWRpbmctaWNvbjogbnVsbCAhZGVmYXVsdDtcbiRwbGF5LWJ1dHRvbjogZmFsc2UgIWRlZmF1bHQ7XG4kcGxheS1idXR0b24tY29sb3I6ICMwMDAgIWRlZmF1bHQ7XG4kcGxheS1idXR0b24tYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcblxuLnNlY3Rpb24td2lkZ2V0LXZpZGVvLFxuLnNlY3Rpb24tZmVhdHVyZWQtdmlkZW8ge1xuICAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC52aWRlby1mcmFtZSB7XG4gICAgJi52aWRlby1hY3RpdmUge1xuICAgICAgLmlubmVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnZpZGVvIHtcbiAgICAgICAgJi1wb3N0ZXItaW1hZ2UsICYtdGl0bGUge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudmlkZW8tZW1iZWQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICY6YmVmb3JlLCAudmlkZW8tcG9zdGVyLWltYWdlLCAudmlkZW8tdGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMjUwbXMgMG1zLCBvcGFjaXR5IDI1MG1zO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRvdmVybGF5LWJnLWNvbG9yLCAyNSk7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMjUwbXM7XG4gICAgICB9XG4gICAgICBAaWYgJGxvYWRpbmctaWNvbiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCRsb2FkaW5nLWljb24pIG5vLXJlcGVhdCBjZW50ZXIvY29udGFpbjtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMjUwbXMgMG1zLCBvcGFjaXR5IDI1MG1zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudmlkZW8tcG9zdGVyLWltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICAgIC52aWRlby10aXRsZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbjogMTVweDtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICB9XG4gICAgfVxuICAgIC5zb3VuZC1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLjI1ZW07XG4gICAgICBsZWZ0OiAuNWVtO1xuICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICBjb2xvcjogJHBsYXktYnV0dG9uLWNvbG9yO1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gICAgaWZyYW1lLCB2aWRlbyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG4gICYud2lkZ2V0LWxvYWRlZCxcbiAgJi52aWRlby1sb2FkZWQge1xuICAgIC5pbm5lciB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvdmVybGF5LWJnLWNvbG9yO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVvLWZyYW1lIHtcbiAgICAgIEBpZiAkcGxheS1idXR0b24gPT0gdHJ1ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zLCBib3JkZXItY29sb3IgMjUwbXM7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgIGhlaWdodDogNzVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxheS1idXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMjVweCBzb2xpZCAkcGxheS1idXR0b24tY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzglLCAtNTAlKTtcbiAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGF5LWJ1dHRvbi1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBsYXktYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYudmlkZW8tYWN0aXZlIHtcbiAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA1MDBweCkge1xuXG4gIC5zZWN0aW9uLXdpZGdldC12aWRlbyB7XG4gICAgLmlubmVyIHtcbiAgICAgIC52aWRlby10aXRsZSB7XG4gICAgICAgIG1hcmdpbjogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiLyogU2ltcGxlIFBhZ2luYXRpb24gKi9cbiRhY3RpdmUtcGFnZS1iZzogIzAwMCAhZGVmYXVsdDtcbiRhY3RpdmUtcGFnZS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcblxuICAuc2VjdGlvbi1wYWdpbmF0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAucGFnaW5hdGlvbiB7XG4gICAgPiBsaSB7XG4gICAgICBhLCBhOmZvY3VzLCBzcGFuIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCwgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiBhLCA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlIHtcbiAgICAgIGEsIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtcGFnZS1iZztcbiAgICAgICAgY29sb3I6ICRhY3RpdmUtcGFnZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQge1xuICAgICAgPiBhLCA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qIE5hdiBCdXR0b24gMyBiYXIgdG8gWCBhbmltYXRpb24gKi9cblxuLm5hdmJhci1kZWZhdWx0IHtcbiAgLm5hdmJhci10b2dnbGUge1xuICAgIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuXG4gICAgLmljb24tYmFyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTRweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogdG9wIDEyMG1zIGVhc2UsIGJvdHRvbSAxMjBtcyBlYXNlLCB0cmFuc2Zvcm0gMTIwbXMgZWFzZSAxMjBtcztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuXG4gICAgICArIC5pY29uLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgICAgKyAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb2xsYXBzZWQge1xuICAgICAgLmljb24tYmFyIHtcbiAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMTMwbXMgZWFzZSAxMzBtcywgdHJhbnNmb3JtIDEzMG1zIGVhc2U7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuXG4gICAgICAgICsgLmljb24tYmFyIHtcbiAgICAgICAgICB0b3A6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgKyAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgICAgICAgIHRvcDogMjJweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufSIsIi8qIEFsdGVybmF0aW5nIEJHIEV2ZW50IFRhYmxlIEZ1bGwgQmxlZWQgKi9cblxuLyogVmFycyAqL1xuICAkZnVsbC1ibGVlZDogZmFsc2UgIWRlZmF1bHQ7XG4gICRidXR0b24tc3R5bGVzOiB0cnVlICFkZWZhdWx0O1xuICAkZXZlbnQtbGlzdC1icmVhay1wb2ludDogNzY4cHggIWRlZmF1bHQ7XG5cbiAgJGV2ZW50LWRhdGUtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG4gICRldmVudC1ob3Zlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcbiAgJGFsdGVybmF0aW5nLWJnLWNvbG9yOiByZ2JhKCMwMDAsIC4wNSkgIWRlZmF1bHQ7XG5cbiAgJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiAgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXMgIWRlZmF1bHQ7XG5cbi8qIENvbmRpdGlvbmFsIEJ1dHRvbiBTdHlsZXMgKi9cbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL2V2ZW50cy9saXN0aW5nL2V2ZW50cy10aWNrZXQtYnV0dG9uc1wiO1xuQGlmICRidXR0b24tc3R5bGVzIHtcbiAgLnNlY3Rpb24tZXZlbnRzLWxpc3Qge1xuICAgIEBpbmNsdWRlIHRpY2tldEJ1dHRvbnMoKTtcbiAgfVxufVxuXG4vKiBMaXN0aW5nICovXG4uc2VjdGlvbi1ldmVudHMtbGlzdCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgJi1sb2FkZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuXG4gICAgJi5uZy1oaWRlIHtcbiAgICAgIG9wYWNpdHk6MDtcbiAgICB9XG4gIH1cbiAgJi5zZWN0aW9uLWVtcHR5LWxpc3Qge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0ciB7XG4gICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhbHRlcm5hdGluZy1iZy1jb2xvcjtcbiAgICB9XG4gICAgdGQ6bm90KC50aWNrZXRzKSB7XG4gICAgICBhLCAuYXBwZWFyaW5nLXdpdGgge1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcztcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZDpub3QoLnRpY2tldHMpIHtcbiAgICAgICAgYSwgLmFwcGVhcmluZy13aXRoIHtcbiAgICAgICAgICBjb2xvcjogJGV2ZW50LWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHRkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5hcHBlYXJpbmctd2l0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiV2l0aDogXCI7XG4gICAgfVxuICB9XG4gIC5kYXRlIHtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkZXZlbnQtZGF0ZS1jb2xvcjtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuICAudGlja2V0cyB7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8qIFBsYWNlaG9sZGVyICovXG4gICYtcGxhY2Vob2xkZXIge1xuICAgICYubmctaGlkZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9wYWNpdHk6MDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cbiAgICAuZGF0ZSwgLnZlbnVlLCAubG9jYXRpb24ge1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogQm9vdHN0cmFwIG92ZXJyaWRlcyAqL1xuICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogJGV2ZW50LWxpc3QtYnJlYWstcG9pbnQpIHtcblxuICBAaWYgJGZ1bGwtYmxlZWQge1xuICAgIC5zZWN0aW9uLWV2ZW50cy1saXN0IHtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgdHIge1xuICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQsICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWx0ZXJuYXRpbmctYmctY29sb3I7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTEwMDBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTAwMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tZXZlbnRzLWxpc3Qge1xuICAgIHRkIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgcGFkZGluZzogMjVweCAxNXB4O1xuICAgIH1cbiAgICAudGlja2V0cyB7XG4gICAgICB3aWR0aDogMjMwcHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgbGkge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiLyogQmFzaWMgQnV0dG9uIFN0eWxlcyAqL1xuXG4vKiBWYXJzICovXG4gICR0aWNrZXQtYnV0dG9uLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuICAkdGlja2V0LWJ1dHRvbi1ib3JkZXI6ICMwMDAgIWRlZmF1bHQ7XG4gICR0aWNrZXQtYnV0dG9uLWJhY2tncm91bmQ6ICMwMDAgIWRlZmF1bHQ7XG4gICR0aWNrZXQtYnV0dG9uLWhvdmVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuICAkdGlja2V0LWJ1dHRvbi1ob3Zlci1ib3JkZXI6ICMwMDAgIWRlZmF1bHQ7XG4gICR0aWNrZXQtYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ6ICMzMzMgIWRlZmF1bHQ7XG5cbiAgJHZpcC1idXR0b24tY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4gICR2aXAtYnV0dG9uLWJvcmRlcjogIzAwMCAhZGVmYXVsdDtcbiAgJHZpcC1idXR0b24tYmFja2dyb3VuZDogIzAwMCAhZGVmYXVsdDtcbiAgJHZpcC1idXR0b24taG92ZXItY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4gICR2aXAtYnV0dG9uLWhvdmVyLWJvcmRlcjogIzAwMCAhZGVmYXVsdDtcbiAgJHZpcC1idXR0b24taG92ZXItYmFja2dyb3VuZDogIzMzMyAhZGVmYXVsdDtcblxuICAkdW5hdmFsYWJsZS1idXR0b24tY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG4gICR1bmF2YWxhYmxlLWJ1dHRvbi1ib3JkZXI6ICNjY2MgIWRlZmF1bHQ7XG4gICR1bmF2YWxhYmxlLWJ1dHRvbi1iYWNrZ3JvdW5kOiAjY2NjICFkZWZhdWx0O1xuXG4gICRzb2xkLW91dC1idXR0b24tY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG4gICRzb2xkLW91dC1idXR0b24tYm9yZGVyOiAjY2NjICFkZWZhdWx0O1xuICAkc29sZC1vdXQtYnV0dG9uLWJhY2tncm91bmQ6ICNjY2MgIWRlZmF1bHQ7XG5cblxuQG1peGluIHRpY2tldEJ1dHRvbnMoKSB7XG4gIC50aWNrZXRzIHtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnRpY2tldC1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgLnRpY2tldC51bmF2YWxhYmxlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdW5hdmFsYWJsZS1idXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdW5hdmFsYWJsZS1idXR0b24tYm9yZGVyO1xuICAgICAgICBjb2xvcjogJHVuYXZhbGFibGUtYnV0dG9uLWNvbG9yO1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR1bmF2YWxhYmxlLWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHVuYXZhbGFibGUtYnV0dG9uLWJvcmRlcjtcbiAgICAgICAgICBjb2xvcjogJHVuYXZhbGFibGUtYnV0dG9uLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zb2xkLW91dC10aWNrZXQge1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAudGlja2V0LWxpbmstdW5hdmFsYWJsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuXG4gICAgICAgIHBhZGRpbmc6IDhweCAyMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzb2xkLW91dC1idXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc29sZC1vdXQtYnV0dG9uLWJvcmRlcjtcbiAgICAgICAgY29sb3I6ICRzb2xkLW91dC1idXR0b24tY29sb3I7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHNvbGQtb3V0LWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNvbGQtb3V0LWJ1dHRvbi1ib3JkZXI7XG4gICAgICAgICAgY29sb3I6ICRzb2xkLW91dC1idXR0b24tY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBMb2FkZWQgKi9cbiAgJi1sb2FkZWQge1xuICAgIC50aWNrZXRzIHtcbiAgICAgIC5iYXNlLXRpY2tldC1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHRpY2tldC1idXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGlja2V0LWJ1dHRvbi1ib3JkZXI7XG4gICAgICAgIGNvbG9yOiAkdGlja2V0LWJ1dHRvbi1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGlja2V0LWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRpY2tldC1idXR0b24taG92ZXItYm9yZGVyO1xuICAgICAgICAgIGNvbG9yOiAkdGlja2V0LWJ1dHRvbi1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnZpcC10aWNrZXQtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR2aXAtYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHZpcC1idXR0b24tYm9yZGVyO1xuICAgICAgICBjb2xvcjogJHZpcC1idXR0b24tY29sb3I7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHZpcC1idXR0b24taG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR2aXAtYnV0dG9uLWhvdmVyLWJvcmRlcjtcbiAgICAgICAgICBjb2xvcjogJHZpcC1idXR0b24taG92ZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBQbGFjZWhvbGRlciAqL1xuICAmLXBsYWNlaG9sZGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIC50aWNrZXRzIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgIC50aWNrZXQtbGluayB7XG4gICAgICAgIC8vIHdpZHRoOiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogMSBDb2wgRXZlbnQgRGV0YWlsICovXG5cbi8qIFZhcnMgKi9cbiAgJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiAgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXMgIWRlZmF1bHQ7XG4gICRiYWNrQnRuU3R5bGU6IHRydWUgIWRlZmF1bHQ7IC8vIHRydWUsIGZhbHNlLCBidXR0b25cblxuLyogVUkgQ29tcG9uZW50ICovXG4gIEBpbXBvcnQgXCIuLi8uLi91aS9tYXBcIjtcblxuLyogRGV0YWlsICovXG4gIC5zZWN0aW9uLWV2ZW50cy1kZXRhaWwge1xuICAgICYtbG9hZGVkIHtcbiAgICAgICYubmctZW50ZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG5cbiAgICAgICAgJi5uZy1lbnRlci1hY3RpdmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLndyYXAge1xuICAgICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAuZmlndXJlIHtcbiAgICAgIG1heC13aWR0aDogNTYwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byA1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgICYuZmlndXJlLWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAubWV0YSwgLmxvY2F0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC50aXRsZS1jb250ZW50IHtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmRhdGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgICAgIH1cbiAgICAgICAgLmFwcGVhcmluZy13aXRoIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDFlbSAwIDA7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIldpdGg6IFwiO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICBtYXJnaW46IDJlbSAwIDA7XG4gICAgfVxuICAgIC5hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgb3BhY2l0eTogMC44O1xuXG4gICAgICBkbCB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAubWFwLWRkIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDUwMG1zO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgJi5uZy1oaWRlIHtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52aWV3LW1hcCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRpY2tldHMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAudGlja2V0LWxpbmsge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgfVxuICAgIC5mb290ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAubWV0YS1pdGVtLWF1dGhvciwgLm1ldGEtaXRlbS1kYXRlLCAubWV0YS1pdGVtLXNvY2lhbHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgQGlmICgkYmFja0J0blN0eWxlID09IHRydWUpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaWYgKCRiYWNrQnRuU3R5bGUgPT0gJ2J1dHRvbicpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBQbGFjZWhvbGRlciAqL1xuICAgICYtcGxhY2Vob2xkZXIge1xuICAgICAgJi5uZy1oaWRlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgICAgLmZpZ3VyZSB7XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIG1heC13aWR0aDogNTYwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDYwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZXRhLCAudGl0bGUtY29udGVudCAqLCAuYWRkcmVzcyBkZCwgLmNvbnRlbnQgLmlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLnRpY2tldC1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuIiwiLyoqXG4gKiogTWFwIFZhcmlhYmxlc1xuICovXG4kbWFwV2lkdGg6IDEwMCUgIWRlZmF1bHQ7XG4kaGVpZ2h0MzAwOiAzMDBweCAhZGVmYXVsdDtcbiR0ZXh0R3JleTogIzVCNUI1QiAhZGVmYXVsdDtcbiRnb29nbGVCbHVlOiAjM2E4NGRmICFkZWZhdWx0O1xuXG4vKipcbiAqKiBNYXAgVUkgQ29tcG9uZW50XG4gKi9cbi5zZWN0aW9uLW1hcC1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAkbWFwV2lkdGg7XG4gIG1hcmdpbjogYXV0bztcblxuICAucm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAubWFwIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0MzAwO1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgICYubWFwLXBsYWNlaG9sZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLmdseXBoaWNvbiB7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1MHB4IC0gNTVweCk7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZsb2F0aW5nLXBhbm5lbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNXB4O1xuICAgIGxlZnQ6IDVweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgcGFkZGluZzogMXB4O1xuICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4zKSAwIDFweCA0cHggMXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAucGFubmVsLWNvbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGg1LCBwIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0R3JleTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBBcmlhbDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBBcmlhbDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgY29sb3I6ICRnb29nbGVCbHVlO1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpcmVjdGlvbnMge1xuICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXJlY3Rpb24taWNvbiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBBcmlhbDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSXdBQUFHa0NBWUFBQURqU00zUkFBQW5mRWxFUVZSNEFlekJBUUVBTUFRQXNJZDlKbm5GQU5zZUFBQUFBRDM4U0dMc0RNaWhJSWpET0VhZnU4VjFlU3d1Y1k4dEIvZHlpbXU4cXAzR0s4Nmh2YStHb2Q3elAxOTFOWHk1ODg3Zk8xK2F0L1ZXNHY4V3Izc2ZJRk9uOStMeXFYbGJieVgrYi9HNjl3R1NwL2Q0UERadjY2M0UveTFlOXo1QWxvRmxONnBBWXhOWWRxTUtORGFCWlRlcVFHTlpXS3JRMkNTV0tqUTJpYVVLaldWaXFVQmpBRXNGR2dOWUt0QllLcFlDTkVhd0ZLQXhncVVBalZFczZ3QWpBODBaZ0lrcmRSMWdaS0E1QXpCeHBhNGpqZ1EwNTRJOVRBNGEvKzJoWkE4VDBBaGdEaVY3bUlCR0FITUFlNWhpTkFDTEFBYWdBVmdBR0k2R1k0bGc2dEFBTEFBTVFBT3dBREFjRGNmQ3dYQTBHNDVGQndQUWJEZ1dIUXhBc3dGWWNzRUFOSTFqMGNFQU5JMWowY0VBTkkxZ3lRY0QwUGp6blFDamp4Z1lnTWFmN3dRWWZjVEFBRFQrZkNmQTZLTmNNQUROWHNTeWpEb0JBOURzUlN6THFCTXdBTTFleExLTWVob1lnT2JhZTFDd3hKdDdISXlFNXRwN1VMREVtM3NjaklUbTJudFFzTVNiZXhGTU5aclRESmFJaG9JUjBKeG1zRVEwRkl5QTVqU0Q1UWMwbit6Y04zS3FNUndFOEJPODBMeFk2U2l2SnRSMG9KdkFDU2hwMVJFcXdpRmV0aXRjZjV5QUsyQnBocDBoNis4Z2Yxck5YelByMEczeEcydE5RdC9hMEV5RldCYUhXSzZoQVppRWFLWkNMSXRETE5mUkFFd3lORk1obHNVaGx1dG9BS1krTk50WCtzOEhhQWI0UFJHYTdTdjk1d00wNkpzS3pmYVYvdk1CR3ZSOU16U2RBeXhPZ0dVVElDU29Ja1hUT2NEaUJGZzJQZ242aXRGMERyQTRBWlpOZ0pEenEvSGVINEJaQzhEOHFLa3F3THcvQUxNV2dLbXJMOEM4UHdDekZvQkowRGZSMVNTNmlqSTR1Sm9FV0xMb2k2dEplaFV4Z1Buc014S0FzWm1BK2V3ekVvQ3htWUQ1N0RNU2dFRmZDalN6T0Joc2x5elF6QVJnY3VnTE5ETUJtSTlNWUNZUkxBK1pWQVdZU1FSTExuMEJaaExCZ3I0MFlPNGpZSDVsQnVZK0F1WlhabUR1STJCK2xRWm1TQVptU0FabXFHQVVqSUpSTUFwR3dTZ1lCYU5nRkl5Q1VUQUtSc0VvR0FXallCU01nbEV3Q2tiQktCZ0ZvMGVQSGoxNi9KLzA3eUZFZlUwSVFWVmNVU2FrSkRCTm56WlIzNjZQSlFMVDliRWxnZW1IRVBWMUlVUmdYRWhKWUZZaFJIMnJFQ0l3VlVoSisrWC9QdDlKOXN0dUgwT3lYM2I3bUJMQXRBN0F0QW42OWc3QVdBSXd2UU13dHBUOUFqQjlrdjBDTUk1a3Z3Q01LMlcvQU15S1pMOEFURVd5WHdDbUttbS9JTjlKOWd0aVNQWUxZcGpCdEMrQWFXZmMxMTRBWXpNR1l5K0FzYVhzRjZSUHNsOFFSN0pmRUZmS2ZrRldKUHNGcVVqMkMxS1Z0RitRN3lUN0JURWsrd1V4cGV3WHBFMnlYeEJMc2w4UXl3aG1BQ0FNTytid1U3OEpka3pzVTc5ZEtmc0ZXZVc4WHhoMnpDUHo5Z0JyT3hMSGNUeTVPRnJiZkxhdDhQbkZXdHRXdExiM3hGamJ0dTB6NjMyMmc3WFJlLy83dmRsSk1tbWFVMHhuMnBkOHduK252N3p6TytqY052VDdKV3l0Ny8rOGZoaGlZUXBVakNtVzUraG41QjJPY1JibVFHTE1zVHpIY09QRkhvNXhGdVpBWXN5eFBNZndOSVU1R1BkQ2xkUzlPTmpJT3hRdFNFbTFNTXdvekZDMElDWFZnczZidkRTZE9BRWZRWlhFeHpwVFowVGVMbHlDdnlFbDhZL08xQlh4bGRLRlMvQTNwQ1QrMFptNmJMNmVCdUpCcUlJOWlJRUo4bzdDbDVDQ2ZZbFJDWDZMak1LWGtJSjlpVkY1L2FicHhpbjRCTXF6VDNBcXVsUGtyZUJLL0F2eDdGOWNoVXFLSDdBVlhJbC9JWjc5aTZ0UWNmRmplQ2dlaGZMa1VReTF5RHNlaXlHZUxNWjRpeXVmOFZnTThXUXh4cnUrZ3FyZ1RId0s1Y2luT0JPVkhQTFdjRDBDaUNNQmJrQXRoOHZsR3E1SEFIRWt3QTJvK2J6MEhva25vWEwySkVZNnlEc0ZLeUE1VzRFcER2WlpwbUFGSkdjck1LV296YTRxenMzcDArWlR2VmJOWWQ0Nm11aUJXT3BCRXcySG0zTjFOTkVEc2RTREpocGwyQ1VkaTVjc3l2SVN4bnJNT3d1YklSbHR4aXlQdTdxenNCbVMwV2JNS3R2Vyt1TVdoWG04Z0x4TElSa3RMZUJQQVVzaEdTMHRXMW4yaDdKMGdNZThBeUdXQm5rc3kwQ0lwVUZsS3N6aFVKYU84SmozUElpbDh6MFc1anlJcGZQTFZKamJvU3pkN2pIdmV4Qkw3M2tzekhzUVMrK1ZwU3c3NVhpVnRMT0h2THNoZ0ZnS3NMdUhzdXlHQUdJcHdPNmxlYkl4eHB1YWlySEkxNU9OTWI3WEpNYlJ2cDVzalBHOUpqR09Ma05oYmtxd3ZiK3Y5bWpNN0UwZThqNlZZSHUvbjdZWTBzWlRIZ3J6VklMdC9YN2FZa2diVHhWZGxpcmVoWXFDSnJZeDVodG90cGwvRDFYSEczZS9RcUxnT1d4dnpHK0g1OXJNLzRhNjQ0MjdYeUdSL3YrM3ZURy9IWjVyTS84YjZrVVdaanBVaEJiT1FFZkVNUjA0SFMyb0NETWM1bDBBaWRDTDY5cmt2VmJQU0lTRkRndXpBQktoRjllaEkrS1lEbHlyWnlUQ3dpSUxjeEZVeUllWW0rRFl1WHBXaFZ6a01POXRrSkEvY1dpQ1l3L1ZzeEp5bThQQzNBWUorUk94ZWZ0bTlLeUUzRlpVV1Ryd01wVGhSUXhOZWJ2RWkxQ0dWOURoS084V2lHRVR4cWU4WFdJVHhMQVZIUTdLMG9FdEVNTW1qRTk1dThRbWlHRXJPb29vekhBb3c5M1lMZU5sN2wxUWh1RU84azZDR0Q3RzNoa2YwUHNJWXBqa29EQ1RJSWFQa1RwdjN6SDRDR0tZVkVSaFRvUFNya0RGWXEyS1hrTnBwenZJZXcxRXV4YzF5M3RzN29WbzF6b296RFVRN1Y3VUxPK3h1UmVpWFZ0RVlSN0Zwemd5eHpXUHdLZDQxRUhlYnhIZ2doelhQQjhCRmpzb3pMY0ljRUdPYTU2UEFJdDlsMlZmdkkxcER0YWVwdGZlTitmbnJIN0NmQWQ1NSt1MSsrWDR3dmJEVDhnOWI5K2FldTErUGd2ekgvdldBQ3k1OHdiN2JOdTIvN1p0ODJlYnE3TnQyN1p0Mi9iZDRtdzd2Ni9yYmFweSs1QmtkK2UyYWwrNnFxdm1rcG1lK2Q3MnpYeVpUSDZrOGdOMWFyT1BPSC9uWFJ1S1FHM2huK0w0by81UnFHeTgxQmIrQ1prUERodzRjREMzR3lxVFNDQWVsa2FXa0E5L2VCSDlUUHNmVkI4M0xRaEY0TmdaQXhLSitkM3hpdkExSkJEbmZQaGUwSXZWVUl4dDcrSm5rLzZGbDZBT2VZVlZvUWdjTzJOQUlyRzROMGFUU0NDQ0h2UVV3endKTllQU015RUhQc0dRb1gvQld3Q3lRdzNLQ0JzbzBzL09zVE1HSkJKcmgrSTBtY2psU014eVJxZ0ZmSGhiWlQrblhRZ04valBZUjFHb1FXMWhRMFg2UlRsMnhwQ3daV24xRUZUZU5nWWF5VElTZ0tBYjM2Ulp5S0FQUzZBSW05N0VEOWxIMkRCVkZDMUhEVWxGK2xVNGRzYkFXSkFJYkJ5SlYvZFBoa1pLK2JXRUdNYUxMa0l0ekVkbnZHcis5Ky85Q0FNTWhta2d6S1pnT1dwSUt0Q25WZ1BkTUl3RmljQ09jUmg5WWhZMGt1VUVHZWFrVURQd1ZTakFhVGY4QnNNMEZCWlJzUnlSQ3ZTcDFWQTNER05CSXJCdkVrNEg1a01qV1U3QTAxR2pDTE9ROHhCbmJIa0gzNkoyaEdIaXVRVG5OcHBGZ1g1bG8yRkl4b1FYaVhYRFVQbm9ER2lYbHFTUVpWNURIQkh3NG5QT0lCbndZaHFHZVp4aEd3L1doNW85bnlQcy9nZ3QrTDh1UFo1eDQyb2FobW5BV1NFRFZoUG1GQkxGVGVyV05ackZoajZSazJXVHVnMGlEY09ZTW9xWmZ4UEVFNXRINGJWVHM2RmRYNUZDbG5rTmNVYklpLzlJZ0hjWlpCeTQ4dXpuS0lZMHNQTUR2T0gzNHI2WmhtNFlFMVpOSXdjcExLelArK2EwcmM5eVZiTjJ1bUV5SXY4Ry9Gc2czdGc1SHFPREM2RGRYcDFDbG5rTkNuRFdnOGI2bzNNTTdQS2tVOGI3R3h2ZXdyZjUyQm1qWWNvQTZUNjI1dEZ6RlZQYTErZTFNckVZaHJIemI2QXNmN200Qk5yOWRTbGtXV1VlRTJpSzR0ek5qY0lvRHdOZXZBT0xXUEVtU2gvN0FsdWlNRXdEaS9zbjJjMW5nNWowV2FlQlhjTXdac2F1TkgrNXVoemF3dzBreTRZOFJoSDJkVVRPZ0EvRGJaamx2TjhEMitkNjVuK0dYQWMrd3lRYmhxa3J6QWZyNEd4UTNvWlo3T3F6YmwycmhtR3NqQm1xb09jdk4xZEJlN1NCWk5tUXh5aEcwQWV2QmJNY09lZU43YjNNM28vUnpvSmhhZ2x6SWpxVU1ETkxEUG81MmRiTU1Jd1Jpc0g4WlF4emxqdHJvRDNlU0xKc3lHTVVJK1REenkwWVpqTml4TGIzOFFjTGhxbU82SkhmM0RBeDZWYzNNd3hqaEFISzg1Y25tMGoxZVV6RXk4WkJGZ3p6TE9CR1JjU0FBNTlpck1VbEtRZWlRemt6dzhTZ244UEtrc1FZemM2djFKL2ZIVitQaG90NzRlc2JSdURYeHZ4Rk40d3hqMWsvSEw5bTNXajc0UmlSRHA1MFFsWXhUTWdZZE1DTFkrRTMxcytNMStYYWg0Z1M3T2VNKy9sOW5wTXVuR24yVXpSSjR3Y3RodWhRSjQzbHAweWM5SXRGNm5Ec2pNRVlFMk5rckVnUEMzdWlyaHhIMkw2OFA3UVZBKzF4N1RCb3U4WkQ4OCtEZG92NWk4RXdMUE1hNzdFTzY5clY1NWc0TmhsanZRdzI4MzRZWVpZNTV6OUQvdkM5MzhpMUc0YVhrV3NSSmJhOGkxOGErem44T1padGZBVUZRUUFGaFBVTVAwWTEyRWUrTkhaMnM4WlJ2NXFoUGJXb0NjYkFXSXl4TVZhekl3blpKVGx0dFgwc0hrck9vZTJ5U0w1a1BEa2IydVdsME82dFplNmlHNFpsWHVNOTFtRmQ2N29jZzR6bEVjZkVzWm5zL3ZiUmx4d3hSSnZJVi9WbmZhakpoRGRjNStrRkQ4b2dDdXovRk1QMWZ2WjlndTRSL1JDNU9DUEVzR3lVTmJRdEJTSisramtpWnExY2tVYzFHSk0rSXpOV1dJRzhOR3drTThJZUpxdm5GcHJ6d21KbzE1WXp3VFhPTHNaWmh2ZFloM1d0YWJKdmpvRmpzWFFVMDR1Z0JIbVBPOEJJQjN4akxYVldoR2VnOTJBVDdPZXNHeGY4SGp3dzJmVTA3ckFXaTJJNTR0SmJXSUYrc1hSM25BMWdiSXlSc1ZvK0kzTitFWExLMW43NzI2dngrTzVhYUJtUk04aUQ5VFNHWVhZeGtOZDRqM1ZZMTB5UGZVcmZIVGdHV0VESWpXK0xDZngrSDVwWXlFR3ljM2RYRExNY05ySDVMZno0dEF2bk43Nkw3OEFjK2c1clZadG5YMmlZUElyMFdaZHRURTNBR0Jrclk0WWRTUDd4RGZtaEQrcEdVRW4yd2I3WXA4Mm5vMzljYUlHeXNJR1FCMjljYm9sQ3NJSHQ3K09WcmUvYmZzSXFhdU1NQzhlVFE0ays2N0N1RFRCV3hneTdrS1VrdDh3TVhXV1dlS0xDT05Ta3R2VFJqWDNCUVhKQWxvcnZ5Z3h3TEo2bW9SWTFxUTBIU1FmT05ubGtKdWd0TThMVFdNMUNEV3FKWmw0NFNQclo1c2N5TTRTaW1XM1lobTJwZ1V3REIweUlEK3U3dW5iSU5teUx6QU1IaDZlaDVxVWwra2FkdmRtRmJkaFdOR29oYzhEQjdnbjRNclNRRzNMMkRjTTJiQ3NhTG1RYU9JWlp6eDNadTJ2dEwwbHN3N2JVZ0lPa0I5ODVsVGd3QlU4dUdZNHkyQ0hic0MwMVJLc2tIQ1EzK0dValAxTGpWd0dQMGs5NnI1SnAzV01idHFVR3Y0eUVnK1NHdkVHZUhaalBkejZwOGhmK20wOUJCMlVXcVVheW5GWWR0cVVHdGVBZ2ViRjZNUExJRVlYYmZPdk1wNTJJbVlQWDVzdnNVUkJoU0xrQXIwWE9SR3pMazNpaWRZZWFjSkNja0pOMXZ6ODJnMGNWT0pNWXpZSm44dlRUUmM2OVpFVUVlRTN1ZFdZZGZiWmhXMnBRU3pUL0FBZkppVzFqTVB4cytHUWRmL3p3RW5SZmxwai93UVNzdzdwNk8ycFFpNXB3a0h4WU5SaFo5MDdDdWZPTCtHaXNuM0ZCOEthTjR3aXN5emJoNVV1amxtaWVwelljSkJYNG9kcTNqMHlIZG1XWi9tVWp0a2lPVWhZMndUYlNkak0xcUVWTmFzTkJjbUhMYUhRNlBZZVB4Tnl0eFRqNXNYTWpTckF0TmFoRlRkSHVEQWZKaFYzamNTQXdIMCt1TG9jYmNZSm91YWdwMmdlUlZIQjJkNnZKSS9BTlNWSi9oemlEbXRSbUgwZ2FPUG5MSHlVNXJRMUZvTGIwOFJWNzl3RWN4WlVtY0Z4eUVNZzRDdWVjMlNVNUcrZDB6cGh5empiR3VjRG5ERnBNS0FUT3hMTTNzVGlYSThFQmNMcUFjMFlnSDFoT2lJMGs1eVF5Nkx1L3FyNjZVblcxbnJySHIvdU4wUGRWL1hiWFRIZlBZL1d2Q1QwanQ2OS9GNzZOalkyTmpZMk5qWTJOemNvTHoreUJrZmdRUDBIVVQvcG5JeEhnWktMekFxSWo4U0YrZ3FpZjlNOUdJb1AxV2lqSG9ScVNVRFdPQ3hqS2NhaUdKRlFORCt1MVVNb3dIbEtnOFNqTE1aUXlqSWNVYUR3S1hLL0ZzaEZtUUg2bEdkZ29oMWcyd2d6SXJ6UURyRGZ3bkhIR0dWMXdBNTVHTGVwVkxaN1cyN29VU1N5bG1BTHhaQXBLTTR5bEZGTWdua3hCYWFoUWRrVVY1a0ZhTUUrMzNUVndNRmRCUExzcXcyQ3VnbmgyVlloWWpzRjBTRXJUY1V5Z1dEcGdNY1N6eGVpUVFTd2RzQmppMldKMHlEdVdkeUNGMEgyUENSQk1IMGdDWCtONTlUVWtnVDRaQk5NSGtzRFhlRjU5RFVtZ1QzNVBRL0dQTERNeERFZWpRaDJ0Znphem1VZWFYWE1PWmlxa0JTTlFGbmszTlNMQmZsTXpDR1lxcEFValVCWjVOelVpd1g1VDh3cW1DaEl4SHAwZCszVFdiU1NpS3VkZ0ZrSWN4anYySFE5eFdKaEJNQXNoRHMydU44RmI4SVY1dlJ1YUZ4UExwZ24yM1RRbW1ubm9rbU13MG9JdWpuMjdRRnd5Q0VaYTBNV3hieGVJU3g3QjNCRHpOTlE1eGY2ZFk1NmVic2d4bUFhSVE0VmozNG9Bd1RSQUhDb2MrMVlVUXpCUFE1b1lWc0F4aGtHYWVEckhZTDZDT0J6djJQZDRpTU8zR1FUekZjVGhlTWUreDBNY3ZzMGptRnBJRTBjWGNJeWpJVTNVNWhqTUt4Q0hEMUFXczErWjNpWU9yMmNRekNzUWh3OVFGck5mbWQ0bURxL25FVXc5cEltS0FvNVJBV21pUHNkZ3JvZTA0SFYwaWJ4MmVUM0Jmb015Q09aNlNBdGVSNWZJYTVmWEUreVhZTDBXVEVmVVF4SllxQ1NCTmRnNWcyQTZvaDZTd0VJbENhekJ6dmFVbEN5YXV5R2VQWnpoUndOM1F6elQ5ZHFMM2lUQmJJSUZFRTkrd0RZWkJyTUpGa0E4K1FHNlhudGJuVFNhVXlDZTlNN2g2dzJuUUR4eHJkZE8zRG1pdWM5RExNL2srQVdxK3p6RTRsNnZmVFRnREtZZFprRUtOQStiNUJoTU84eUNGR2dlWE91MUR4OFRSTE1IZm9Ha3RCTDdCZmcrN3g3NEJaTFNTcmpYYTE5dlNCek5aWkNVYmc3NEpmRExJQ2s1MTJ0Zm9Fb2Z6UXVRaEY1SGFlQmZNWGtCa3REcmNLN1h2cUtaUHBnZEVqNDFMY2NlUmZBN1NUc2tmR3BhanNMWGExOENkMFp6RzZRRmR4YlJMN0xkQm1rQjY3WEpLcGp5RnI3dit5MDJMcUpneWx2NHZ1KzN5SGk5RnMxQVJ6Q09zOXJCb2hub0NDYUg5Vm93RlZnSmlWaU5yWXN3bUFxc2hFU3NSazdydFdpZWdVUThXNnpySll4bklCR3N0eFZNZFhXMXhHbGx3WndQaWJpb2lJTTVIeEtSNDNvdG1NMnhCcUxXb3FLSWc5a2NheUJxTFNvc21Cd244aG5UN0dKZmIrUXpwZ0RydFdER1ExUlJYdmZBOFR0SUFkWnJ3ZlNEcU90YVFURDlJT282Q3lic0Y2eDZ0b0pnVG9Hb0FPdTF0OVpkSWFwYkt3aW1LMFFGV0s4RjB4NTFtSS95VmhCTWU5UmhQc3BMYkd4c2JHeHNiR3hzN0cyMWpRVmpZOEhZV0RBMk5oYU1qUVZqWTNQa29PVjlNUlZsR1J5N1RJL2QxK1BwL3I2WWlyS01yb3d5Rlk3MVdpeWlwcUhNY3l6VElLcXZwMWhFVFVPWjUxaW1RVlRNZWkyWXFSQXYwVGhpVVZPOS94dkFOUnJmc1NqV2ErUCt3YnFqQ1haTTV3OVdvOG5wbUhhOVJQY1AyUCt4UWtmajRWaDJ2VVQzRDlyL01jSkg0ejZHWFMvUjJ3L2MvNzRob25IdGE5ZEw5QlNOejMxQ1J1UGF4NjZYNkQyYXdyY05INDE3Vzd0ZVlrYlJlSWtsUURTdWJleDZpUmxIRXo2V2RORTRZd2w2dlVULytoVHBXMjVuTEVVWWpUdVdZcnRlNHVmbm5pNy9mc0pKY3V3UlJ3aUUveTM4bVFTNFhxS2ZhQnl4RkdrMGlXTUpmNzFFRUlnY2NzZ2hnT0xQRWwwNXBQak9DRHRpS2Y1b3dzYWl3VWhMZUZTUmFERDhtWHMvdGU0Rlk4RTByQVBCMkZOU2tPc2wrbjlLK25iZGU5RnJMM3BmeWZCRjcrdkJZckczMVFHdmwxaTRRZUZpc1JOMzRhK1hxQUplTDlFOTl0R0FYUzh4K2RpSGozYTlSUHQ2ZzVkOTdYcUo5Z1VxOXpIc2VvbjJGVTBQeDdMckpkcVh3TjNIdE9zbEZ2NXJKdlpySm5hOVJQdEZ0dlMveUdiWFM3UmZsWFgvcXF4ZEw5SEdycGRvWTlkTHRBay9kcjFFRzd0ZW9vMWRMOUhHcHJWZEw5SEdycGRvWTlkTExKS3hzZXNsMnRqMUVtM3Nlb2syZHIxRUc1dXcxMHUwNFpQbjRZMlNiR3Rqc1Z3TlVWZTd0cld4V0U3RFdvaGFpOVBpdHJXeFdIcGdHU1JpR1hvMDNkYkdZdGtMMzBEaWNSdmJsTmpZRU1MV21BOXgwVzNhK0RjRkxKWU9xSVlrVkkwT0pUWnRNcFlOOEFva3BWZXdRWWxObTRxbEZBOURDcUg3bHBhMHFiRVRjL0pydExFVGUzWml6b08yZEdMUFRzeDUwRVpQN05tSnVaUUNuTmc3YXRES2ZYQTQxa3V3N2I2b1RzdDFUTDN2VXhQZS94R1F0SXI0eEp4L2VtSXZxMWgyeFVYb2c2NEp0dDhJTi9nS2h0dCtnNXN4RUQwUzNQL0dHSmw5TU1GUHpMbUZPTEduc1Z5QXk5QmJkVTI0N3hWcGduSEVjZ04raHdHcVI4TDdIK1EvbU1BbjV2eXJSZ2Rmc2V5R0N6V1NTOVNsNkkxdUthTDVLRzB3dXU5dmNTTXFjYXZxcjlFY2t2RCtCMk9OLzJEQ25aanp6MzFpTDJrc20rQXNYSUZMSW5xbmpHWkVnY0hjaEVHNE5XSUFLbE5FODNnckNlWmhTQ0FQWi9VSW81STlQWEg3aWZnZmo0OHdLdG5URTdlZmoyK0tNeGozNUJESjVpVk1scTlob3RGYzZvcEdZM25MNDJ1WWFEVDlYZEZvTEQ5REhDeVlqS0s1c0psb2VtczRlMFQyT1JudmVueVhkR016MFF4QS8yaTArcTV1R1dRZERtWnpmL3Y3ajJZWDE5T1QzcmFMYnZ0dmVNdnplWmhPanFlblNyMnRrMjU3RG42QkpHZkJaUGIwNUlqbUxCeVAvMGExUXgvQUVZemo2Y2tSemJVNEYxOURIQVlxQ3licmNUdzlYWVJyOForb2RyaXl5Ykd1ZEFTVDl1bnBKZ3pIWW9qRGtDYkhHbUxCWkQzNjlCU0o1bUpjZ0FtT1VON0RGVEhIdXNvZGpPUHBTYVBCTGJnQmJ6cENXWUZCTWNjYWFzSGtGODM1NkkzejBOL3hJdmNEbk9FNDFwV3VZQnpSWEk5S1hJZjdIQzl5VitFcXg3R0dXREQ1UkxNWDlCSEcrZWh5VFpMUGZ3cTQvKzdRUnhqbm8wdFZnbU50WnNIa0U4MVI2SWZYbW9sbEFzb3l2UDlldUFQZlE2STBwUGJGazRFRnN6VUdOQlBMUnpnOTQvdmZBZmREWXF6QmxlNGpXREFob3Jtam1XQmV3Nlk1M1ArVGtCamZvOEtDS2I1Z1JqWVR6T001M2Y4VVNJenE0a3pCZ25tb21XRHV5ZW4rMzRIRW1HVEJGR2N3RHpZVHpDMDUzZi9ia0JqajNIdmFGRnN3bFlHRCtYMUppTEd4WUd3c0dCc0x4b0t4WUN3WUM4YUNzV0NlYWlhWW9UbmRmdzBreG9NbFJUa1d6TDJZSHVQYW5PNS9NdjRlWTNoSjJ4Z2JHeHNiR3hzYkd4c2JHeHY3dDFPMXgwN1lOWTdlMWo3a0FnL0hxVmd2d2JaSFFOSkt2QmlMNVdqVVExeDBtNk5ETFBBM3VCa0QwU1BCOWh0alpHYkJXREJ6SVhnS2p6b0k1b2FJNVFiOERnTlVqNFQ3RHJKZy9FOEIzN2hybDlmQ2Zvc2JVWWxiVlgrTjVwQ0V4eGlNTlJaTTBHQTJ6Mk5SbStNYURNS3RFUU5RbVNLYXgvTU1Sa1FPd1AyWWpTWDRTZjk3TVJiaEIveU01eTJZckI5aFZOS25KMjQvSDkva0VZeUliSURSV0kwWnVBWlg0VFdJenRlNENSZGhTd3NtMjljdzBXajZ1NkxSV0g3TzR6V01pSlRpQ1Fqekh6RzNQd3JSK1V1UkIzRk1DMFNkNW1PN3JLSzVzWmxvQm1nNFhTUDdYSVJsa0p5Q3VSckNmSXN0WTI3ZkF2TWhPcjJLT0JqSlUxWi9pVTZPcDZkS3ZhMlRibnNPZnNscjRTS3lJVDZGTUs4N3RxdUU2RHhod1FDWlB6MDVvcmtXNStKcmlNTkE1U3VZWGJBVXduem8yTzV3TkVDWVYxekh0R0N5ZjNxNkNjT3hHT0l3cE1teGhuZ0tabGNzaHpEZlllc0UyejFqd1FCNS9JVTZSYUs1QlRmZ1RjZkNWbUJRekxHR2VnaW1IVDZENk56WXpIYWRzQXJDWEJhOTNZTEpQcHJyVVlucmNKL2pSZTRxWE9VNDFoQVBMM3I3UW5SK3dxRXgyOXdOWVNaaUF3c0d5UE12MWgzNkNPTjhkS2xLY0t6TlBKeURlUWlpOHoxdXdKN1lBNE1nekpQWUpFQUhGb3orNVhyaERud1BpZkZtbmgrejZ5Tk5OVlkyQ1djNWhIa2tmQTRXekE2NEh4SmpEYTRzeVhsRVpEM3NncjFSQTJGV1kwOExCaEVoL29KUFFtSjhqNHFTZ0NNaWN5QTZFN0daQlJNK21DbVFHTlVsZ1VkRUJxTHBmSWpPRmt6WVlONkJ4SmdVSUpDOWNRWEc0eVhVSURxTGNKZ0ZFeTZZdHlFeHh1VVl5a2w0RlN2eEw3eUlLdlRHR1ppQTVaRlByZmUxWUlvcm1OL25FTW9HZUFTaWN4bmFOYlB0b2ZnYlJPZmx0aGVNQlhNZFJLY3l3ZmJkOEEyRW1kdjJnckZnL3JmSjIrYTlFdTR6RXNKODB2YUNzV0MraGpCcnNHL0s3ODY4MWZhQ3NXQStodWhNVHJqUEt4RG0vTFlYakFYVEcwM25MOWpHOFFKNUJJUjVCS1VXVEpoZ2FpQXhIc3pwTGZWUXJJVG9mSXZIMEEvbjRWTGNneThnekdpc0h5NEpDMll5L2g1amVJN25ZWHJnUWN6R1FpekRjdnlJSmZnY0QrSEFWdkRSUVBjOGxiVFpzYkd4c2JHeHNiR3hzYkd4c2JHeHNiR3hzYkd4c2JHeHNiR3hzYm5xVDZ1M3hXU3N4R3BNeHk3RnV0NGpCeTNmRnBPeEVxc3hIVG10MTJMWkVYV1FpQVhZc3doajJSRjFrSWdGQ0xSZWl5VjVOQUZqeVRjYWkyVUhkeXpGRlEwaDdPQ094YUxKT3BpdE1CZVNNSnBkQWdlekZlWkNFa2JqYWIwV1NrZVVGaEROOUVDaGRFUnBBZEY0WEsrOVp2bHpBZEdzRHZpYTVjOEZST041dmZZQ04yMDBLd08vd0UwYmpjZjFXaXlGUkRNcFlDeUZST041dlJaTG1tanFzRTNnV05KRVV3ZXY2N1ZZa2tkVGh4MkR4NUk4bWpwa3RsNkx4UjFOOGNYaWpzWml5VHdXZHpRN0ZGMHM3bWl5WGEvRjRvNm15R0p4UnhOZ0xCYm8vaDFiUlN6US9WbHZxTEZZZG13VnNkZ0xYSXZGWXJGWUxCYUx4V0t4V0N3V2k4VmlzYkZZTWh5THhXS3hhVFd4NkZnc2dhZlZ4S0pqc1FTZVZoT0xqc1VTZUZwTkxEb1dTK0JwTmJIb1dDeUJwOVhFb21PeEJKNVdFNHVPeFJKNFdrMHNPaFpMNEdrMXNlaFlMRFkyTmpZMk5qWTJOalkyTmpZMk51dnlIRFZvWlNmOHRnaldzWCtqSXJqbzUvNXdyTU9DdWJ4UkVhempOZ3dxZ21CdWcyTWRGc3lmR3hYQk9tWTBLb0pnWnFDWmRWZ3NtK0lsdFZuQWRWVGduNm9pWUN3VitLZUtXWWNGY3pEZVV3Y0hYTWZ4V0tHT0R4ak04VmloWXRaaHdWeUN6OVVsQWRmUkg2TDZCd3ltUDBSRjFtR3hySS9iOFlXNkhlc0hXTWNHZUJ5aUhzY0dBV0xaQUk5RDFPUElaUjJqUm8zYWVzeVlNVDB4YlBUbzBkUDQ3MFdOOUg4UFE4L0diVUlIc3lVbVlvNmFpQzBEckdNNzFFSlVMYllMRU14MnFJV29XbVM2anFxcXFnMkpvUXFySUM2NnpiREdmVUlGMHhXek1Vdk5SdGRBcjZNYUlLb0JCd2NJNW1BMFFGUURNbHNIUC94OThURUVhL0FTanlqRCtlOWU0OGFOMjY1UjQvL1dQM3RKdHhIZFo5OFF3WnlMejFDdFBzTzVBZGJSRHhMUkwwQXcvU0FSL1RLS3BSOVdRZkQ1MkxGamU3UzBUK00yamR0Q2ROOStlZitnN3NFY1ZLczV1RHRBTUJNaEVSTURCRE1SRWpFeG8wZVdWV2pnMFdNc1V4NEo0eGg5bXFwcS9OK1IyOG9iOTJuY1Y0K3hiNkgvcDVlbDNSNHZvd2JWcWdZdkYzS3NKdis3ZmNwOTIyRUJKR0lCMnFVNTFvSDlHLzcvdm1lOE1xVjl5bGphWVFFa1lnSGFwVHhXZStkckZuMGFhdnpCTnhOVUZVUlZ4VzJqMFFnK2JqeG1JY0YwUmlWdXg5QVdETUhkbUlucWlKbDYyNUFFeDdrZGxkZ2w4cm5VNy9FWUhzS0REaFB3REJvZ0VRMTYyNFFXanZHUTN0ZnZDYVpUazJBNjhZUDdQUjdEUTNqUVlRS2VRUU1rb2tGdm05RENNUjdTKy9vOURpeGhYREhvMDFCNW9jRTA3dHZrNldsWUljRjB3TkdZaW4vaHIvaWlHVi9pYzFUSDR6YTJjZXovVjcyUHFUZ2E3WnFzb3h5bm93NlNrenFjVGpEbFRZSXA1d2QzT3VvZ09hbkQ2ZGpVOGRaNUZkWkVYN000bjVMY3IybldZRlhCYjdrMW5CdnhQajVGdFdlZjZyRnZSSWNXUG5JWWlYcElSdW94RXBzNm5oNDJ4VWpVUXpKU2o1SFJVS0tqNTFrRUwzbDhQZlFTQkQxLzdRdkpRL0VrYWpIYlF5aXpVYXZIUERURk9rN0NSeERQUHNKSktWNVhuSVNQSUo1OWhFVHIwQk53MHZnMjJWY3dqY2R5UEMybGptWUwzSUtabUl0WkJZUXlTL2VkcWNmYW9vQjFiSVV4V09zaGxMVjZySzBLZUJlMEZjWmdyWWRRMXVxeEVxOUR6OW9LZWprMlMveVVwQkgyMGdpbitYemJlZ1FtNGxQVXBJaWxSdmVaaUNNOHJLT254aWNGbW91ZUh0NCs5OFJjU0lIbUl2VTY5SFMvTko2UWMyNFhmZEhyR0QyNUoxamsrMXhIUnd6QXV3a2ZhV2JwdGdQUTBlTTZ0c1h2VTc2MnFkZDl0dlY0em1WYi9EN2xhNXQ2M2NlOWp2REJlQTNuZWRRa2ZIUjVQc09UZGZNZ0NjM0w4R1RkUEVoQ2puWDRla3B5QitQL0tjbjlROW9kN3lWL2hHRmI5c2xnSFoyeEFwTFFDblRKSUpiT1dBRkphQVVjNi9EeW90Y2RqT05GYnhiQlhJR2FGTUhVNElvTTFqRVlrdExnRElJWkRFbkp1UTRQYjZzZHdiamZWbWNSekFUVXhzUXhWMVZIMUdKQ0J1dDRBNUxTbXhrRTh3WWtwVUxYNFRoeDV3NG11eE4zN2gvU0huZ1ZjeUtQSXJWNFF0VkdIbjNtNkQ1N2VQNUt4UkpJakZsS29uU2ZyaDVqNllvbGtCaXpsRVRwUGduV0VlYWpBWi9CbkkwNVRZS1lqYmtZaFMzVVNIeWl0MmxRN01PK0h0ZlJGeExqT1d5dG5vUEU2T3N4bUw2UUdNOWhhL1VjSkVieWRlVDQ0YVBQV0VveEFsOWlwa1pRZ3hzaW53TzEweityMFcxbTZqNGpzSjZIZGF5SHh5RVJJMUVlK1R6cVhrakU0MWpQUXl6cjRYRkl4RWlVTjltdUhQZENJaDdIZWtYMzlRYlA1ejZtYXdTZjRHMmM3dGorZE4zbUU5M25SV3pyWVIwNzR4OFE5U091ZEd4L3BXNGo2aC9ZMlVNd08rTWZFUFVqcm5Sc2Y2VnVJK29mMkhtZC9RS1ZudW10VmROeFlJSjlEc1EwNkg3ZXp2U0ttb2RqRSt4enJHNHJ5dGVaWGxIemNHeUNmWTdWYlVYMVhHZS9vcW0vZ2pvZkU3QlRpdjEyMUgzbS8xLzc1Z0FjVFJKSDhYZTJ6Y0xaWnVsczI3WnRGcy9HRi9PekdXZXo4V2ZidG1MMzlidk1WRkNUemFEbitQOVZ2ZHBPeng5VG1iYzdxQjZ0RHd5OVlhbTBJbHJId3lXTVpZNlYyOGVBWVg2M0RucEV5L1YrTUpZNVZtNmYvK0lpY1A2ejk5VEtzNjVEOW9aSG1LUDFPV3V3Vm9EOTJFZHJ2VmFhbnpjc21hT1ZhdFhZSjRCWjl0RmFieTEyOHJ3ZnpORkt0V3JzODE5N3pZVC82RE8xSGd2eXZoRnpXWU8xQWk2M2VNL0FmckRHcFFFTWM0bldlMXErOTRPNVZvMUw4VitEdnhEL2hGb0czOXRtcmYwREhHeFQrOEZhdmU2SElBZ2p2OEtPRk53Z0NLTyt3cmtVM0NBSVdkL2hmYTBQNEFaQmlNYWpnSUlMQkRITGdaUFNzWUxpR0xFUWhBbXB1R3J1WURSUUhLTVhCREhNV3l0SFExRWNveWNFb1NRQk8wL0pSTWFtSENpS1k4N0JDVUdZa0lZajVnN0M3S3BDS0lwanpzRUpRU2hMeElWTFI2Q3RyaGlLNHBoekVBUW5LbFB3d3BweFVJMmw3ZUtZY3hBRUo2YjN3OEJOdVZETlplM2ltSE1RL3Z1TS9BcTd3d1BST093MmR6Qlc4ZHFscFp5eXIyT3dLdElIdS9uby9XOUNHUDAxemgvN0xYNGU5eDNTdEpLMEVwMDBWaXZyZThTWEpXSEE4cEZvcTR0MkdJWmp6cFVtWWdCakdEdXVaN0ZIR251Ty9nWW53VGpDc21YTFh0ZWFwZFhHVC80TlUraUR0MitrRDI2dFNNYWlDV2xRRTFQYk5jRkJrOU9oNWczbUtZalhMclpoT09ZY3R6SEdPZGV1eXg3c3haN2FOSHZBTkdLV043U1VnOTZBU1diMHc3NHJSK09yZGVOUXN6NGI2azlsZGRVR1BiYzFuM2RHdkhicE1BekhuT08yRFE1NWRqM1daZy8yUWhpSVdWN3JiSkpObXpaMU44MXJNTTIyQWx5ckQvNkVwbEtvcGpJb2ZuYUk1dWd3UzRlc2VZZDR1d1pyc2piQ1FzenlpblVLVWxSMWRiVWkvTFRudUoxeE1NMzJBaHhTRjhXMzJnQ3RMUlUwaEQ4eGx6VllpelVSRm1LV0Z4ek1RaHhOdzNpRVFVMFJibXdvd1V5L2htRXVheUJNeEN6UHhqSkxETk04aXpDb0tzVGhqU1g0dWFrTU5XNk53bGptTUJkaEltWjVzck5acXFxcVZDeTR2WnRwbmtSWVZFZXdzTm1GV1JqRFdJU05tT1Z4OTJhSmFackhZWnBaQTNEcXhtdzBXTGZTTWNVWXh1cWMweEFXWXBiSHRGcmNteVdtYVZwWUR5YVpuSTRQMTJaQk5aWDBiaGpHTUpZNUNBTXh5ME9kemJKOSszYmxCK1oxTTgxRE1NV1VUQlJ4M1V0VG1hdnJGM3VOVEJTbUViUGNiOElzTVV4enY0bkZVcWZQRzR4MVZSSEhaeStUcWU3empHVU9jMkVLTWNzOUpzMFN3elQzQkYzNzh2eUswVkQxeFoxTTBmNWtkMWhkRklkU0hIUE8zczVZTHQxa0xrd2dacmxMcTlrK3NOdTJiVk1tWVQyN052dXduOTgzQTNhY25JNE1QdTV2S3V0NG9sc1R3VmViYzdFSExEaldjMTgybFhhY2xwakRYTlpBRU1Rc2QyZzFtVGRMVE5NMHNTKzhFdW1EWStjTXd2THRoZnhWNFIwUXR0VVU0VW4wQUxjeGhySE1ZUzVySUFoeUdtbzBieFpYcG1sa2Y2L1hMemN1R3dsVkcrVlRXeXpVSnJnY3ZjQVl4bkxKQTNOWkEzNFJzOHl3RCtEV3JWdlZYd0g3MkQzWjM1TnBKcWJoOTdWWk5Bd2lXL0p4UEZ6Q1dPWXdWOWZvQTg4STFzR2FGZHNzb1p0bUJ1VjJaZDArTS90ai9mcHNwRlZIc0I4OHdoeWRtOG9hckFYQnp5OU12TlpIK0J0Z1g2di9QVzROYzhtc0FYaHZYUloyZ2srWXl4cTYxcVV3Z3lBSWdpQUl3aDl0ejFiMDJ2bVExQUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggMjEwcHg7XG4gICAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNHB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIDMgQ29sIEZsZXhib3ggR3JpZCBOZXdzIExpc3RpbmcgKi9cblxuLyogVmFycyAqL1xuJG5ld3MtZmVhdHVyZWQtYXJ0aWNsZTogZmFsc2UgIWRlZmF1bHQ7XG4kbmV3cy10cnVuY2F0aW9uLXRpdGxlOiAnc2luZ2xlJyAhZGVmYXVsdDsgLy8gT3B0aW9uczogbm9uZSwgc2luZ2xlLCBmYWRlXG4kbmV3cy10cnVuY2F0aW9uLWFic3RyYWN0OiAnc2luZ2xlJyAhZGVmYXVsdDsgLy8gT3B0aW9uczogbm9uZSwgc2luZ2xlLCBmYWRlXG4kbmV3cy1kZWZhdWx0LWltYWdlOiBudWxsICFkZWZhdWx0O1xuXG4kbmV3cy1hcnRpY2xlLWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG4kbmV3cy1oZWFkZXItY29sb3I6ICMwMDAgIWRlZmF1bHQ7XG5cbiRwbGFjZWhvbGRlci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1jb2xvcjogcmdiYSgjMDAwLCAuMSkgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcyAhZGVmYXVsdDtcblxuLyogTGlzdGluZyAqL1xuLnNlY3Rpb24tbmV3cy1saXN0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAmLWxvYWRlZCB7XG4gICAgJi5uZy1lbnRlciB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuXG4gICAgICAmLm5nLWVudGVyLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuYXJ0aWNsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIGZsZXg6IDAgMSAxMDAlO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyAvLyBJRTExIGNhbnQgZG8gc2hvcnRoYW5kIGZsZXggd2l0aCBjYWxjKClcbiAgICBtYXJnaW46IDAgMCAxOHB4IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICRuZXdzLWFydGljbGUtYmFja2dyb3VuZDtcblxuICAgIC5tZXRhLWl0ZW0tYXV0aG9yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5maWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDY1JTtcblxuICAgICYtYm90dG9tLCBpbWcgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIvY292ZXI7XG4gICAgfVxuICB9XG4gIC5tZXRhLWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcblxuICAgICYtc29jaWFscyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyLCAuY29udGVudCB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIC5oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5ld3MtaGVhZGVyLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZXRhIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICAgIC5tZXRhLWJvdHRvbSwgLm1ldGEta2V5LWRhdGUsIC5tZXRhLWl0ZW0tbW9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgfVxuICAudGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgQGlmKCRuZXdzLXRydW5jYXRpb24tdGl0bGUgPT0gJ3NpbmdsZScpIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbiAgICB9XG4gIH1cbiAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICBtaW4taGVpZ2h0OiAxLjRlbTtcblxuICAgIEBpZigkbmV3cy10cnVuY2F0aW9uLWFic3RyYWN0ID09ICdzaW5nbGUnKSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG4gICAgfVxuICB9XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgLm1ldGEtaXRlbS1kYXRlIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5yZWFkLW1vcmUge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAvKiBQbGFjZWhvbGRlciAqL1xuICAmLXBsYWNlaG9sZGVyIHtcbiAgICAmLm5nLWhpZGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvcGFjaXR5OjA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gICAgLmFydGljbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWJhY2tncm91bmQ7XG4gICAgfVxuICAgIC5maWd1cmUgLmltYWdlLCAubWV0YS12YWx1ZSwgLnRpdGxlLCAuYWJzdHJhY3QtY29udGVudHMsIC5mb290ZXIgLnJlYWQtbW9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAuZm9vdGVyIC5yZWFkLW1vcmUge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1ldGEtdmFsdWUtbW9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAvLyAnUmFuZG9tJyBuZXdzIGRlZmF1bHQgaW1hZ2VcbiAgJGNvdW50OiBsZW5ndGgoJG5ld3MtZGVmYXVsdC1pbWFnZSk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAuYXJ0aWNsZTpudGgtY2hpbGQoI3skY291bnR9bisjeyRpfSkge1xuICAgICAgLm5vLWZpZ3VyZSB7XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKG50aCgkbmV3cy1kZWZhdWx0LWltYWdlLCByYW5kb20oJGNvdW50KSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDU4MHB4KSB7XG5cbiAgLnNlY3Rpb24tbmV3cy1saXN0IHtcbiAgICAuYXJ0aWNsZSB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDlweCk7XG4gICAgICBtYXJnaW46IDAgMThweCAxOHB4IDA7XG5cbiAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLCAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIH1cblxuICAgIC8qIEZhbGxiYWNrICovXG4gICAgLm5vLWZsZXhib3ggJiB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmFydGljbGUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gOXB4KTtcblxuICAgICAgICAmOm50aC1jaGlsZCgybiszKSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA5OTJweCkge1xuXG4gIC5zZWN0aW9uLW5ld3MtbGlzdCB7XG4gICAgLmFydGljbGUge1xuICAgICAgZmxleC1iYXNpczogY2FsYygzMy4zJSAtIDEycHgpO1xuXG4gICAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlciwgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICB9XG5cbiAgICAvKiBGYWxsYmFjayAqL1xuICAgIC5uby1mbGV4Ym94ICYge1xuICAgICAgLmFydGljbGUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAxMnB4KTtcblxuICAgICAgICAmOm50aC1jaGlsZCgybiszKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoM24rNCkge1xuICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLyogRmFkZSBUcnVuY2F0aW9uICovXG5AaWYoJG5ld3MtdHJ1bmNhdGlvbi1hYnN0cmFjdCA9PSAnZmFkZScpIHtcblxuICAuc2VjdGlvbi1uZXdzLWxpc3QtbG9hZGVkIHtcbiAgICAudGl0bGUge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG4gICAgLmFic3RyYWN0IHtcbiAgICAgIG1heC1oZWlnaHQ6IDhlbTtcbiAgICAgIG1pbi1oZWlnaHQ6IDZlbTtcbiAgICB9XG4gICAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuICAgIC5mb290ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNjBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJG5ld3MtYXJ0aWNsZS1iYWNrZ3JvdW5kLDApIDAsICRuZXdzLWFydGljbGUtYmFja2dyb3VuZCA1MCUsICRuZXdzLWFydGljbGUtYmFja2dyb3VuZCk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBGZWF0dXJlZCBBcnRpY2xlICovXG5AaWYoJG5ld3MtZmVhdHVyZWQtYXJ0aWNsZSkge1xuXG4gIC5zZWN0aW9uLW5ld3MtbGlzdCB7XG4gICAgLmFydGljbGUge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuNmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5ld3MtaGVhZGVyLWNvbG9yO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC44ZW0gMCAuM2VtO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hYnN0cmFjdC1jb250ZW50cyB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuZXdzLWFydGljbGUtYmFja2dyb3VuZDtcblxuICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAuMmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRuZXdzLWhlYWRlci1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCRuZXdzLWFydGljbGUtYmFja2dyb3VuZCwwKSAwLCRuZXdzLWFydGljbGUtYmFja2dyb3VuZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLW5ld3MtbGlzdC1wbGFjZWhvbGRlciB7XG4gICAgICAuYXJ0aWNsZSB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICB9XG4gICAgICAuZmlndXJlIHtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5oZWFkZXIge1xuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmFydGljbGUge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAuaGVhZGVyLCAuZm9vdGVyIHtcbiAgICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgIC5tZXRhLXZhbHVlLWRhdGUge1xuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICAgICAgbWluLWhlaWdodDogNi42ZW07XG4gICAgICB9XG4gICAgICAuZm9vdGVyIHtcbiAgICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDU4MHB4KSB7XG4gICAgICAuYXJ0aWNsZSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMm4rMykge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLyogRmFsbGJhY2sgKi9cbiAgICAgIC5uby1mbGV4Ym94ICYge1xuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmFydGljbGUge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDlweCk7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgybiszKSB7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMm4rNCkge1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzAwcHgpIHtcbiAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSA5cHgpO1xuICAgICAgICBtYXJnaW46IDAgMThweCA2NXB4IDA7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgb3V0bGluZS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIC5maWd1cmUsIC5oZWFkZXIsIC5jb250ZW50LCAuZm9vdGVyIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmhlYWRlciwgLmNvbnRlbnQsIC5mb290ZXIge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgY2xlYXI6IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZmlndXJlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IC42ZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5ld3MtaGVhZGVyLWNvbG9yO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogLjhlbSAwIC4zZW07XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5hYnN0cmFjdCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA2LjZlbTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDllbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmFic3RyYWN0LWNvbnRlbnRzIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5mb290ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5ld3MtYXJ0aWNsZS1iYWNrZ3JvdW5kO1xuXG4gICAgICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAuMmVtO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG5ld3MtaGVhZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJG5ld3MtYXJ0aWNsZS1iYWNrZ3JvdW5kLDApIDAsJG5ld3MtYXJ0aWNsZS1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA5OTJweCkge1xuICAgICAgLmFydGljbGUge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDMzLjMlIC0gMTJweCk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgLmhlYWRlciwgLmNvbnRlbnQsIC5mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzMpLCAmOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzQpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLyogRmFsbGJhY2sgKi9cbiAgICAgIC5uby1mbGV4Ym94ICYge1xuICAgICAgICAuYXJ0aWNsZSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAxMnB4KTtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzQpIHtcbiAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgzbis1KSB7XG4gICAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIDEgQ29sIE5ld3MgRGV0YWlsICovXG5cbi8qIFZhcnMgKi9cbiAgJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiAgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXMgIWRlZmF1bHQ7XG4gICRiYWNrQnRuU3R5bGU6IHRydWUgIWRlZmF1bHQ7IC8vIHRydWUsIGZhbHNlLCBidXR0b25cblxuLyogRGV0YWlsICovXG4gIC5zZWN0aW9uLW5ld3MtZGV0YWlsIHtcbiAgICAmLWxvYWRlZCB7XG4gICAgICAmLm5nLWVudGVyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuXG4gICAgICAgICYubmctZW50ZXItYWN0aXZlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC53cmFwIHtcbiAgICAgIG1heC13aWR0aDogNzIwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLm1ldGEge1xuICAgICAgbWFyZ2luOiA0MHB4IDA7XG5cbiAgICAgIGRsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgICAgJi1pdGVtLXNvY2lhbHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmlndXJlIHtcbiAgICAgIG1heC13aWR0aDogNTYwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLm1ldGEge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcblxuICAgICAgICAubWV0YS1pdGVtLWF1dGhvciwgLm1ldGEtaXRlbS1iYWNrLCAubWV0YS1rZXktZGF0ZSwgLm1ldGEta2V5LXRhZ3Mge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbjogNDBweCAwO1xuICAgICAgfVxuICAgICAgLm1ldGEtYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLm1ldGEtaXRlbS1hdXRob3IsIC5tZXRhLWl0ZW0tZGF0ZSwgLm1ldGEtaXRlbS10YWdzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSB0cnVlKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGlmICgkYmFja0J0blN0eWxlID09ICdidXR0b24nKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogUGxhY2Vob2xkZXIgKi9cbiAgICAmLXBsYWNlaG9sZGVyIHtcbiAgICAgICYubmctaGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgIH1cbiAgICAgIC5maWd1cmUge1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWV0YSwgLnRpdGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLmNvbnRlbnQge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4iLCIvKiAzIENvbCBNZWRpYSBMaXN0aW5nICovXG5cbi8qIFZhcnMgKi9cbiAgJGFzc2V0LWJnLWhvdmVyOiBpbmhlcml0ICFkZWZhdWx0O1xuICAkYXNzZXQtdGl0bGUtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG4gICRhc3NldC1kZWZhdWx0LWltYWdlOiBub25lICFkZWZhdWx0O1xuICAkYmFja0J0blN0eWxlOiB0cnVlICFkZWZhdWx0OyAvLyB0cnVlLCBmYWxzZSwgYnV0dG9uXG5cbiAgJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiAgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXMgIWRlZmF1bHQ7XG5cbi8qIExpc3RpbmcgKi9cbiAgLnNlY3Rpb24tbWVkaWEtbGlzdCB7XG4gICAgJi1sb2FkZWQge1xuICAgICAgJi5uZy1oaWRlLXJlbW92ZSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgfVxuICAgICAgJi5uZy1oaWRlLXJlbW92ZS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIH1cbiAgICAuZ2FsbGVyeS1saXN0LCAuYXNzZXQtbGlzdCB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIH1cbiAgICAuZ2FsbGVyeS1pdGVtLCAuYXNzZXQtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAwIDAgMThweCAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDc4JTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICYubm8taW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGFzc2V0LWRlZmF1bHQtaW1hZ2UpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgdG9wIGNlbnRlci9jb3ZlcjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogJGFzc2V0LWJnLWhvdmVyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXM7XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgJi5uby10aXRsZTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdWaWV3JztcbiAgICAgICAgICBjb2xvcjogJGFzc2V0LXRpdGxlLWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkYXNzZXQtdGl0bGUtY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBMb2FkZWQgKi9cbiAgICAmLWxvYWRlZCB7XG4gICAgICAuaXRlbSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBQbGFjZWhvbGRlciAqL1xuICAgICYtcGxhY2Vob2xkZXIge1xuICAgICAgJi5uZy1oaWRlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgIH1cbiAgICAgIC5pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1tZWRpYS1mb290ZXIge1xuICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSB0cnVlKSB7XG4gICAgICBhIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKCRiYWNrQnRuU3R5bGUgPT0gJ2J1dHRvbicpIHtcbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBTaG93IGhvdmVyIGlmIHRvdWNoIGRldmljZSAqL1xuICAudG91Y2hldmVudHMge1xuICAgIC5zZWN0aW9uLW1lZGlhLWxpc3Qge1xuICAgICAgLml0ZW0ge1xuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogMzMwcHgpIHtcblxuICAgIC5zZWN0aW9uLW1lZGlhLWxpc3Qge1xuICAgICAgLmdhbGxlcnktaXRlbSwgLmFzc2V0LWl0ZW0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDE4cHggMThweCAwO1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA5cHgpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzglO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSB7XG5cbiAgICAuc2VjdGlvbi1tZWRpYS1saXN0IHtcbiAgICAgIC5nYWxsZXJ5LWl0ZW0sIC5hc3NldC1pdGVtIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMTJweCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNSU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA4MTVweCkge1xuXG4gICAgLnNlY3Rpb24tbWVkaWEtbGlzdCB7XG4gICAgICAuaGVhZGVyIHtcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH0iLCIvKiAxIENvbCBNZWRpYSBEZXRhaWwgKi9cblxuLyogVmFycyAqL1xuICAkcGxhY2Vob2xkZXItY29sb3I6IHJnYmEoIzAwMCwgLjEpICFkZWZhdWx0O1xuICAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcyAhZGVmYXVsdDtcbiAgJGJhY2tCdG5TdHlsZTogdHJ1ZSAhZGVmYXVsdDsgLy8gdHJ1ZSwgZmFsc2UsIGJ1dHRvblxuXG4vKiBEZXRhaWwgKi9cbiAgLnNlY3Rpb24tbWVkaWEtYXNzZXQge1xuICAgICYtbG9hZGVkIHtcbiAgICAgICYubmctZW50ZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG5cbiAgICAgICAgJi5uZy1lbnRlci1hY3RpdmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSB0cnVlKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGlmICgkYmFja0J0blN0eWxlID09ICdidXR0b24nKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWd1cmUsIC5pbWJlZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuaW1iZWQge1xuICAgICAgLmlubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cbiAgICAgIH1cbiAgICAgIGlmcmFtZSwgdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cbiAgICAuZmlndXJlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyIHtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAubWV0YSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuZm9vdGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5tZXRhLWl0ZW0tc29jaWFscyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8qIFBsYWNlaG9sZGVyICovXG4gICAgJi1wbGFjZWhvbGRlciB7XG4gICAgICAmLm5nLWhpZGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICB9XG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC5pbWJlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC50aXRsZSwgLmNvbnRlbnQgLmlubmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qIFJlbGVhc2VzIDN4IGdyaWQgKi9cblxuLyogVmFycyAqL1xuJHJlbGVhc2UtYmctaG92ZXI6IGluaGVyaXQgIWRlZmF1bHQ7XG4kcmVsZWFzZS10aXRsZS1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb246IDUwMG1zICFkZWZhdWx0O1xuXG4vKiBMaXN0aW5nICovXG4uc2VjdGlvbi1yZWxlYXNlcy1saXN0IHtcbiAgJi1sb2FkZWQge1xuICAgICYubmctaGlkZS1yZW1vdmUge1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgIH1cbiAgICAmLm5nLWhpZGUtcmVtb3ZlLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuICAucmVsZWFzZXMtbGlzdCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAucmVsZWFzZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDAgMCAxOHB4IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYucmVsZWFzZS1jdXJzb3Ige1xuICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYuc2hvdy1hbGJ1bS10cmFja3Mge1xuICAgICAgd2lkdGg6Y2FsYygxMDAlICAtIDE4cHgpO1xuICAgICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDEuMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhlYWRlciwgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMThweCk7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICYudmlldy10cmFja3Mtb3BlbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnZpZXctdHJhY2tzLWNsb3NlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjdHJhY2stbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBjYWxjKDMzLjMzJSAtIDE4cHgpO1xuICAgICAgICB3aWR0aDogNjYuNjclO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE4cHg7XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50YWJsZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDY2JSAtIDZweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzJSArIDZweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkcmVsZWFzZS1iZy1ob3ZlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkcmVsZWFzZS10aXRsZS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6MTBweDtcbiAgICAgICAgY29sb3I6ICRyZWxlYXNlLXRpdGxlLWNvbG9yO1xuXG4gICAgICAgICYudmlldy10cmFja3MtY2xvc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1ldGEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvKiBMb2FkZWQgKi9cbiAgJi1sb2FkZWQge1xuICAgIC5yZWxlYXNlIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogUGxhY2Vob2xkZXIgKi9cbiAgJi1wbGFjZWhvbGRlciB7XG4gICAgJi5uZy1oaWRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgIC5yZWxlYXNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLyogU2hvdyBob3ZlciBpZiB0b3VjaCBkZXZpY2UgKi9cbi50b3VjaGV2ZW50cyB7XG4gIC5zZWN0aW9uLXJlbGVhc2VzLWxpc3Qge1xuICAgIC5yZWxlYXNlIHtcbiAgICAgIC5oZWFkZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDMzMHB4KSB7XG5cbiAgLnNlY3Rpb24tcmVsZWFzZXMtbGlzdCB7XG4gICAgLmFsYnVtLXRyYWNrcyB7XG4gICAgICAucmVsZWFzZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAgLSAxOHB4KTtcblxuICAgICAgICAmLnNob3ctYWxidW0tdHJhY2tzIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICAtIDBweCk7XG5cbiAgICAgICAgICAuaGVhZGVyLCAuaW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMThweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoM24rMykge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAjdHJhY2stbGlzdCB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnJlbGVhc2Uge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDAgMThweCAxOHB4IDA7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA5cHgpO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQ5JTtcblxuICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogOTkycHgpIHtcblxuICAuc2VjdGlvbi1yZWxlYXNlcy1saXN0IHtcbiAgICAuYWxidW0tdHJhY2tzIHtcbiAgICAgIC5yZWxlYXNlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMlICAtIDE4cHgpO1xuXG4gICAgICAgICYuc2hvdy1hbGJ1bS10cmFja3Mge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgIC0gMThweCk7XG5cbiAgICAgICAgICAuaGVhZGVyLCAuaW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMThweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoM24rMykge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgfVxuICAgICAgICAjdHJhY2stbGlzdCB7XG4gICAgICAgICAgbGVmdDogY2FsYygzMy4zMyUgLSAxOHB4KTtcbiAgICAgICAgICB3aWR0aDogNjYuNjclO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yZWxlYXNlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEycHgpO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMyJTtcblxuICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiLyogMiBDb2wgUmVsZWFzZSBEZXRhaWwgKi9cblxuLyogVmFycyAqL1xuJHJlbGVhc2UtYnV5LWljb25zOiBmYWxzZSAhZGVmYXVsdDtcbiRyZWxlYXNlLWJvcmRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcbiRiYWNrQnRuU3R5bGU6IHRydWUgIWRlZmF1bHQ7IC8vIHRydWUsIGZhbHNlLCBidXR0b25cblxuJHBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb246IDUwMG1zICFkZWZhdWx0O1xuXG4vKiBEZXRhaWwgKi9cbiAgLnNlY3Rpb24tcmVsZWFzZXMtZGV0YWlsIHtcbiAgICAmLWxvYWRlZCB7XG4gICAgICAmLm5nLWVudGVyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuXG4gICAgICAgICYubmctZW50ZXItYWN0aXZlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yZWxlYXNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgfVxuICAgIC5maWd1cmUge1xuICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG5cbiAgICAgICYtYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBib3JkZXItY29sb3I6ICRyZWxlYXNlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC50cmFjay1wcmV2aWV3IHtcbiAgICAgICAgd2lkdGg6IDQ1cHg7XG5cbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5uby1wcmV2aWV3IHtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxZW07XG4gICAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgIH1cbiAgICAgICAgLmdseXBoaWNvbiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudHJhY2stZHVyYXRpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICAgIC50cmFjay1seXJpY3Mge1xuICAgICAgICB3aWR0aDogODBweDtcblxuICAgICAgICAmLm5vLWx5cmljcyB7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICAuc2hvdy1seXJpY3MtYnRuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuICAgICAgICAubW9kYWwsIC5tb2RhbC10aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICAubWV0YSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAudGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICB9XG4gICAgZGwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBkdCwgZGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gICAgLm1ldGEtaXRlbS1yZWxlYXNlLWRhdGUsIC5tZXRhLWl0ZW0tcHVibGlzaGVyIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICAgIC5tZXRhLWl0ZW0tcmVsZWFzZS10eXBlLCAubWV0YS1rZXktbGlua3MsIC5tZXRhLWl0ZW0tc29jaWFscywgLm1ldGEtaXRlbS1kZXNjcmlwdGlvbiwgLm1ldGEtaXRlbS1saW5lci1ub3RlcyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubWV0YS1pdGVtLWJhY2sge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLm1ldGEtaXRlbS1yZWxlYXNlLWRlc2NyaXB0aW9uLCAubWV0YS1pdGVtLXJlbGVhc2UtbGluZXItbm90ZXMge1xuICAgICAgLnJlbGVhc2UtZGV0YWlscy1idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICYtbG9hZGVkIHtcbiAgICAgIC5tZXRhLWl0ZW0tYmFjayB7XG4gICAgICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSB0cnVlKSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSAnYnV0dG9uJykge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaWYoJHJlbGVhc2UtYnV5LWljb25zKXtcbiAgICAgICAgLm1ldGEtdmFsdWUtbGluayB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuMWVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTNcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICd3dS1zb2NpYWwtaWNvbnMnICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1hbWF6b24gYTpiZWZvcmUsICYtYW1hem9uLW11c2ljIGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG4gICAgICAgICAgfVxuICAgICAgICAgICYtYXBwbGUtbXVzaWMgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDJcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1nb29nbGUtcGxheSBhOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwY1wiO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLXNwb3RpZnkgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU2MDJcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi12ZXZvIGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG4gICAgICAgICAgfVxuICAgICAgICAgICYtcGFuZG9yYSBhOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxOFwiO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLXlvdXR1YmUgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU2MDVcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1zb3VuZGNsb3VkIGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlMDAyXCI7XG4gICAgICAgICAgfVxuICAgICAgICAgICYtdmltZW8gYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDBcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1pdHVuZXMgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTJcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1kZWV6ZXIgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTRcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi10YXJnZXQgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTVcIjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi13YWxtYXJ0IGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLm1ldGEtaXRlbS1saW5rcyB7XG4gICAgICAgICAgZGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFBsYWNlaG9sZGVyICovXG4gICAgJi1wbGFjZWhvbGRlciB7XG4gICAgICAmLm5nLWhpZGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICB9XG4gICAgICAudGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgICAuY29udGVudCB0ZCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC5maWd1cmUgLmltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgICAubWV0YSB7XG4gICAgICAgIGRsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mb290ZXIge1xuICAgICAgICAubWV0YS1pdGVtLWxpbmtzIHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgICYsICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA3MDBweCkge1xuXG4gICAgLnNlY3Rpb24tcmVsZWFzZXMtZGV0YWlsIHtcbiAgICAgIC5maWd1cmUge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB9XG4gICAgICAuZmlndXJlLCAuZm9vdGVyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLmhlYWRlciwgLmNvbnRlbnQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDIxcHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7QUFFSCx5QkFBeUI7QUNMekI7OztFQUdFO0FBRUYsVUFBVTtBQUdWLFdBQVc7QUFJWCxXQUFXO0FBWVgsU0FBUztBQVlULG1CQUFtQjtBQVluQixhQUFhO0FBQ1gsQUFDRSxjQURZLENBQ1osbUJBQW1CLENBQUM7RUFDbEIsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFSCxBQUFBLElBQUksQUFBQSxXQUFXLENBQUM7RUFDZCxZQUFZLEVBQUUsQ0FBQztFQUNmLFdBQVcsRUFBRSxDQUFDLEdBQ2Y7O0FBQ0QsQUFBQSxJQUFJLEFBQUEsV0FBVyxJQUFHLEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYjtBQUNuQixJQUFJLEFBQUEsV0FBVyxJQUFHLEFBQUEsS0FBQyxFQUFPLE9BQU8sQUFBZCxFQUFnQjtFQUNqQyxhQUFhLEVBQUUsQ0FBQztFQUNoQixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QUFDRCxBQUFBLGNBQWMsQ0FBQztFQUNiLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQVFELEFBTkUsU0FNTyxBQU5OLE9BQU8sRUFNVixTQUFTLEFBTkksTUFBTSxD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 */
