@charset "UTF-8";
/* ############################################################################
    VARIABLES
############################################################################ */
@media all and (max-width: 767px) {
  .container {
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    width: 90%; } }

@media all and (min-width: 768px) {
  .container {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px; } }

.d-column-full {
  float: left;
  clear: none;
  text-align: inherit;
  width: 100%;
  margin-left: 0%;
  margin-right: 3%; }
  .d-column-full::after {
    content: '';
    display: table;
    clear: both; }
  .d-column-full:last-child {
    margin-right: 0%; }

.d-column-half {
  float: left;
  clear: none;
  text-align: inherit;
  width: 48.5%;
  margin-left: 0%;
  margin-right: 3%; }
  .d-column-half::after {
    content: '';
    display: table;
    clear: both; }
  .d-column-half:last-child {
    margin-right: 0%; }

.d-column-quarter {
  float: left;
  clear: none;
  text-align: inherit;
  width: 22.75%;
  margin-left: 0%;
  margin-right: 3%; }
  .d-column-quarter::after {
    content: '';
    display: table;
    clear: both; }
  .d-column-quarter:last-child {
    margin-right: 0%; }

.d-column-three-quarters {
  float: left;
  clear: none;
  text-align: inherit;
  width: 74.25%;
  margin-left: 0%;
  margin-right: 3%; }
  .d-column-three-quarters::after {
    content: '';
    display: table;
    clear: both; }
  .d-column-three-quarters:last-child {
    margin-right: 0%; }

/* ############################################################################
    BUTTONS
############################################################################ */
.button-def {
  display: inline-block;
  padding: 16px 35px;
  background: #000;
  color: #fff;
  border: none;
  font-family: "Interstate", helvetica, arial, sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  -webkit-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  font-size: 14px;
  letter-spacing: 0.03em; }
  .button-def:hover {
    background: #141414; }

.btn-primary {
  display: inline-block;
  background-color: #010101;
  border: 2px solid #010101;
  color: #fff;
  font-family: "Interstate", helvetica, arial, sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.112em;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  padding: 19px 30px;
  border-radius: 0;
  text-transform: uppercase;
  white-space: inherit;
  position: relative; }
  .btn-primary:hover, .btn-primary:focus {
    background: #d90f3b;
    border-color: #d90f3b; }
  .btn-primary.d-block {
    display: block; }
  .btn-primary.disabled {
    opacity: 0.5; }
    .btn-primary.disabled:hover, .btn-primary.disabled:focus {
      background: #010101;
      border-color: #010101; }

/* breadcrumbs */
/* ------------------------------------- */
.breadcrumb {
  padding: 10px 20px;
  text-align: center;
  margin: 0 auto;
  width: auto; }
  .breadcrumb-container {
    background-color: #f3f3f3; }
  .breadcrumb a {
    color: #737373;
    text-transform: uppercase; }
    .breadcrumb a:after {
      font-family: "Interstate", helvetica, arial, sans-serif;
      background: transparent;
      width: auto;
      height: auto;
      vertical-align: top; }
  .search-result-options .breadcrumb {
    width: auto; }

.breadcrumb div {
  display: inline; }

.product-detail .breadcrumb {
  margin: 0 0 0 15px; }

.breadcrumb li {
  margin-left: 5px; }

.breadcrumb li span.last,
.breadcrumb a.breadcrumb-last {
  color: #000;
  font-size: 0.875rem; }

.breadcrumb a,
.breadcrumb span {
  color: #737373;
  text-transform: uppercase; }

.breadcrumb span.breadcrumb-last {
  font-weight: 600;
  color: #010101; }

.breadcrumb span.breadcrumb-refinement-name {
  color: #010101; }

.breadcrumb-refined-by {
  display: none; }

.breadcrumb a:after {
  background-image: url("../images/icon-sprite-2x-lovable.png");
  background-position: -450px -368px;
  background-repeat: no-repeat;
  width: 7px;
  height: 10px;
  background-size: 501px 461px;
  display: inline-block;
  position: relative;
  vertical-align: baseline;
  margin: 0 5px;
  color: inherit;
  font-size: 14px; }

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

.breadcrumb h1 {
  font-size: 1em;
  font-weight: 500;
  margin: 20px 0 15px;
  display: inline-block; }

.breadcrumb h1 .paging-current-page {
  left: -999em;
  position: absolute; }

/*
.breadcrumb-refinement-name {
    background:none repeat scroll 0 0 transparent !important;
    font-family: $f_body;
    font-style:italic;
}
*/
.breadcrumb-refinement-value {
  display: none;
  background: none repeat scroll 0 0 transparent !important;
  font-family: "Interstate", helvetica, arial, sans-serif;
  font-style: italic; }

a.breadcrumb-relax {
  background: none repeat scroll 0 0 transparent !important;
  font-style: italic;
  font-family: "Interstate", helvetica, arial, sans-serif;
  padding: 0 5px 0 0; }

.breadcrumb-mobile {
  display: none; }


.crossSellTitle {
  background: none;
  font-size: 1.875rem;
  padding-bottom: 0;
  text-align: center;
  color: #000;
  font-family: "Interstate", helvetica, arial, sans-serif;
  font-weight: 500;
  margin-bottom: 40px;
  letter-spacing: 0.05em;
  text-transform: uppercase; }
  
  .crossSellTitle:before {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -114px -379px;
    background-repeat: no-repeat;
    width: 28px;
    height: 25px;
    display: block;
    margin: 0 auto 15px; }
    @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
      
      .crossSellTitle:before {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -114px -379px;
        background-repeat: no-repeat;
        width: 28px;
        height: 25px;
        background-size: 476px 427px; } }
  @media all and (max-width: 767px) {
    
    .crossSellTitle {
      font-size: 1rem; } }

.customSelect {
  border: none;
  padding: 5px 0;
  text-align: left;
  max-width: 100%;
  width: auto !important;
  text-transform: uppercase; }

.customSelectArrow {
  content: " ";
  display: inline-block;
  position: relative;
  vertical-align: middle;
  background-image: url(../images/icon-sprite-lovable.png);
  background-position: -454px -362px;
  background-repeat: no-repeat;
  width: 18px;
  height: 9px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
    .customSelectArrow {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -454px -362px;
      background-repeat: no-repeat;
      width: 18px;
      height: 9px;
      background-size: 476px 427px; } }

.quantity-selection__button {
  background: none;
  border: 1px solid black;
  display: inline-block;
  font-size: 16px;
  height: 37px;
  width: 37px; }

/*
* Dotted Border - A SASS mixin to help you increase spacing between the dots of border-style:dotted.
* By @florbraz
* Documentation and examples - github.com/florbraz/Dotted-Border-w-custom-spacing-SCSS-Mixin
* V1.0
*/
/*
* UtilityBelt - a starter kit for any SASS project
* By @dmtintner & @hackingui
* Documentation and examples - hackingui.com/front-end/10-best-scss-utilities/
* V1.1.0
*/
/*
## Triangle
* @include triangle within a pseudo element and add positioning properties (ie. top, left)
* $direction: up, down, left, right
*/
/*
* Currency
*/
/*
* Clearfix
*/
/*
* Ghost Vertical Align
*/
/*
* Truncate Text
*/
/*
* Animation
*/
/*
* Resize Sprite - for resizing only a single image from a sprite
*
* params: $map = $<name>-sprites (ex. $icon-sprites)
*         $sprite = file name w/o file type ending (ex. globe)
          $percent = number (ex. 50)
*
* (if compass CSS3 mixins not included, uncomment the background-size row and comment the @include version)
*/
/*
* Resizes all images in a given sprite
* mixin courtesy of Wilker Lúcio https://gist.github.com/wilkerlucio/6442309
* params: $only = if you want to list specific files instead of regenerating every image (ex. globe, checkmark)
*/
/*
* HUI Tooltips
*/
/*
## Text-align justify
For perfectly aligned grids that don't rely on floating elements and difficult calculations

- http://www.barrelny.com/blog/text-align-justify-and-rwd/ */
.mobile-pagination .swiper-pagination-switch {
  border: none;
  background: rgba(0, 0, 0, 0.2); }
  .mobile-pagination .swiper-pagination-switch.swiper-active-switch {
    background: rgba(0, 0, 0, 0.6); }

.tooltip {
  position: relative; }

.tooltip:hover .tooltip-content {
  display: block;
  opacity: 1;
  overflow: visible;
  visibility: visible; }

.js .tooltip-content {
  display: none !important; }

.tooltip .tooltip-content,
#tooltip {
  background-color: #e4e3e3;
  padding: 10px;
  position: absolute;
  z-index: 3000;
  word-wrap: break-word;
  max-width: 240px; }

#tooltip .arrow {
  height: 100%;
  width: 15px;
  background: red;
  position: absolute;
  top: 0;
  left: -15px; }

#tooltip .recommendation-tooltip-header {
  background: none repeat scroll 0 0 #CCCCCC;
  font-size: 1.2em;
  font-weight: bold;
  padding: 10px; }
  #tooltip .recommendation-tooltip-header .product-price .price-standard {
    color: #999999;
    text-decoration: line-through; }

#tooltip .recommendation-tooltip-description {
  padding: 10px; }

#tooltip .recommendation-tooltip-attributes {
  padding: 10px; }

.select-css {
  width: 100%;
  float: right;
  height: 50px;
  line-height: 50px;
  border-color: #ededed;
  background: #ededed;
  color: #000;
  font-size: 15px; }
  @media screen and (max-width: 959px) {
    .select-css {
      border-color: #f8f8f8;
      background: #f8f8f8;
      height: 70px;
      font-size: 20px;
      padding: 10px 20px; }
      .select-css.custom-arrow {
        background: url(../images/ico/bullet-down-crimson.png) #f8f8f8 calc(100% - 5px) center no-repeat;
        background-size: 13px;
        background-position: calc(100% - 10px);
        padding-right: 20px;
        -webkit-appearance: none;
        -moz-appearance: none;
        -ms-appearance: none;
        -o-appearance: none;
        appearance: none; } }

.select-css.loyalty-registrati {
  width: 70px;
  float: none;
  display: inline-block; }

/**
* BazaarVoice Specific Customizations
*/
/* Bazaarvoice inline ratings centered */
[id*=BVRRInlineRating-] {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.pdp-main .desktop-only-wrapper #BVRRSummaryContainer > .bv-cleanslate.bv-cv2-cleanslate > .bv-shared[class*="bv-core-container-"] {
  text-align: center !important; }

.bv-cv2-cleanslate [class*=bv-core-container-] .bv-inline-rating-container .bv-stars-container dd, .bv-cv2-cleanslate [class*=bv-core-container-] .bv-inline-rating-container .bv-stars-container dt {
  display: inline !important; }

.pdp-main #BVRRSummaryContainer > .bv-cleanslate.bv-cv2-cleanslate > .bv-shared[class*="bv-core-container-"] > .bv-compat > .bv-prs-container > .bv-primarySummary-rating-container > .bv-summary-bar > .bv-action-bar,
.pdp-main #BVRRSummaryContainer > .bv-cleanslate.bv-cv2-cleanslate > .bv-shared[class*="bv-core-container-"] > .bv-compat > .bv-prs-container > .bv-primarySummary-rating-container > .bv-summary-bar > .bv-details-bar {
  display: none !important; }

@media screen and (max-width: 959px) {
  .level-2 .html-slot-container {
    display: none; }
  .level2__icon {
    display: none; }
  .itemSublevel__image {
    display: none; }
  .menu-offer-account {
    background: #FF4E4E; }
  .menu-open #header .menu-overlay {
    display: none; }
  .menu-open #navigation {
    width: 100%;
    top: 0; }
    .menu-open #navigation.widget-promo {
      margin-top: 111px; }
    .menu-open #navigation.promo-closed {
      margin-top: 132px !important; }
  #navigation ul.level-1 {
    padding: 0; }
  .menu-category {
    display: block !important; }
  .menu-open {
    overflow: hidden; }
    .menu-open #navigation {
      height: calc(100vh - 171px);
      overflow-y: auto; }
    .menu-open .header-search {
      -webkit-box-shadow: none !important;
              box-shadow: none !important; }
    .menu-open .navigation-bottom {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      background: #fff;
      padding: 0;
      margin: 0;
      text-align: center; }
      .menu-open .navigation-bottom li {
        width: 25%;
        padding: 15px 0;
        border-top: 1px solid #ccc;
        border-left: 1px solid #ccc; }
        .menu-open .navigation-bottom li:first-child {
          border-left: none; }
      .menu-open .navigation-bottom a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; }
        .menu-open .navigation-bottom a img {
          max-height: 40px; }
      .menu-open .navigation-bottom .content-asset p {
        margin: 5px 0 0; }
  .menu-account li.menu-my-account.user-logged > a:after {
    background: url(../images/user_logged_mobile.png) no-repeat;
    background-size: 100%;
    width: 34px;
    height: 44px;
    top: -6px; }
  .menu-account li.menu-my-account.user-logged > a:hover:after {
    background: url(../images/user_logged_mobile.png) no-repeat;
    background-size: 100%; }
  .menu-account .menu-account_list > li {
    display: inline-block;
    width: auto;
    margin-left: 15px;
    max-width: none; }
  .menu-account .menu-account_list .menu-newsletter,
  .menu-account .menu-account_list .menu-wishlist {
    display: none; }
  .menu-account .menu-my-account a:after {
    background: url(../images/user_mob.svg) no-repeat;
    background-size: 75%;
    width: 34px;
    height: 44px;
    margin-top: 3px; }
  .menu-account .menu-my-account a {
    padding: 0;
    display: table-cell; }
  .menu-account .menu-my-account > a > p {
    display: none; }
  .menu-account .menu-my-account:hover .submenu-my-account {
    display: none; }
  .menu-account li a span,
  .menu-account li a .mobile-my-account-title,
  .menu-account li a .mini-cart-label {
    visibility: hidden; }
  .menu-account {
    width: auto;
    float: right;
    padding-bottom: 0; }
    .menu-account ul {
      display: block; }
    .menu-account li {
      display: inline-block;
      padding-top: 10px;
      height: 50px;
      -webkit-box-flex: 0;
          -ms-flex: none;
              flex: none;
      width: calc(100% / 3); }
      .menu-account li a {
        width: 100%; }
        .menu-account li a:after {
          content: none; }
        .menu-account li a span.isred {
          color: #d90f3b;
          display: inline; }
      .menu-account li.menu-wishlist a {
        position: relative; }
        .menu-account li.menu-wishlist a:after {
          content: none; }
        .menu-account li.menu-wishlist a:before {
          content: " ";
          display: inline-block;
          position: relative;
          vertical-align: middle;
          background-image: url(../images/icon-sprite-lovable.png);
          background-position: -187px -379px;
          background-repeat: no-repeat;
          width: 26px;
          height: 24px; } }
        @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
          .menu-account li.menu-wishlist a:before {
            background-image: url(../images/icon-sprite-2x-lovable.png);
            background-position: -187px -379px;
            background-repeat: no-repeat;
            width: 26px;
            height: 24px;
            background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
        .menu-account li.menu-wishlist a .menu-wishlist-quantity {
          background: #d90f3b;
          border-radius: 100%;
          bottom: 20px;
          color: #fff;
          font-size: 12px;
          height: 20px;
          left: 50%;
          line-height: 20px;
          margin: 0;
          padding: 0;
          position: absolute;
          right: -8px;
          top: auto;
          width: 20px; }
      .menu-account li.menu-storelocator a:before {
        content: " ";
        display: inline-block;
        position: relative;
        vertical-align: middle;
        background-image: url(../images/icon-sprite-lovable.png);
        background-position: -354px -326px;
        background-repeat: no-repeat;
        width: 18px;
        height: 27px; } }
      @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
        .menu-account li.menu-storelocator a:before {
          background-image: url(../images/icon-sprite-2x-lovable.png);
          background-position: -354px -326px;
          background-repeat: no-repeat;
          width: 18px;
          height: 27px;
          background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
      .menu-account li.menu-user-account a:before {
        content: " ";
        display: inline-block;
        position: relative;
        vertical-align: middle;
        background-image: url(../images/icon-sprite-lovable.png);
        background-position: -78px -379px;
        background-repeat: no-repeat;
        width: 26px;
        height: 28px; } }
      @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
        .menu-account li.menu-user-account a:before {
          background-image: url(../images/icon-sprite-2x-lovable.png);
          background-position: -78px -379px;
          background-repeat: no-repeat;
          width: 26px;
          height: 28px;
          background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .menu-account .menu-my-account .mobile-my-account-title {
      display: none; }
    .menu-account .menu-my-account > a:before {
      display: none; }
    .menu-account .menu-my-account:hover > a {
      z-index: 101; }
      .menu-account .menu-my-account:hover > a:before {
        display: none; }
    .menu-account .menu-my-account > a.clicked:after {
      background: url(../images/ico/user-acc-hover.svg) no-repeat;
      background-size: 75%; }
    .menu-account .menu-my-account.user-logged > a.clicked:after {
      background: url(../images/user_logged_hover_mobile.png) no-repeat !important;
      background-size: 100% !important; }
    .menu-account .menu-my-account .submenu-my-account {
      color: #000;
      border-color: #000;
      background-color: #fff;
      width: 230px;
      margin-left: -75px;
      padding: 60px 10px 15px;
      z-index: 100;
      margin-top: 6px; }
      .menu-account .menu-my-account .submenu-my-account a,
      .menu-account .menu-my-account .submenu-my-account:hover a {
        color: #000; }
      .menu-account .menu-my-account .submenu-my-account > li:first-child {
        border-color: #000; }
      .menu-account .menu-my-account .submenu-my-account li:last-child p {
        font-size: 23px;
        text-transform: uppercase;
        position: absolute;
        top: 0;
        left: 22px; }
  .brand-search-cart {
    display: inline-block;
    width: 100%;
    position: relative;
    z-index: 161;
    padding-left: 20px;
    padding-right: 20px;
    height: 55px; } }
  @media screen and (max-width: 959px) and (min-width: 960px) {
    .brand-search-cart .logo-wrapper {
      width: 170px;
      top: 0;
      left: 60px;
      -webkit-transform: none;
              transform: none;
      padding-top: 0; } }

@media screen and (max-width: 959px) {
    .brand-search-cart .header-search {
      padding: 14px 0; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .brand-search-cart .header-search {
        margin-left: 40px;
        margin-top: 5px; } }

@media screen and (max-width: 959px) {
  #mini-cart {
    position: relative;
    top: 0; }
    #mini-cart.cart-not-empty .mini-cart-total .mini-cart-link:after {
      background-image: url(../images/ico/cart_filled.svg); }
    #mini-cart .mini-cart-total .mini-cart-link {
      padding: 0; }
      #mini-cart .mini-cart-total .mini-cart-link:after {
        content: "";
        background-image: url(../images/ico/cart.svg);
        background-repeat: no-repeat;
        background-position: top left;
        background-size: 75%;
        display: block;
        width: 34px;
        height: 44px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 0;
        margin-top: 5px;
        top: 0; } }
      @media screen and (max-width: 959px) and (max-width: 959px) {
        #mini-cart .mini-cart-total .mini-cart-link:after {
          margin-top: 1px; } }

@media screen and (max-width: 959px) {
    #mini-cart .mini-cart-total:hover span {
      visibility: hidden; }
      #mini-cart .mini-cart-total:hover span.mini-cart-qty {
        visibility: visible; }
    #mini-cart .mini-cart-total:hover .c-text-crimson {
      visibility: hidden; }
  .cart-not-empty:hover:before {
    content: none; }
  .mini-cart-link {
    padding-top: 5px;
    overflow: visible;
    font-family: "Interstate", helvetica, arial, sans-serif; }
    .mini-cart-link:before {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -421px -283px;
      background-repeat: no-repeat;
      width: 22px;
      height: 27px; } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .mini-cart-link:before {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -421px -283px;
        background-repeat: no-repeat;
        width: 22px;
        height: 27px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .mini-cart-link .cart-qty-m,
    .mini-cart-link .mini-cart-empty {
      top: initial;
      font-size: 12px;
      width: 15px;
      height: 15px;
      padding: 2px;
      bottom: 0px;
      right: -5px;
      color: #fff;
      position: absolute; }
  #header {
    display: inline-block;
    width: 100%; }
    #header header {
      text-align: center;
      width: 100%;
      margin: 0;
      border-bottom: 1px solid #e5e5e5; }
      #header header .main-header, #header header .main-header__search {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-top: 15px;
        margin-bottom: 15px; }
        #header header .main-header .logo-wrapper, #header header .main-header__search .logo-wrapper {
          width: 50%;
          max-width: 150px;
          position: absolute;
          left: 50%;
          top: initial;
          bottom: 15px;
          -webkit-transform: translateX(-50%);
                  transform: translateX(-50%); }
          #header header .main-header .logo-wrapper .primary-logo, #header header .main-header__search .logo-wrapper .primary-logo {
            margin: 0; }
        #header header .main-header__search {
          margin: 0; }
        #header header .main-header #mini-cart, #header header .main-header__search #mini-cart {
          margin-left: 25px;
          right: 25%; } }
  @media screen and (max-width: 959px) and (max-width: 959px) {
    #header .primary-logo {
      margin-top: 0; } }

@media screen and (max-width: 959px) {
  .header-search {
    position: absolute;
    opacity: 0;
    right: 130px;
    max-width: unset !important;
    width: 100%;
    margin-left: 0 !important;
    left: 0 !important;
    top: 0;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    pointer-events: none; }
    .header-search #suggestions {
      border: none;
      -webkit-box-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.2);
      margin-left: 0;
      margin-top: 0;
      padding: 0 20px;
      width: 100% !important;
      font-size: 18px;
      -webkit-transform: none;
              transform: none; }
      .js .header-search #suggestions div span.hits {
        font-size: 15px;
        padding: 6px; }
      .js .header-search #suggestions div div.suggestionterm {
        width: 250px; }
    .header-search form [type="text"] {
      border-bottom: 1px solid #737373;
      display: block;
      width: 85% !important;
      margin-left: auto !important;
      margin-right: auto !important;
      float: none;
      margin-top: 15px !important;
      height: 30px;
      opacity: 1; }
    .header-search form [type="submit"] {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -318px -326px;
      background-repeat: no-repeat;
      width: 26px;
      height: 27px;
      z-index: 201;
      position: absolute;
      left: auto;
      margin: 0;
      bottom: 4px;
      top: initial;
      -webkit-transform: translateY(-3px);
              transform: translateY(-3px); } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .header-search form [type="submit"] {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -318px -326px;
        background-repeat: no-repeat;
        width: 26px;
        height: 27px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .header-search form fieldset {
      width: 100%;
      vertical-align: middle; }
  .show.header-search {
    opacity: 1;
    margin: 0;
    position: absolute;
    background: #fff;
    width: 100%;
    max-width: none;
    z-index: 100;
    padding: 0;
    bottom: 0;
    right: 0;
    top: 59px;
    height: 73px;
    pointer-events: auto; }
    .show.header-search form {
      margin: 10px 20px;
      background-color: #E7E8E9; }
      .show.header-search form fieldset input[type="text"] {
        background-color: #E7E8E9;
        margin: 11px 11px !important;
        font-family: "Interstate", helvetica, arial, sans-serif;
        font-size: 20px;
        font-weight: 300; }
      .show.header-search form fieldset input[type="submit"] {
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        display: block; }
  #clear-search-filter {
    position: absolute;
    right: auto;
    left: 90px;
    top: 23px;
    z-index: 201;
    display: block;
    opacity: 1;
    font-size: 0;
    bottom: 4px; }
    #clear-search-filter:after {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -454px -317px;
      background-repeat: no-repeat;
      width: 16px;
      height: 15px; } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      #clear-search-filter:after {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -454px -317px;
        background-repeat: no-repeat;
        width: 16px;
        height: 15px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    #clear-search-filter.no-search {
      top: 17px; }
      #clear-search-filter.no-search:after {
        content: " ";
        display: inline-block;
        position: relative;
        vertical-align: middle;
        background-image: url(../images/icon-sprite-lovable.png);
        background-position: -318px -326px;
        background-repeat: no-repeat;
        width: 26px;
        height: 27px; } }
      @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
        #clear-search-filter.no-search:after {
          background-image: url(../images/icon-sprite-2x-lovable.png);
          background-position: -318px -326px;
          background-repeat: no-repeat;
          width: 26px;
          height: 27px;
          background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .widget-promo.under-nav {
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    z-index: 21; }
    .widget-promo.under-nav.top-space {
      margin-top: 72px; }
  .menu-open #suggestions {
    z-index: 200; }
  .menu-open .widget-promo {
    z-index: 151 !important; }
  .menu-open .navigation-header:after {
    background: url(../images/nav_cross.svg) no-repeat;
    background-size: 27px 27px;
    width: 27px;
    height: 27px; }
  .navigation-header {
    float: left;
    width: auto;
    border: none;
    top: 17px;
    z-index: 1000; }
  .navigation-header:after {
    background: url(../images/burger_menu.svg) no-repeat;
    background-size: 40px 27px;
    width: 40px;
    height: 27px; }
  .navigation-customer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0;
    padding: 0;
    width: 100%; }
    .navigation-customer li {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      padding-top: 10px;
      padding-bottom: 10px;
      border: 1px solid #737373; }
      .navigation-customer li:first-child {
        border-left: none; }
      .navigation-customer li:last-child {
        border-right: none; }
      .navigation-customer li a {
        display: block;
        text-align: center; }
  #navigation .navigation-header {
    display: none; }
  #navigation {
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    position: fixed;
    margin-top: 71px;
    border: none;
    left: -100%; } }
  @media screen and (max-width: 959px) and (max-width: 959px) {
    #navigation.sticky {
      top: 59px; } }

@media screen and (max-width: 959px) {
    #navigation.nav-open {
      left: 0; }
    #navigation > nav .level-1 {
      width: 100%;
      left: 0;
      bottom: 0;
      margin-left: 0;
      margin-top: 0; }
      #navigation > nav .level-1 > li:hover > a:after {
        background-image: none !important;
        background: transparent; }
      #navigation > nav .level-1 > li,
      #navigation > nav .level-1 > [class^="menulink"] {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        #navigation > nav .level-1 > li > div.level-2,
        #navigation > nav .level-1 > [class^="menulink"] > div.level-2 {
          padding-top: 0; }
        #navigation > nav .level-1 > li > a,
        #navigation > nav .level-1 > [class^="menulink"] > a {
          font-family: "Interstate", helvetica, arial, sans-serif;
          font-weight: 600;
          padding: 24px 40px;
          line-height: 1em;
          border-bottom: none;
          font-size: 22px !important;
          background: #fff;
          color: #000; }
          #navigation > nav .level-1 > li > a:not(.toggle-category),
          #navigation > nav .level-1 > [class^="menulink"] > a:not(.toggle-category) {
            width: calc(100% - 50px); }
            #navigation > nav .level-1 > li > a:not(.toggle-category).active,
            #navigation > nav .level-1 > [class^="menulink"] > a:not(.toggle-category).active {
              background-color: #f9f9f9; }
          #navigation > nav .level-1 > li > a.toggle-category,
          #navigation > nav .level-1 > [class^="menulink"] > a.toggle-category {
            width: 50px;
            padding: 0; }
            #navigation > nav .level-1 > li > a.toggle-category:before,
            #navigation > nav .level-1 > [class^="menulink"] > a.toggle-category:before {
              content: '+';
              position: absolute;
              left: 20%;
              top: 35%;
              font-size: 24px;
              line-height: 1; }
            #navigation > nav .level-1 > li > a.toggle-category.active,
            #navigation > nav .level-1 > [class^="menulink"] > a.toggle-category.active {
              background-color: #f9f9f9; }
              #navigation > nav .level-1 > li > a.toggle-category.active:before,
              #navigation > nav .level-1 > [class^="menulink"] > a.toggle-category.active:before {
                content: '-';
                left: 25%; }
          #navigation > nav .level-1 > li > a:after,
          #navigation > nav .level-1 > [class^="menulink"] > a:after {
            display: none; }
      #navigation > nav .level-1 > li.no-subcat > a:after {
        content: none; }
      #navigation > nav .level-1 > li {
        padding: 0;
        border-bottom: 2px solid #E7E8E9; }
        #navigation > nav .level-1 > li :last-child {
          border-bottom: none; }
        #navigation > nav .level-1 > li a.level-2 {
          font-size: 23px; }
        #navigation > nav .level-1 > li .level-2 {
          margin: 0;
          padding: 15px 0;
          width: 100%;
          border: none; }
          #navigation > nav .level-1 > li .level-2.active {
            color: #000;
            background-color: #f9f9f9; }
          #navigation > nav .level-1 > li .level-2.menu-horizontal {
            padding: 0; }
          #navigation > nav .level-1 > li .level-2 .sublevel-1 {
            padding-left: 50px; }
          #navigation > nav .level-1 > li .level-2 .menu-wrapper {
            border-top: none;
            padding: 0; }
        #navigation > nav .level-1 > li ul.level-2 {
          padding: 0; }
      #navigation > nav .level-1 > li:hover div.level-2 .menu-wrapper {
        padding: 0; }
      #navigation > nav .level-1 > li:hover > a {
        border: 0;
        text-decoration: none; }
        #navigation > nav .level-1 > li:hover > a:after {
          content: " ";
          display: inline-block;
          position: relative;
          vertical-align: middle;
          background-image: url(../images/icon-sprite-lovable.png);
          background-position: -357px -62px;
          background-repeat: no-repeat;
          width: 5px;
          height: 10px;
          pointer-events: none;
          right: 20px;
          position: absolute; } }
        @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
          #navigation > nav .level-1 > li:hover > a:after {
            background-image: url(../images/icon-sprite-2x-lovable.png);
            background-position: -357px -62px;
            background-repeat: no-repeat;
            width: 5px;
            height: 10px;
            background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    #navigation > nav .level-3 li a {
      font-size: 20px;
      line-height: 1em; }
  .level-2 > li .menu-column {
    padding-left: 0; }
    .level-2 > li .menu-column > ul > li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .level-2 > li .menu-column > ul > li > a:first-child {
        font-family: "Interstate", helvetica, arial, sans-serif;
        text-transform: none;
        font-size: 20px;
        padding: 20px 26px; }
      .level-2 > li .menu-column > ul > li > a:not(.toggle-category) {
        width: calc(100% - 50px) !important; }
      .level-2 > li .menu-column > ul > li > a.level2__icon:before {
        content: '+';
        color: #000;
        position: absolute;
        left: 10%;
        top: 25%;
        font-size: 24px; }
      .level-2 > li .menu-column > ul > li > a.level2__icon.active:before {
        content: '-';
        left: 15%; }
      .level-2 > li .menu-column > ul > li > a.toggle-category {
        width: 50px;
        height: 40px; }
        .level-2 > li .menu-column > ul > li > a.toggle-category:after {
          display: none; }
      .level-2 > li .menu-column > ul > li > a.has-submenu:after {
        display: none; }
      .level-2 > li .menu-column > ul > li > a.has-submenu.active {
        color: #e5e5e5; }
        .level-2 > li .menu-column > ul > li > a.has-submenu.active:after {
          display: none; }
  div.level-2 ul.level-2 > li .menu-column > a {
    font-family: "Interstate", helvetica, arial, sans-serif;
    text-transform: none;
    font-size: 23px;
    padding: 20px 26px; }
  div.level-3 ul.level-3 {
    background: none;
    padding-left: 0;
    padding-top: 0; }
    div.level-3 ul.level-3 li {
      margin-bottom: 20px;
      margin-top: 20px; }
  .sublevel-1 .menu-column ul > li > .level-3 a {
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-size: 1rem;
    line-height: 1.1rem;
    padding-bottom: 10px; }
  ul.level-1 a {
    text-decoration: none; }
    ul.level-1 a span {
      border-bottom: none; }
  .mini-cart-qty {
    display: block;
    font-size: 10px;
    bottom: 0;
    right: -5px; }
  .filter-mobile-open {
    overflow: hidden; }
    .filter-mobile-open .main-wrapper,
    .filter-mobile-open #footer {
      position: relative; }
      .filter-mobile-open .main-wrapper .menu-overlay,
      .filter-mobile-open #footer .menu-overlay {
        content: "";
        background: rgba(0, 0, 0, 0.5);
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 11; }
  .disable-scroll {
    overflow: hidden;
    height: 100vh; }
  .level-2 > li .menu-column > ul > li > a.has-submenu.active ~ .level-3 .level-3 {
    display: block !important; }
  #header:not(.container).sticky.scrolled-down {
    top: -59px; }
  #header:not(.container).sticky.search-active {
    top: -132px !important; }
  #widget-promo.under-nav {
    position: relative; }
    #widget-promo.under-nav.sticky {
      position: sticky; }
    #widget-promo.under-nav.sticky-header {
      top: 59px; }
    #widget-promo.under-nav.sticky-header-search {
      top: 132px; }
  .footer-features article {
    padding: 80px 20px 0; }
    .footer-features article h4,
    .footer-features article p {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-size: 19px; }
  .footer-contact {
    display: block;
    padding: 15px;
    background-image: url("../images/service-client.jpg");
    background-repeat: no-repeat;
    background-size: cover; }
    .footer-contact p,
    .footer-contact h2,
    .footer-contact h3,
    .footer-contact .h3 {
      color: #fff; }
    .footer-contact h3,
    .footer-contact .h3 {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600; }
    .footer-contact p {
      font-size: 16px; }
    .footer-contact a {
      font-size: 16px;
      color: #e5e5e5; }
    .footer-contact .footer-service-client {
      padding: 15px;
      border: 1px solid rgba(255, 255, 255, 0.7); }
      .footer-contact .footer-service-client:before {
        content: " ";
        display: inline-block;
        position: relative;
        vertical-align: middle;
        background-image: url(../images/icon-sprite-lovable.png);
        background-position: -81px -298px;
        background-repeat: no-repeat;
        width: 71px;
        height: 70px; } }
      @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
        .footer-contact .footer-service-client:before {
          background-image: url(../images/icon-sprite-2x-lovable.png);
          background-position: -81px -298px;
          background-repeat: no-repeat;
          width: 71px;
          height: 70px;
          background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
      .footer-contact .footer-service-client ul {
        padding: 0; }
        .footer-contact .footer-service-client ul li {
          font-size: 16px;
          color: #fff;
          font-weight: 600; }
  .footer-social {
    padding-top: 0; }
    .footer-services .footer-social .content-asset .f-social {
      width: 100%;
      text-align: center; }
      .footer-services .footer-social .content-asset .f-social a {
        height: 60px; }
      .footer-services .footer-social .content-asset .f-social p {
        font-family: "Interstate", helvetica, arial, sans-serif;
        font-weight: 600;
        font-size: 25px; }
    .footer-social .f-social nav {
      text-align: center; }
  #formulaire-contact {
    width: auto; }
    #formulaire-contact .form-contact {
      margin-left: 0; }
  .f-instagram:after {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -382px -176px;
    background-repeat: no-repeat;
    width: 40px;
    height: 40px; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .f-instagram:after {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -382px -176px;
      background-repeat: no-repeat;
      width: 40px;
      height: 40px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .triman p,
  .triman img {
    display: block; }
  .m-section-reassurance {
    margin: 0;
    padding-top: 35px;
    border-top: 1px solid #e5e5e5;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .m-section-reassurance .c-link-image {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      margin: 10px 0;
      padding: 0 10px;
      -webkit-box-flex: 1;
          -ms-flex: 1 0 50%;
              flex: 1 0 50%;
      pointer-events: none; }
    .m-section-reassurance .c-link-image__text {
      text-transform: uppercase;
      font-size: 13px;
      line-height: 1.8em; }
  .footer-find-store-row p,
  .footer-newsletter p {
    margin-bottom: 20px; }
  .footer-newsletter-row {
    display: block; }
    .footer-newsletter-row .footer-newsletter {
      padding: 0 24px;
      width: 100%; }
      .footer-newsletter-row .footer-newsletter .section-title {
        display: none; }
      .footer-newsletter-row .footer-newsletter .keeper {
        height: 100%;
        padding-top: 100px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
      .footer-newsletter-row .footer-newsletter span.error {
        margin: -22px 0 13px 0 !important;
        font-size: 12px !important;
        text-align: center !important; }
  #footer footer {
    margin-top: 0; }
  .footer-find-store-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 35px 0;
    text-align: center; }
    .footer-find-store-row .storelocator-img {
      margin: 0 0 20px 0; }
    .footer-find-store-row .footer-find-store {
      margin-left: 0;
      width: 100%;
      padding: 0 24px; }
  .footer-mobile-social {
    text-align: center; }
    .footer-mobile-social:after {
      content: "";
      display: block;
      clear: both; }
    .footer-mobile-social .h4,
    .footer-mobile-social h4 {
      margin-top: 0;
      font-size: 15px;
      text-transform: uppercase; }
    .footer-mobile-social .c-list-horizontal, .footer-mobile-social .content-asset ul.c-list-horizontal {
      margin-top: 2.5em;
      display: -ms-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      border-top: 1px solid #1F1E21;
      padding: 25px 0 10px; }
      .footer-mobile-social .c-list-horizontal li, .footer-mobile-social .content-asset ul.c-list-horizontal li {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        display: block;
        padding: 0 15px; }
      .footer-mobile-social .c-list-horizontal span, .footer-mobile-social .content-asset ul.c-list-horizontal span {
        display: block;
        text-transform: uppercase;
        font-size: 15px;
        margin-top: 0.8em; }
  .footer-mobile-customer {
    text-align: center;
    border-top: 1px solid #d5d5d5;
    padding: 4em 15px; }
    .footer-mobile-customer .h4,
    .footer-mobile-customer h4 {
      font-size: 14px;
      text-transform: uppercase; }
    .footer-mobile-customer p {
      font-size: 13px; }
    .footer-mobile-customer .h5,
    .footer-mobile-customer h5 {
      margin: 2em 0px;
      font-size: 15px;
      text-transform: uppercase; }
      .footer-mobile-customer .h5 span, .footer-mobile-customer .h5 a,
      .footer-mobile-customer h5 span,
      .footer-mobile-customer h5 a {
        margin-top: 0.5em;
        text-transform: none;
        text-decoration: underline;
        display: block; }
  .footer-mobile-payment-delivery {
    background: #ededed;
    padding: 2em 15px 2.5em 15px; }
    .footer-mobile-payment-delivery .h4,
    .footer-mobile-payment-delivery h4 {
      margin: 1.33em 0;
      font-size: 13px;
      font-weight: 600; }
  .footer-services {
    border-top: 1px solid #d5d5d5;
    padding-top: 0; }
    .footer-services ul {
      width: 100%;
      margin: 0;
      padding: 0;
      border-radius: 0; }
      .footer-services ul li {
        padding: 0 24px; }
        .footer-services ul li:first-child {
          border-top: 1px solid #d5d5d5;
          padding: 30px 30px 30px 24px;
          margin: 0;
          font-size: 18px;
          font-weight: 600;
          text-transform: uppercase; }
          .footer-services ul li:first-child:after {
            background: rgba(255, 255, 255, 0);
            content: '+';
            text-align: right;
            font-size: 25px;
            line-height: 16px; }
          .footer-services ul li:first-child a {
            border-radius: 0;
            padding: 0;
            font-size: 14px;
            font-family: "Interstate", helvetica, arial, sans-serif;
            font-weight: 600; }
        .footer-services ul li a {
          font-size: 14px; }
          .footer-services ul li a:active {
            background: rgba(255, 255, 255, 0); }
      .footer-services ul.footer-icons {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
        .footer-services ul.footer-icons li {
          padding: 0 10px 15px;
          border: none;
          width: auto; }
          .footer-services ul.footer-icons li:first-child:after {
            width: 0;
            content: '' !important; }
      .footer-services ul.active li:first-child:after {
        background: rgba(255, 255, 255, 0);
        content: '-';
        font-size: 38px;
        line-height: 11px; }
      .footer-services ul.active li:first-child a {
        padding-top: 0; }
      .footer-services ul.active li a {
        padding-left: 0; }
  .footer-seo {
    border-top: 1px solid #d5d5d5;
    background-position: top;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0.2, #8f8f8f), color-stop(0%, rgba(255, 255, 255, 0)));
    background-image: linear-gradient(to right, #8f8f8f 0.2, rgba(255, 255, 255, 0) 0%);
    background-size: 5px 1px;
    background-repeat: repeat-x;
    background-color: #f1f1f1; }
    .ie9 .footer-seo {
      border-top: 1px dotted #8f8f8f; }
  .footer__seo-text,
  .content-asset div.footer__seo-text {
    margin-top: 2.5em;
    font-size: 22px;
    font-weight: 500; }
    .footer__seo-text .h3,
    .footer__seo-text h3,
    .content-asset div.footer__seo-text .h3,
    .content-asset div.footer__seo-text h3 {
      margin: 1em 0;
      font-weight: 600;
      font-size: 22px; }
    .footer__seo-text strong,
    .content-asset div.footer__seo-text strong {
      font-weight: 600; }
    .footer__seo-text p,
    .content-asset div.footer__seo-text p {
      font-size: 22px; }
  .m-footer-copyright {
    margin-top: 0; }
    .m-footer-copyright .copyright {
      margin: 0 0 0 20px; }
  .footer__lang-selection li img {
    vertical-align: sub;
    margin-right: 5px; }
  .btn-back-top a .arrow {
    top: 47%;
    left: 36%;
    width: 12px;
    height: 12px; }
  .btn-back-top.pdp-shift {
    bottom: 100px; }
  .btn-back-top.product-added {
    bottom: 185px; }
  .btn-back-top.hide-behind-overlay {
    z-index: 9; }
  body {
    color: #000;
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-weight: 500; }
  .modal-open {
    overflow: initial;
    height: 100vh;
    position: fixed; }
    .modal-open .ui-dialog, .modal-open .ui-widget-overlay {
      position: fixed; }
  .m-only {
    display: block !important; }
  html body .ui-dialog .ui-dialog-titlebar-close {
    margin-right: 0 !important; }
  .breadcrumb-mobile {
    margin-top: 20px;
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-weight: 600;
    font-size: 20px; }
    .breadcrumb-mobile a:before {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -454px -66px;
      background-repeat: no-repeat;
      width: 17px;
      height: 24px;
      top: -1px;
      -webkit-transform: scale(0.6);
              transform: scale(0.6); } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .breadcrumb-mobile a:before {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -454px -66px;
        background-repeat: no-repeat;
        width: 17px;
        height: 24px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  #mes-coups .no-results {
    padding: 0 15px; }
  #mes-coups .button-fancy-large {
    min-height: 0; }
  .button-fancy-large,
  button.button-fancy-large,
  .button-fancy-large[type="button"],
  .checkout-shipping .form-row.form-row-button .button-fancy-large {
    font-size: 28px;
    height: auto;
    line-height: 28px; }
  .button-fancy-large:after,
  .button-fancy-large#add-to-cart:after {
    content: none; }
  .checkoutHelp:before {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -382px 0px;
    background-repeat: no-repeat;
    width: 62px;
    height: 55px; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .checkoutHelp:before {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -382px 0px;
      background-repeat: no-repeat;
      width: 62px;
      height: 55px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .no-hits-banner {
    width: 100%;
    background-image: none;
    padding: 30px 20px;
    height: auto; }
  .header-no-hits {
    height: auto;
    margin: 0 auto; }
  .not-found-msg.error-msg {
    font-size: 20px; }
  .no-hits-banner-bg {
    background-image: none;
    background-color: #FFF; }
    .no-hits-banner-bg > .no-hits-banner {
      height: auto;
      background-image: url(../images/wonderbra-no-hits-mobile.jpg);
      padding-top: 300px;
      background-size: contain;
      background-repeat: no-repeat; }
    .no-hits-banner-bg .header-no-hits {
      background-color: #FFF;
      border: 3px solid #e5e5e5;
      padding: 40px 20px;
      margin: 20px;
      width: auto; }
      .no-hits-banner-bg .header-no-hits .not-found-msg {
        border-top: none;
        font-size: 20px;
        margin: 20px 0; }
  .no-hits-search {
    margin: 0;
    display: none; }
    .no-hits-search label {
      font-size: 28px; }
  .no-hits-help {
    padding: 0; }
    .no-hits-help .title {
      font-size: 21px;
      text-align: center;
      max-width: 60%;
      margin: 20px auto 30px; }
    .no-hits-help li {
      list-style: none;
      text-align: center;
      margin-bottom: 50px; }
      .no-hits-help li:before {
        content: none; }
      .no-hits-help li p {
        margin: 5px 0; }
    .no-hits-help_tip-number {
      color: #e5e5e5;
      display: block;
      font-size: 36px;
      font-weight: 600;
      margin-bottom: 5px;
      text-align: center; }
  .search-not-found li {
    font-size: 21px;
    display: block;
    max-width: 100%;
    margin-right: 0; }
  .not-found-msg {
    font-size: 23px;
    line-height: 1.2; }
  .no-hits-footer {
    display: block; }
    .no-hits-footer:before {
      -webkit-transform: scale(1.6);
              transform: scale(1.6); }
    .no-hits-footer.no-hits-newsletter-container {
      border-bottom: 1px solid #ededed; }
    .no-hits-footer.no-hits-newsletter-container, .no-hits-footer.no-hits-contact {
      float: none;
      width: 100%;
      border-right: none;
      padding-right: 0;
      padding-left: 0; }
    .no-hits-footer.no-hits-newsletter-container {
      margin-bottom: 30px; }
      .no-hits-footer.no-hits-newsletter-container h2.no-hits-footer_title:before {
        background-image: url(../images/ico/newsletter-yellow@2x.png);
        width: 44px;
        height: 32px;
        background-position: 0 0;
        background-size: auto; }
    .no-hits-footer.no-hits-contact h2:before {
      content: '';
      background-repeat: no-repeat;
      width: 60px;
      height: 60px;
      margin: 0 auto 20px;
      display: block !important;
      background-image: url(../images/sprite-404_noResult@2x.png);
      background-position: 0 0; }
    .no-hits-footer h3 {
      font-size: 20px;
      margin-bottom: 20px; }
    .no-hits-footer p {
      font-size: 21px;
      margin: 0 auto 30px; }
    .no-hits-footer input[type=text] {
      height: 45px;
      width: auto;
      max-width: 54%;
      display: inline;
      font-size: 20px; }
    .no-hits-footer button {
      border-radius: 50px;
      height: auto;
      padding: 18px 25px 18px 10px;
      line-height: 15px;
      font-size: 15px;
      display: inline;
      min-width: auto;
      width: auto;
      margin-left: 5%;
      max-width: 40%; }
    .no-hits-footer a {
      font-size: 18px; }
    .no-hits-footer .no-hits-footer_title {
      font-size: 32px;
      font-family: "Interstate", helvetica, arial, sans-serif;
      color: #e5e5e5;
      text-transform: uppercase;
      text-align: center;
      margin-bottom: 5px; }
    .no-hits-footer_customer-services {
      padding: 0; }
      .no-hits-footer_customer-services li {
        list-style: none;
        margin-bottom: 30px;
        position: relative;
        padding-left: 50px; }
        .no-hits-footer_customer-services li:after {
          content: '';
          background-image: url(../images/sprite-404_noResult@2x.png);
          background-repeat: no-repeat;
          background-position: -62px 0;
          width: 34px;
          height: 24px;
          position: absolute;
          left: 0;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%); }
        .no-hits-footer_customer-services li:nth-child(2):after {
          background-position: -60px -24px;
          width: 32px;
          height: 28px; }
        .no-hits-footer_customer-services li:nth-child(3):after {
          background-position: -98px 0;
          width: 32px;
          height: 28px; }
      .no-hits-footer_customer-services p {
        margin: 0; }
  .page-not-found .no-hits-banner-bg {
    background-image: none; }
    .page-not-found .no-hits-banner-bg .no-hits-banner {
      background-image: url(../images/WONDERBRA-404-bg-mobile.jpg); }
  .page-not-found .error-header {
    padding-right: 0;
    padding-left: 0; }
    .page-not-found .error-header h2 {
      font-size: 23px;
      font-weight: 600;
      margin-bottom: 30px;
      text-transform: uppercase; }
    .page-not-found .error-header .not-found-msg {
      margin-bottom: 30px;
      font-family: "Interstate", helvetica, arial, sans-serif; }
  .page-not-found .error-redirect {
    border-bottom: 1px solid #ededed;
    margin-bottom: 30px;
    padding-bottom: 15px; }
    .page-not-found .error-redirect p {
      font-size: 20px; }
    .page-not-found .error-redirect .link {
      display: block; }
  .discover-products {
    text-align: center;
    display: block;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 20px 30px; }
    .discover-products_header {
      position: relative; }
      .discover-products_header p {
        font-size: 23px; }
      .discover-products_header .divisor {
        display: none; }
    .discover-products_items img {
      display: block;
      max-width: 100%; }
    .discover-products_items li {
      display: block;
      margin-right: 0;
      margin-bottom: 30px; }
      .discover-products_items li:last-child {
        margin-bottom: 0; }
  .primary-content h1.oups {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -186px 0px;
    background-repeat: no-repeat;
    width: 186px;
    height: 52px;
    margin-top: 0px !important; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .primary-content h1.oups {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -186px 0px;
      background-repeat: no-repeat;
      width: 186px;
      height: 52px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .primary-content h1.oops {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: 0px 0px;
    background-repeat: no-repeat;
    width: 176px;
    height: 57px;
    margin-top: 0px !important; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .primary-content h1.oops {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: 0px 0px;
      background-repeat: no-repeat;
      width: 176px;
      height: 57px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .primary-content .error-404.customer-fr {
    margin-bottom: 30px; }
  .no-hits-banner .background-404-banner {
    display: none; }
  .no-hits-banner .header-no-hits .no-hits-content .not-found-msg.not-found-msg-border, .no-hits-banner .header-no-hits .no-hits-content .not-found-msg.error-msg {
    font-size: 20px; }
  .payment-card-info .form-row .card-type-options input[type="radio"] {
    top: -3px;
    vertical-align: middle; }
  .payment-card-info .form-row.form-row-button {
    display: inline;
    width: 100%; }
  .payment-card-info .form-row .card-type-options > label img {
    min-width: 100px;
    vertical-align: middle; }
  .payment-card-info .form-row.row-payment-select-go {
    margin-top: 0;
    margin-bottom: 0;
    height: 0; }
  .pdp-main .attribute .size-chart-link {
    margin: 20px -22px -20px;
    display: block; }
    .pdp-main .attribute .size-chart-link a {
      font-size: 20px; }
  .set-new-password {
    width: initial; }
    .set-new-password input[type="password"] {
      width: 100%; }
  #mes-coups .list-table-header .button#send-to-friend {
    line-height: 40px; }
  .payment-card-info .form-row.form-row-button {
    display: block;
    text-align: center; }
  .short-inputfield.expires-date-dropdown {
    padding-left: 0; }
  .payment-card-info .cvn input {
    width: 140px; }
  .payment-card-info .dialog-required {
    padding-left: 0; }
    .payment-card-info .dialog-required .required-indicator em {
      font-size: 21px; }
  .checkout-shipping.address .form-row.form-row-button {
    text-align: center; }
    .checkout-shipping.address .form-row.form-row-button button {
      width: 420px; }
  #mes-coups .wishlist-nav #send-to-friend,
  #mes-coups .wishlist-nav #print-it {
    width: 100%;
    padding: 15px 24px;
    text-align: center; }
  #PasswordResetForm .button-fancy-large {
    min-width: 175px; }
  .input-checkbox + label:before,
  .input-checkbox + a:before {
    margin-top: 0; }
  .loginPage #dwfrm_login .form-row-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0; }
    .loginPage #dwfrm_login .form-row-button .btn-primary {
      padding: 19px 50px;
      margin: 0 auto; }
  .loginPage .form-row-button .btn-primary {
    float: none; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row .civility label,
  #edit-address-form .form-row .civility label,
  #RegistrationForm .form-row .civility label,
  #RegistrationFormCredential .form-row .civility label {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row .civility label span,
    #edit-address-form .form-row .civility label span,
    #RegistrationForm .form-row .civility label span,
    #RegistrationFormCredential .form-row .civility label span {
      font-size: 21px;
      text-transform: initial;
      font-weight: 500;
      text-align: left; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row .civility input[type="radio"],
  #edit-address-form .form-row .civility input[type="radio"],
  #RegistrationForm .form-row .civility input[type="radio"],
  #RegistrationFormCredential .form-row .civility input[type="radio"] {
    width: 40px;
    height: 40px;
    margin-left: 0;
    border-color: #1F1E21;
    margin-right: 10px; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.country select:not(.hasCustomSelect),
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.country .customSelectArea,
  #edit-address-form .form-row.country select:not(.hasCustomSelect),
  #edit-address-form .form-row.country .customSelectArea,
  #RegistrationForm .form-row.country select:not(.hasCustomSelect),
  #RegistrationForm .form-row.country .customSelectArea,
  #RegistrationFormCredential .form-row.country select:not(.hasCustomSelect),
  #RegistrationFormCredential .form-row.country .customSelectArea {
    float: right;
    height: 70px !important;
    font-size: 20px !important;
    min-width: 0;
    -webkit-appearance: menulist;
    max-height: 100%; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.country .customSelect,
  #edit-address-form .form-row.country .customSelect,
  #RegistrationForm .form-row.country .customSelect,
  #RegistrationFormCredential .form-row.country .customSelect {
    height: 100%; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.country .customSelectInner,
  #edit-address-form .form-row.country .customSelectInner,
  #RegistrationForm .form-row.country .customSelectInner,
  #RegistrationFormCredential .form-row.country .customSelectInner {
    font-size: 20px; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.country span.error,
  #edit-address-form .form-row.country span.error,
  #RegistrationForm .form-row.country span.error,
  #RegistrationFormCredential .form-row.country span.error {
    margin: 0 !important; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.checkboxLine,
  #edit-address-form .form-row.checkboxLine,
  #RegistrationForm .form-row.checkboxLine,
  #RegistrationFormCredential .form-row.checkboxLine {
    margin: 0 15px !important;
    height: 70px; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.checkboxLine + .divider,
    #edit-address-form .form-row.checkboxLine + .divider,
    #RegistrationForm .form-row.checkboxLine + .divider,
    #RegistrationFormCredential .form-row.checkboxLine + .divider {
      display: block;
      margin: 10px 15px 20px;
      border: 1px solid #ededed; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.checkboxLine label,
    #edit-address-form .form-row.checkboxLine label,
    #RegistrationForm .form-row.checkboxLine label,
    #RegistrationFormCredential .form-row.checkboxLine label {
      padding-left: 55px;
      display: block;
      font-size: 21px;
      font-weight: 500;
      padding-top: 15px;
      line-height: normal; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .form-row.checkboxLine input,
    #edit-address-form .form-row.checkboxLine input,
    #RegistrationForm .form-row.checkboxLine input,
    #RegistrationFormCredential .form-row.checkboxLine input {
      width: 40px;
      height: 40px; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .dialog-required,
  #edit-address-form .dialog-required,
  #RegistrationForm .dialog-required,
  #RegistrationFormCredential .dialog-required {
    text-align: left;
    margin: 0;
    padding: 0 15px;
    font-size: 21px;
    font-weight: 500; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .dialog-required.no-padding,
    #edit-address-form .dialog-required.no-padding,
    #RegistrationForm .dialog-required.no-padding,
    #RegistrationFormCredential .dialog-required.no-padding {
      padding: 0; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .dialog-required .required-indicator,
    #edit-address-form .dialog-required .required-indicator,
    #RegistrationForm .dialog-required .required-indicator,
    #RegistrationFormCredential .dialog-required .required-indicator {
      color: #666; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .dialog-required em,
    #edit-address-form .dialog-required em,
    #RegistrationForm .dialog-required em,
    #RegistrationFormCredential .dialog-required em {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 500;
      color: #666; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .text-center,
  #edit-address-form .text-center,
  #RegistrationForm .text-center,
  #RegistrationFormCredential .text-center {
    text-align: center; }
  .margin-sticky-filter {
    margin-top: 108px; }
  #edit-address-form .address-label {
    display: none !important; }
  /*Container padding should be replaced with something better asap*/
  .pdpZoomPopinOpen {
    width: 100%;
    height: 70vh;
    margin: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0; }
    .pdpZoomPopinOpen .widget-promo.under-nav {
      z-index: 3000; }
  .pdp-main .product-variations {
    margin: 20px 0 0; }
  .pt_product-details .breadcrumb-container {
    background: #fff;
    position: relative; }
    .pt_product-details .breadcrumb-container .breadcrumb-mobile {
      display: inline-block;
      margin: 0;
      padding: 0;
      position: absolute;
      top: 28px;
      left: 11px;
      width: auto; }
      .pt_product-details .breadcrumb-container .breadcrumb-mobile span {
        display: none; }
    .pt_product-details .breadcrumb-container .breadcrumb {
      text-align: left;
      display: block;
      width: 91%;
      padding: 25px 0 15px;
      margin: .5em 0 .5em 2.5em;
      height: 21px;
      -webkit-box-sizing: content-box;
              box-sizing: content-box;
      white-space: nowrap;
      overflow-x: auto;
      overflow-y: hidden; }
      .pt_product-details .breadcrumb-container .breadcrumb li span, .pt_product-details .breadcrumb-container .breadcrumb li a {
        text-transform: none;
        letter-spacing: 0.31px; }
      .pt_product-details .breadcrumb-container .breadcrumb li span {
        font-weight: 600; }
        .pt_product-details .breadcrumb-container .breadcrumb li span.last {
          color: #010101; }
  .pdp-main {
    margin: 0; }
    .pdp-main .zoom-mobile {
      display: none; }
    .pdp-main .recommendations {
      margin-bottom: 20px; }
    .pdp-main .mobile-pagination {
      margin-bottom: 0; }
    .pdp-main .product-col-1 .product-price {
      display: none;
      position: relative;
      text-align: left;
      width: 100%;
      padding-bottom: 0;
      margin: 20px 0 0; }
    .pdp-main .product-col-1 .product-description {
      width: 100%;
      margin-top: 10px; }
      .pdp-main .product-col-1 .product-description > div .mobile-only-wrapper {
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0;
        padding-right: 15px;
        padding-left: 15px; }
        .pdp-main .product-col-1 .product-description > div .mobile-only-wrapper .product-reviewsummary {
          margin-top: 20px; }
      .pdp-main .product-col-1 .product-description > div .group-title-ref {
        display: none; }
      .pdp-main .product-col-1 .product-description .product-price .product-sales-price {
        font-size: 1.5rem; }
      .pdp-main .product-col-1 .product-description .product-price .price-sales {
        padding: 0;
        background: none;
        vertical-align: super;
        font-size: 1.5rem;
        font-weight: 700;
        color: #d90f3b;
        vertical-align: middle;
        margin-right: 10px; }
      .pdp-main .product-col-1 .product-description .product-price .price-standard {
        float: left;
        margin: 13px 15px 0 0;
        font-size: 1.5rem; }
      .pdp-main .product-col-1 .product-description .product-desc-block {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2; }
        .pdp-main .product-col-1 .product-description .product-desc-block > li {
          padding-left: 15px;
          padding-right: 15px;
          background: none;
          border-top: none;
          border-bottom: 1px solid #e5e5e5;
          float: none; }
          .pdp-main .product-col-1 .product-description .product-desc-block > li.active span:after {
            -webkit-transform: rotate(180deg);
                    transform: rotate(180deg);
            top: 40%; }
          .pdp-main .product-col-1 .product-description .product-desc-block > li span, .pdp-main .product-col-1 .product-description .product-desc-block > li a {
            border: none;
            font-size: 1.3125rem;
            color: #010101; }
        .pdp-main .product-col-1 .product-description .product-desc-block .size-chart-link span:after {
          content: " ";
          display: inline-block;
          position: relative;
          vertical-align: middle;
          background-image: url(../images/icon-sprite-lovable.png);
          background-position: -454px -100px;
          background-repeat: no-repeat;
          width: 20px;
          height: 20px;
          position: absolute;
          right: 5px;
          top: 50%; } }
        @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
          .pdp-main .product-col-1 .product-description .product-desc-block .size-chart-link span:after {
            background-image: url(../images/icon-sprite-2x-lovable.png);
            background-position: -454px -100px;
            background-repeat: no-repeat;
            width: 20px;
            height: 20px;
            background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
        .pdp-main .product-col-1 .product-description .product-desc-block .size-chart-link.active span:after {
          -webkit-transform: none;
                  transform: none;
          top: initial; }
        .pdp-main .product-col-1 .product-description .product-desc-block .product-description-inner {
          border: none;
          background: none;
          font-size: 1.125rem;
          max-width: 100%;
          margin: 0; }
          .pdp-main .product-col-1 .product-description .product-desc-block .product-description-inner p, .pdp-main .product-col-1 .product-description .product-desc-block .product-description-inner li {
            font-size: 1.125rem;
            display: inline-block; }
    .pdp-main .product-col-1 .product-add-wishlist {
      font-family: "Interstate", helvetica, arial, sans-serif;
      text-transform: none; }
      .pdp-main .product-col-1 .product-add-wishlist:before {
        -webkit-transform: scale(1.9);
                transform: scale(1.9);
        margin-right: 10px; }
    .pdp-main .product-images-mobile .swiper-container {
      width: 100%; }
    .pdp-main .product-images-mobile .badge {
      width: auto; }
    .pdp-main .product-content {
      position: relative;
      padding-top: 0; }
      .pdp-main .product-content.m-only {
        padding-right: 15px;
        padding-left: 15px;
        display: block; }
        .pdp-main .product-content.m-only .product-price {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
          .pdp-main .product-content.m-only .product-price .price-sales,
          .pdp-main .product-content.m-only .product-price .price-standard {
            background: transparent;
            color: #d90f3b;
            padding: 0;
            font-size: 1.125rem;
            margin-right: 10px; }
          .pdp-main .product-content.m-only .product-price .price-standard {
            -webkit-box-ordinal-group: 2;
                -ms-flex-order: 1;
                    order: 1; }
          .pdp-main .product-content.m-only .product-price .price-sales {
            -webkit-box-ordinal-group: 3;
                -ms-flex-order: 2;
                    order: 2; }
      .pdp-main .product-content .product-add-to-cart .inventory {
        margin-bottom: 0; }
      .pdp-main .product-content .product-add-to-cart .inventory.unavailable-product {
        max-width: none; }
        .pdp-main .product-content .product-add-to-cart .inventory.unavailable-product .quantity:after {
          content: none; }
      .pdp-main .product-content .product-add-to-cart .pdp-add-to-cart_fixed {
        position: fixed;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        bottom: 0;
        top: auto;
        background-color: #fff;
        left: 0;
        right: 0;
        display: flex;
        z-index: 100;
        padding: 16px 0;
        -webkit-box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2); }
    .pdp-main .product-name {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 500;
      text-align: left;
      text-transform: none;
      font-size: 2rem;
      line-height: 1.1;
      border-top: 1px solid #e5e5e5;
      padding: 15px 0 0; }
    .pdp-main .product-col-3 {
      display: none;
      position: relative;
      margin-bottom: 30px; }
      .pdp-main .product-col-3.mobile-only-wrapper {
        display: block; }
      .pdp-main .product-col-3 .product-price {
        display: block;
        width: 100%;
        position: relative;
        text-align: left;
        border-bottom: none; }
        .pdp-main .product-col-3 .product-price .product-sales-price {
          font-size: 2rem; }
    .pdp-main .product-out-of-stock-mobile {
      display: block;
      position: fixed;
      bottom: 0;
      right: 0;
      width: 100vw;
      background-color: #fff;
      z-index: 100;
      padding: 16px;
      -webkit-box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2); }
      .pdp-main .product-out-of-stock-mobile .out-of-stock-button {
        float: right;
        padding: 0;
        margin-right: 0;
        max-width: 70%; }
      .pdp-main .product-out-of-stock-mobile .out-of-stock__errors {
        position: absolute;
        top: -35px;
        width: 100%; }
    .pdp-main .product-add-to-cart button,
    .pdp-main .product-out-of-stock-mobile button {
      font-size: 14px;
      height: auto;
      padding-top: 15px;
      padding-bottom: 15px;
      min-height: auto;
      font-size: 1rem;
      max-width: 53%;
      height: 60px;
      border: 1px solid #000;
      margin: 0 16px 0 0; }
      .pdp-main .product-add-to-cart button:hover, .pdp-main .product-add-to-cart button:focus,
      .pdp-main .product-out-of-stock-mobile button:hover,
      .pdp-main .product-out-of-stock-mobile button:focus {
        border-color: #000;
        background-color: #000; }
      .pdp-main .product-add-to-cart button:disabled:hover, .pdp-main .product-add-to-cart button:disabled:focus,
      .pdp-main .product-out-of-stock-mobile button:disabled:hover,
      .pdp-main .product-out-of-stock-mobile button:disabled:focus {
        border-color: #000; }
    .pdp-main .product-variations .attribute-size {
      list-style: none; }
      .pdp-main .product-variations .attribute-size .available-size,
      .pdp-main .product-variations .attribute-size .value {
        display: none; }
    .pdp-main .product-variations .list-size {
      display: none; }
    .pdp-main .product-variations .size-chart-link {
      position: relative;
      display: inline-block;
      margin: 40px 0 0; }
    .pdp-main .attribute .label,
    .pdp-main .inventory .quantity select#Quantity,
    .pdp-main .quantity select {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-size: 1.3125rem;
      color: #000;
      text-transform: uppercase; }
    .pdp-main .attribute {
      background: none;
      margin-bottom: 0; }
      .pdp-main .attribute .mobile-current-size:not(:empty) {
        border: 1px solid #ededed;
        padding: 10px;
        border-radius: 5px;
        margin-left: 10px;
        color: #000;
        background-color: #e5e5e5; }
      .pdp-main .attribute .label {
        margin: 0 0 10px;
        padding: 0; }
        .pdp-main .attribute .label:after {
          content: none; }
    .pdp-main .attribute.size {
      position: fixed;
      top: auto;
      left: 16px;
      bottom: 16px;
      width: 30%;
      height: 60px;
      width: calc(24% - 16px);
      border: 1px solid #000;
      background-color: #fff; }
      .pdp-main .attribute.size:after {
        content: '';
        background: url(../images/red_arrow_down.svg) no-repeat;
        position: absolute;
        width: 28px;
        height: 15px;
        right: 10px;
        top: 38%;
        pointer-events: none; }
    .pdp-main .inventory {
      width: 15%;
      margin-right: 2.5%;
      border: 1px solid #000; }
      .pdp-main .inventory:after {
        border: none; }
      .pdp-main .inventory .quantity {
        height: 100%;
        background: none; }
        .pdp-main .inventory .quantity::after {
          background: url(../images/red_arrow_down.svg) no-repeat;
          width: 28px;
          position: absolute;
          right: 10px;
          top: 50%;
          margin-top: 0;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          pointer-events: none; }
    .pdp-main .inventory .quantity select#Quantity {
      font-size: 1.125rem;
      height: 58px;
      padding: 0 15px;
      font-family: "Interstate", helvetica, arial, sans-serif;
      width: 100%; }
      .pdp-main .inventory .quantity select#Quantity:after {
        content: none; }
    .pdp-main .product-actions .product-add-wishlist {
      font-size: 1.5625rem; }
    .pdp-main .product-actions .product-share h3 {
      font-family: "Interstate", helvetica, arial, sans-serif;
      color: #000;
      display: block;
      font-size: 1rem; }
    .pdp-main .product-actions .product-share .addthis_button_pinterest,
    .pdp-main .product-actions .product-share .addthis_button_google {
      display: none; }
    .pdp-main .product-actions .product-share .addthis_toolbox a:first-child {
      margin-left: 25px; }
    .pdp-main .complete-the-set .add-to-cart button {
      font-size: 1.5625rem; }
      .pdp-main .complete-the-set .add-to-cart button:after {
        margin-top: -17px; }
    .pdp-main .complete-the-set .attribute.size .available-size {
      text-transform: none; }
    .pdp-main .complete-the-set .attribute .mobile-current-size:not(:empty) {
      color: #000;
      background-color: #e5e5e5; }
    .pdp-main .swatches-size-mobile {
      background-color: #fff;
      height: 100%;
      width: 100%;
      padding: 0 40px 0 10px;
      overflow: hidden;
      font-size: 1rem;
      border-radius: 0;
      border: none;
      text-transform: uppercase;
      display: inline-block !important;
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600; }
      .pdp-main .swatches-size-mobile .size-unavailable {
        color: lightgrey; }
    .pdp-main .attribute .label + ul,
    .pdp-main .attribute .label + div {
      display: block;
      padding: 0;
      margin: 0; }
    .pdp-main .swatches.Color {
      background: none; }
      .pdp-main .swatches.Color li {
        display: inline-block;
        vertical-align: middle;
        list-style: none;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: relative;
        width: 36px;
        height: 36px;
        -webkit-transition: all 150ms ease-in-out;
        transition: all 150ms ease-in-out;
        overflow: visible;
        border-radius: 100%;
        margin: 0 3px; }
        .pdp-main .swatches.Color li[data-color="Bianco"].selected, .pdp-main .swatches.Color li[data-color="Bianco"]:hover {
          opacity: 1;
          height: 36px;
          width: 36px; }
          .pdp-main .swatches.Color li[data-color="Bianco"].selected .swatchanchor, .pdp-main .swatches.Color li[data-color="Bianco"]:hover .swatchanchor {
            border: 1px solid #ccc; }
          .pdp-main .swatches.Color li[data-color="Bianco"].selected:before, .pdp-main .swatches.Color li[data-color="Bianco"]:hover:before {
            opacity: 1; }
        .pdp-main .swatches.Color li[data-color="Bianco"]:before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          border: 2px solid #ccc;
          border-radius: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          z-index: 2;
          pointer-events: none;
          opacity: 0; }
        .pdp-main .swatches.Color li[data-color="Bianco"] .swatchanchor {
          border: 1px solid #ccc;
          z-index: 1;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
          height: 28px;
          width: 28px;
          padding: 0; }
          .pdp-main .swatches.Color li[data-color="Bianco"] .swatchanchor:after {
            content: none; }
        .pdp-main .swatches.Color li:after {
          content: "";
          position: absolute;
          display: block;
          background: transparent;
          height: 38px;
          width: 38px;
          border: 5px solid #fff;
          top: 50%;
          left: 50%;
          -webkit-transform: translateX(-50%) translateY(-50%);
                  transform: translateX(-50%) translateY(-50%);
          border-radius: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          -webkit-transition: all 150ms ease-in-out;
          transition: all 150ms ease-in-out;
          pointer-events: none;
          z-index: 20; }
        .pdp-main .swatches.Color li.selected a.swatchanchor, .pdp-main .swatches.Color li:hover a.swatchanchor {
          border: 0; }
        .pdp-main .swatches.Color li.selected:after, .pdp-main .swatches.Color li:hover:after {
          border: 3px solid #fff;
          height: 34px;
          width: 34px; }
        .pdp-main .swatches.Color li:hover {
          opacity: 0.8; }
        .pdp-main .swatches.Color li span.swatchanchor {
          cursor: default;
          border: 1px solid #fff; }
        .pdp-main .swatches.Color li a.swatchanchor {
          display: block;
          height: 100%;
          width: 100%;
          top: 0;
          left: 0;
          position: absolute;
          border: 0; }
        .pdp-main .swatches.Color li.selected-value {
          display: none; }
  .pdp-main .product-variations .attribute.size {
    display: block; }
  .content-asset .product-offers {
    background-image: none;
    border: 0; }
    .content-asset .product-offers ul {
      text-align: center; }
      .content-asset .product-offers ul li {
        font-size: 1.1875rem;
        padding: 4px 10px 10px 0;
        text-align: left;
        display: block;
        margin: 20px 0 0 0;
        width: 100%; }
        .content-asset .product-offers ul li.icon-yellow:before, .content-asset .product-offers ul li.icon:before {
          content: " ";
          display: inline-block;
          position: relative;
          vertical-align: middle;
          background-image: url(../images/icon-sprite-lovable.png);
          background-position: -382px -65px;
          background-repeat: no-repeat;
          width: 51px;
          height: 51px;
          -webkit-transform: scale(0.7) translate(10px, 0);
                  transform: scale(0.7) translate(10px, 0);
          margin-left: -16px;
          margin-top: -10px; } }
        @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
          .content-asset .product-offers ul li.icon-yellow:before, .content-asset .product-offers ul li.icon:before {
            background-image: url(../images/icon-sprite-2x-lovable.png);
            background-position: -382px -65px;
            background-repeat: no-repeat;
            width: 51px;
            height: 51px;
            background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
        .content-asset .product-offers ul li .one-line-description {
          margin-top: 10px; }
  .product-attributes-wrapper {
    position: relative;
    padding-top: 30px; }
    .product-attributes-wrapper .attribute.size {
      top: 0;
      left: 0; }
  .complete-the-set:after {
    clear: both;
    content: " ";
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden; }
  .complete-the-set .products-set .product-set {
    width: calc(50% - 20px); }
    .complete-the-set .products-set .product-set:nth-child(odd), .complete-the-set .products-set .product-set:first-child {
      margin-left: 0;
      margin-right: inherit; }
    .complete-the-set .products-set .product-set:nth-child(even) {
      margin-right: 0; }
    .complete-the-set .products-set .product-set .column {
      height: auto;
      margin: 0 0 15px; }
      .complete-the-set .products-set .product-set .column.attribute.size, .complete-the-set .products-set .product-set .column.quantity {
        margin: 0 10px;
        width: calc(50% - 10px);
        display: inline-block; }
        .complete-the-set .products-set .product-set .column.attribute.size .d-only, .complete-the-set .products-set .product-set .column.quantity .d-only {
          display: none !important; }
      .complete-the-set .products-set .product-set .column.attribute.size {
        margin-left: 0;
        position: relative;
        border: none;
        background: none; }
        .complete-the-set .products-set .product-set .column.attribute.size .label {
          display: none; }
        .complete-the-set .products-set .product-set .column.attribute.size:after {
          content: none; }
      .complete-the-set .products-set .product-set .column.quantity {
        margin-right: 0;
        float: right; }
    .complete-the-set .products-set .product-set .color {
      position: absolute;
      top: 0;
      right: 0; }
    .complete-the-set .products-set .product-set .price-name {
      clear: both; }
      .complete-the-set .products-set .product-set .price-name.column {
        margin: 15px auto; }
      .complete-the-set .products-set .product-set .price-name p {
        font-family: "Interstate", helvetica, arial, sans-serif;
        font-size: 1rem;
        height: 56px; }
      .complete-the-set .products-set .product-set .price-name .product-sales-price,
      .complete-the-set .products-set .product-set .price-name .product-standard-price,
      .complete-the-set .products-set .product-set .price-name .price-sales {
        font-size: 1rem;
        font-weight: 700; }
      .complete-the-set .products-set .product-set .price-name .product-standard-price {
        top: 0; }
    .complete-the-set .products-set .product-set .add-to-cart.column button {
      margin: 0;
      padding: 10px;
      min-height: 0;
      height: auto;
      width: 100%; }
  .complete-the-set .add-to-cart button {
    font-size: 24px; }
    .complete-the-set .add-to-cart button:after {
      margin-top: -17px; }
  .complete-the-set .attribute.size .value {
    display: block;
    background: none;
    padding: 0;
    margin-bottom: 0;
    position: relative; }
    .complete-the-set .attribute.size .value:after {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -454px -362px;
      background-repeat: no-repeat;
      width: 18px;
      height: 9px;
      position: absolute;
      top: 50%;
      right: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .complete-the-set .attribute.size .value:after {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -454px -362px;
        background-repeat: no-repeat;
        width: 18px;
        height: 9px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .complete-the-set .attribute.size .available-size {
    text-transform: none; }
  .complete-the-set .attribute.size:after {
    content: "";
    display: block; }
  .complete-the-set select {
    background: none;
    border: none;
    /*width: auto;*/
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-size: 0.625rem;
    text-transform: uppercase;
    display: inline-block; }
  .complete-the-set .column.quantity {
    background: none; }
    .complete-the-set .column.quantity:after {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -454px -362px;
      background-repeat: no-repeat;
      width: 18px;
      height: 9px;
      margin-left: 10px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      margin-top: 0; } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .complete-the-set .column.quantity:after {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -454px -362px;
        background-repeat: no-repeat;
        width: 18px;
        height: 9px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .complete-the-set .column.quantity select {
      font-size: 0.625rem;
      height: 55px; }
    .complete-the-set .column.quantity label {
      display: none; }
  .pdp-main button#add-to-cart[disabled]:before {
    top: 0;
    margin-right: 10px; }
  .product-colors .item-color {
    margin-right: 5px; }
  .product-colors .item-color .swatchanchor {
    width: 12px;
    height: 12px; }
  #unavailable-dialog.ui-dialog-content {
    padding: 40px 40px 80px; }
  .dialogProduct.ui-dialog {
    margin: 0 5%;
    max-width: 90%; }
  .dialogProduct .form-backinstock input[type="submit"] {
    position: inherit;
    width: auto;
    min-width: 260px;
    height: 40px;
    margin: 0 auto; }
  .dialogProduct .product-img {
    max-width: 100%;
    text-align: center; }
    .dialogProduct .product-img img {
      max-width: 215px; }
  .dialogProduct .error {
    float: none;
    font-size: 16px; }
  .dialogProduct .newsletter-gender {
    position: relative;
    font-size: 20px; }
  .dialogProduct .bis_email {
    height: 35px;
    width: 100%;
    border: 1px solid #aaa; }
  .dialogProduct .button.bis_message {
    margin-top: 0; }
  .title-backinstock {
    font-size: 30px; }
  .text-backinstock {
    font-size: 20px;
    margin-bottom: 25px; }
  .dialogProduct .form-backinstock input,
  .dialogProduct .form-backinstock label {
    margin-bottom: 5px; }
  .dialogProduct .form-backinstock label {
    font-size: 25px; }
  .dialogProduct .form-backinstock input[type="email"] {
    height: 50px;
    width: 100%; }
  .dialogProduct .form-backinstock .newsletter-gender {
    margin: 25px 0; }
  .dialogProduct .form-backinstock .bis_submit {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    width: 90%;
    margin: 0 20px;
    min-height: 50px;
    font-size: 17px;
    line-height: 30px; }
    .dialogProduct .form-backinstock .bis_submit:after {
      right: 20px;
      top: inherit;
      bottom: 10px; }
  .pdp-main .attribute .size-chart-link a.attributecontentlink.unavailablelink {
    font-size: 20px; }
  .dialogProduct .form-backinstock .dwfrm_backinstock_newsletter {
    float: left;
    margin-top: 5px;
    margin-right: 10px;
    width: 15px;
    height: 15px;
    border-color: #aaa; }
  .dialogProduct .form-backinstock .label_check {
    font-weight: 300;
    font-size: 25px;
    padding-left: 23px; }
  .form-backinstock {
    text-align: center; }
  .product-add-to-cart {
    display: block;
    width: 100%;
    margin: 0; }
  .product-variations {
    display: block;
    width: 100%; }
    .product-variations .size {
      z-index: 101; }
  .mobile-only-wrapper .m-only .error-size,
  .mobile-only-wrapper .m-only .error-unavailable {
    background-color: #d90f3b;
    color: #fff;
    height: 40px;
    padding: 6px;
    position: fixed;
    bottom: 92px;
    z-index: 101;
    left: 0;
    right: 0;
    margin: 0;
    text-align: center;
    font-size: 21px; }
    .mobile-only-wrapper .m-only .error-size::after,
    .mobile-only-wrapper .m-only .error-unavailable::after {
      content: '';
      width: 0;
      height: 0;
      border: 12px solid transparent;
      border-top: 0;
      border-bottom: 15px solid #d90f3b;
      position: absolute;
      bottom: -13px;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
  .mobile-only-wrapper .m-only .error-size::after {
    left: 11%; }
  .mobile-only-wrapper .m-only .error-unavailable::after {
    left: 33%; }
  .m-only {
    display: block; }
  select {
    -webkit-appearance: none; }
    select:after {
      content: "";
      display: block; }
  .product-listing-1x4 ul.search-result-items .grid-tile {
    margin: 0 10px;
    width: calc(50% - 20px);
    padding: 0; }
    .product-listing-1x4 ul.search-result-items .grid-tile:nth-child(odd) {
      margin-left: 0; }
    .product-listing-1x4 ul.search-result-items .grid-tile:nth-child(even) {
      margin-right: 0; }
    .product-listing-1x4 ul.search-result-items .grid-tile:nth-child(n+3) {
      display: none; }
  .product-images-mobile {
    display: block; }
  .product-listing {
    display: none; }
  .recommendations .grid-tile .product-tile .m-icon-wishlist {
    opacity: 1; }
  .recommendations .grid-tile .product-tile:hover .c-icon-wishlist,
  .recommendations .grid-tile .product-tile:hover .c-icon-wishlist--filled {
    visibility: visible; }
  .product-tile:hover .c-icon-wishlist,
  .product-tile:hover .c-icon-wishlist--filled {
    visibility: hidden; }
  .m-navigation {
    display: block;
    border-bottom: 1px solid #ededed; }
  .m-navigation_item {
    display: inline-block; }
    .m-navigation_item a {
      padding: 20px;
      display: block; }
  .m-navigation_item--is-right {
    float: right;
    padding: 20px 20px 20px 0; }
    .m-navigation_item--is-right .c-link {
      padding: 0;
      display: inline-block;
      vertical-align: middle; }
    .m-navigation_item--is-right .c-span_arrow--is-left {
      margin-right: 20px; }
    .m-navigation_item--is-right .c-span_arrow--is-right {
      margin-left: 20px; }
  .m-navigation_item .c-span_arrow--is-left:after,
  .m-navigation_item .c-span_arrow--is-right:after {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -454px -401px;
    background-repeat: no-repeat;
    width: 9px;
    height: 17px; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .m-navigation_item .c-span_arrow--is-left:after,
    .m-navigation_item .c-span_arrow--is-right:after {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -454px -401px;
      background-repeat: no-repeat;
      width: 9px;
      height: 17px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .m-navigation_item--is-left .c-span_arrow--is-left:after {
    -webkit-transform: scale(0.6);
            transform: scale(0.6); }
  .m-navigation_item .c-span_arrow--is-right:after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  .m-navigation .c-span_arrow--is-left {
    margin-right: 10px; }
  .m-navigation .c-span_arrow--is-right {
    margin-left: 10px; }
  .m-block_metime .mobile-only-wrapper .mobile-pagination {
    position: relative;
    margin: 30px 0; }
  /**
 * The code below override a style that comes from ABTasty
 */
  #pdpMain > DIV.product-image-container.product-col-1 {
    display: block !important; }
  .lovable-product-added {
    display: none;
    position: fixed;
    bottom: 0;
    z-index: 102;
    padding: 24px 16px 16px;
    background-color: #fff;
    left: 0;
    right: 0;
    -webkit-box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.2); }
    .lovable-product-added .close-continue-shopping {
      background: url(../images/icon__close.png);
      position: absolute;
      width: 14px;
      height: 14px;
      top: 5px;
      right: 7px; }
    .lovable-product-added .continue-shopping,
    .lovable-product-added .view-bag {
      display: block;
      background-color: #000;
      color: #fff;
      width: 100%;
      height: 60px;
      font-size: 16px;
      padding: 20px;
      text-align: center; }
    .lovable-product-added .continue-shopping {
      margin-bottom: 16px; }
  #guide-des-tailles .accordeon .sous-menu .table-wrap .table-content-scroll {
    overflow: auto;
    white-space: nowrap; }
    #guide-des-tailles .accordeon .sous-menu .table-wrap .table-content-scroll .table-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      border: none; }
  #guide-des-tailles .accordeon .sous-menu #buste .cell {
    width: auto !important;
    min-width: 60px;
    border-top: 1px solid #d9d9d9; }
  .refinement-header {
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-weight: 600;
    font-size: 36px; }
  .pt_product-search-result #secondary {
    z-index: 15; }
  #secondary .filter-sort-mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border: none;
    padding: 15px 0 15px;
    background-color: #fff;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear; }
    #secondary .filter-sort-mobile.scroll-sticky {
      position: fixed; }
    #secondary .filter-sort-mobile > div:first-child {
      margin-right: 0; }
    #secondary .filter-sort-mobile > div:nth-child(2)::after {
      width: 15px;
      height: 25px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      background: url(../images/right-arrow.png) 0 0 no-repeat transparent !important; }
    #secondary .filter-sort-mobile > div,
    #secondary .filter-sort-mobile > div select {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600;
      font-size: 24px;
      border: 1px solid #ededed; }
    #secondary .filter-sort-mobile > div select {
      bottom: 0; }
    #secondary .filter-sort-mobile .filtering:after {
      background: url(../images/filter-mobile.png) 0 0 no-repeat transparent;
      width: 40px;
      height: 20px;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
    #secondary .filter-sort-mobile .filtering {
      display: inline-block;
      vertical-align: bottom;
      height: 73px;
      background-color: #000;
      color: #fff;
      margin-left: 7px;
      padding: 24px;
      width: calc(100% / 2 - 13px); }
    #secondary .filter-sort-mobile .sort-by {
      display: inline-block;
      height: 73px;
      background-color: #000;
      margin: 0 12px 0 0;
      padding: 0;
      top: 0;
      width: calc(100% / 2 - 13px); }
      #secondary .filter-sort-mobile .sort-by #grid-sort-header {
        height: 100%;
        background-color: #000;
        color: #fff;
        margin: 0 !important;
        font-size: 19px;
        padding: 24px; }
    #secondary .filter-sort-mobile .sort-by form {
      height: 100%; }
      #secondary .filter-sort-mobile .sort-by form fieldset {
        height: 100%; }
    #secondary .filter-sort-mobile .filtering.active {
      background-color: #000;
      color: #fff; }
      #secondary .filter-sort-mobile .filtering.active:before {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 10px 0;
        border-color: #000 transparent transparent;
        position: absolute;
        bottom: -10px;
        right: 50%;
        margin-right: -10px; }
  #secondary .breadcrumb {
    text-align: left;
    padding: 25px 0 15px;
    margin: 0.5em;
    height: 21px;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    width: 97%; }
    #secondary .breadcrumb span, #secondary .breadcrumb a {
      text-transform: none;
      letter-spacing: 0.31px; }
    #secondary .breadcrumb span {
      font-weight: 600; }
  .refinement.Tailles.info-refinement ul a, .refinement.Sizes.info-refinement ul a, .refinement.Taglie.info-refinement ul a {
    padding: 12px 0;
    width: 66px;
    height: 44px;
    font-family: "Interstate", helvetica, arial, sans-serif;
    margin: 0 1px;
    font-size: 21px; }
  .refinement.Tailles .filter-guide-link:before, .refinement.Sizes .filter-guide-link:before, .refinement.Taglie .filter-guide-link:before {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -307px -134px;
    background-repeat: no-repeat;
    width: 31px;
    height: 31px;
    top: -7px;
    margin-right: 15px; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .refinement.Tailles .filter-guide-link:before, .refinement.Sizes .filter-guide-link:before, .refinement.Taglie .filter-guide-link:before {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -307px -134px;
      background-repeat: no-repeat;
      width: 31px;
      height: 31px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .refinement.Tailles .selected a, .refinement.Sizes .selected a, .refinement.Taglie .selected a {
    background-color: #000; }
  .refinement.Tailles .toggle-content ul li, .refinement.Sizes .toggle-content ul li, .refinement.Taglie .toggle-content ul li {
    width: calc( (100% / 6) - 10px);
    text-align: center; }
  .refinement.Formes .filter-guide-link:before {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -266px -134px;
    background-repeat: no-repeat;
    width: 31px;
    height: 31px;
    top: -7px;
    margin-right: 15px; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    .refinement.Formes .filter-guide-link:before {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -266px -134px;
      background-repeat: no-repeat;
      width: 31px;
      height: 31px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .refinement .filter-guide-link {
    font-size: 21px;
    height: 41px;
    padding-top: 6px;
    text-decoration: underline;
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-weight: 600; }
  .refinement .toggle-content {
    display: none; }
    .refinement .toggle-content ul li.clear-filter-mobile a {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600;
      font-size: 21px;
      text-transform: none;
      padding-left: 0; }
  .refinement .toggle span {
    text-transform: none;
    font-size: 1.2rem; }
  .refinements .info-refinement ul > li {
    padding: 0; }
    .refinements .info-refinement ul > li:before {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -454px 0px;
      background-repeat: no-repeat;
      width: 22px;
      height: 22px;
      position: absolute; } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .refinements .info-refinement ul > li:before {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -454px 0px;
        background-repeat: no-repeat;
        width: 22px;
        height: 22px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .refinements .info-refinement ul > li.selected:before {
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -391px -379px;
      background-repeat: no-repeat;
      width: 22px;
      height: 22px;
      position: absolute; } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      .refinements .info-refinement ul > li.selected:before {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -391px -379px;
        background-repeat: no-repeat;
        width: 22px;
        height: 22px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
    .refinements .info-refinement ul > li.clear-filter-mobile:before {
      display: none; }
    .refinements .info-refinement ul > li.clear-filter-mobile a {
      margin: 0; }
    .refinements .info-refinement ul > li a {
      padding-left: 10px;
      color: #000;
      margin: 0 0 40px 20px; }
  .refinements .Colors.info-refinement ul > li:before {
    display: none; }
  .filter-open .clear-all-filters {
    height: 60px;
    text-align: center;
    display: block;
    padding: 20px 18px;
    margin: 0;
    background-color: #fff; }
    .filter-open .clear-all-filters a {
      display: inline;
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600;
      font-size: 20px;
      padding-left: 0;
      text-decoration: none; }
      .filter-open .clear-all-filters a:before {
        top: 0; }
  .product-tile .product-pricing > .product-discounted-price .product-standard-price,
  .product-tile .product-pricing > .product-discounted-price .product-sales-price {
    font-size: 1.125rem;
    width: auto;
    margin-right: 10px; }
  .product-tile .product-pricing > .product-discounted-price .product-sales-price {
    margin-right: 0; }
  .product-tile .product-name {
    margin-top: 0; }
    .product-tile .product-name a {
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-size: 1.125rem;
      text-align: center;
      line-height: 1.1; }
  .product-tile .product-pricing .product-sales-price {
    font-size: 1.125rem; }
  .product-tile .swiper-container.catalogue-product-item .swiper-wrapper, .product-tile .swiper-container.catalogue-product-item .swiper-slide {
    height: auto !important; }
  ul.search-result-items .loadedSwiper .swiper-slide {
    display: block; }
  .recommendations .product-tile .product-name {
    margin-top: 0;
    padding-top: 0;
    border-top: none; }
  .recommendations .size-hover-area-personalized {
    padding-top: 40px; }
    .recommendations .size-hover-area-personalized .product-colors {
      position: absolute;
      top: 0;
      right: 0; }
  .recommendations p,
  .pdp-main .complete-the-set h3,
  .pdp-main .complete-the-set .h3 {
    font-size: 1.375rem; }
  ul.search-result-items {
    margin: 0; }
  ul.search-result-items .grid-tile {
    position: relative;
    width: calc(50% - 22px);
    margin: 0 5px 25px 5px;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
  @media screen and (max-width: 959px) and (max-width: 959px) {
    ul.search-result-items .grid-tile .swiper-arrows {
      width: 16px;
      height: 28px;
      position: absolute;
      top: calc(50% - 14px);
      font-size: 0;
      z-index: 1;
      background-size: contain; }
      ul.search-result-items .grid-tile .swiper-arrows.swiper-prev {
        left: 5px;
        background: url("../images/swiper/slider-prev-mini@2x.png") 0 0 no-repeat transparent; }
      ul.search-result-items .grid-tile .swiper-arrows.swiper-next {
        right: 5px;
        background: url("../images/swiper/slider-next-mini@2x.png") 0 0 no-repeat transparent; }
      ul.search-result-items .grid-tile .swiper-arrows.disabled {
        opacity: 0.3; } }

@media screen and (max-width: 959px) {
  ul.search-result-items .grid-tile:nth-child(3n+0) {
    clear: none; }
  .search-result-content:not(.colums-2) ul.search-result-items .grid-tile:nth-child(3n+0) {
    margin-right: 5px; }
  .product-colors {
    display: block; }
  .filter-sort-mobile {
    border: 1px solid #ededed;
    border-left: 0;
    border-right: 0; }
  #secondary .filter-sort-mobile .filtering.active:after {
    background: url(../images/filter_black.svg) no-repeat;
    width: 40px;
    height: 20px; }
  .refinement p.toggle.expanded:after, .refinement h3.toggle.expanded:after {
    content: "";
    background-image: url(../images/icon-sprite-2x-dim.png);
    background-position: -235px -193px;
    background-repeat: no-repeat;
    width: 15px;
    height: 10px;
    background-size: 371px 346px;
    -webkit-transform: rotateZ(180deg);
            transform: rotateZ(180deg);
    top: 23px; }
  #secondary .filter-sort-mobile > div,
  #secondary .filter-sort-mobile > div select {
    border: 0;
    font-size: 1.2rem;
    padding: 20px;
    text-transform: uppercase; }
  #secondary .filter-sort-mobile {
    margin: 0 0 0 -5px !important;
    width: 100vw !important; }
  #secondary .filter-sort-mobile .filtering.active {
    background: inherit;
    color: #000;
    border: 1px solid #000; }
    #secondary .filter-sort-mobile .filtering.active:before {
      display: none; }
  .mobile-pagination .swiper-pagination-switch {
    background: rgba(0, 0, 0, 0.2);
    border: 0; }
    .mobile-pagination .swiper-pagination-switch.swiper-active-switch {
      background: black; }
  .refinement .toggle {
    border-top: 1px solid #e5e5e5;
    border-bottom: 0;
    padding-left: 0; }
  .filter-open .refinement:nth-child(4) .toggle,
  .refinement:nth-child(4) .toggle {
    border-top: 1px solid #e5e5e5;
    border-bottom: 0; }
  .filter-sort-mobile .filtering .active {
    color: #fff; }
  .refinements .dialogify.filter-guide-link.attributecontentlink {
    top: 15px;
    margin-top: 0;
    font-size: 1.2rem; }
  .refinement.Tailles.info-refinement ul a,
  .refinement.Taglie.info-refinement ul a,
  .refinement.Sizes.info-refinement ul a {
    height: 46px;
    font-size: 1.05rem;
    text-decoration: none; }
  .refinement p.toggle:after,
  .refinement h3.toggle:after,
  .refinement p.toggle.expanded:after,
  .refinement h3.toggle.expanded:after {
    right: 10px; }
  .refinement.Tailles ul li,
  .refinement.Taglie ul li {
    width: calc( 25% - 10px);
    margin: 0 10px 10px 0; }
  .refinement.Tailles.info-refinement ul a,
  .refinement.Taglie.info-refinement ul a {
    width: 100%; }
  .info-refinement .toggle-content {
    position: initial;
    padding-bottom: 25px; }
  .filter-inner {
    background: #fff;
    padding: 0;
    margin-top: 6px;
    border-bottom: 1px solid #e5e5e5; }
    .filter-inner .refinement {
      margin-right: 0; }
    .filter-inner.active {
      margin: 0 -5px;
      padding: 0 5px; }
    .filter-inner.sticky-filter {
      position: fixed;
      top: 96px;
      left: 0;
      right: 0;
      overflow-y: auto;
      z-index: 100;
      background-color: transparent;
      height: calc(100vh - 200px);
      border-bottom: none; }
      .filter-inner.sticky-filter .refinement {
        background-color: #fff; }
        .filter-inner.sticky-filter .refinement .toggle {
          padding-left: 5px; }
  .filter-open .clear-all-filters {
    text-align: left;
    font-size: 20px; }
  .clear-all-filters {
    margin-top: 15px; }
    .clear-all-filters a {
      position: relative;
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600;
      text-transform: uppercase;
      text-align: left;
      padding: 12px 0 12px 55px !important; }
      .clear-all-filters a:before {
        content: "";
        display: block;
        position: absolute;
        top: 3px;
        left: 0;
        height: 30px;
        width: 30px;
        z-index: 50;
        border: 1px solid #000;
        background: url("../images/icon__close.png") center no-repeat; }
  .refinement ul {
    margin-top: -30px; }
  .refinements .info-refinement ul > li.clear-filter {
    display: none; }
  .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile) {
    height: 46px;
    width: 46px;
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-transition: all 150ms ease-in-out;
    transition: all 150ms ease-in-out; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile):after {
      content: "";
      position: absolute;
      display: block;
      background: rgba(255, 255, 255, 0);
      height: 48px;
      width: 48px;
      border: 5px solid #fff;
      top: 50%;
      left: 50%;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      border-radius: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      -webkit-transition: all 150ms ease-in-out;
      transition: all 150ms ease-in-out; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).selected, .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile):hover {
      border: 0; }
      .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).selected:after, .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile):hover:after {
        height: 43px;
        width: 43px; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile):hover {
      opacity: 0.8; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).clear-filter:after {
      display: none; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile):not(.clear-filter) a {
      display: block;
      position: absolute;
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
      z-index: 10; }
    .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2 {
      background-color: #fff;
      border: 0; }
      .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2:before {
        content: "";
        position: absolute;
        display: block;
        background: rgba(255, 255, 255, 0);
        height: 37px;
        width: 37px;
        border: 3px solid #cccccc;
        top: 50%;
        left: 50%;
        -webkit-transform: translateX(-50%) translateY(-50%);
                transform: translateX(-50%) translateY(-50%);
        border-radius: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        z-index: 2;
        -webkit-transition: all 150ms ease-in-out;
        transition: all 150ms ease-in-out; }
      .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2.selected:before, .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2:hover:before {
        height: 32px;
        width: 32px; }
      .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2.selected:after, .refinements .Colori ul li:not(.clear-filter):not(.clear-filter-mobile).searchColorIDs-2:hover:after {
        border: 2px solid #cccccc;
        height: 46px;
        width: 46px; }
  .refinement.Colori ul {
    overflow: visible; }
    .refinement.Colori ul li {
      margin: 0 15px 15px 0px !important; }
  .refinements .info-refinement ul > li a {
    margin: 0 0 25px 20px;
    text-transform: uppercase;
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-size: 1.2rem;
    padding-top: 2px; }
  .refinements .info-refinement ul > li.selected a {
    text-decoration: none; }
  .refinement ul li.clear-filter-mobile,
  .refinement.Tailles ul li.clear-filter-mobile,
  .refinement.Taglie ul li.clear-filter-mobile,
  .refinement.Sizes ul li.clear-filter-mobile,
  .refinement.Colors ul li.clear-filter-mobile,
  .refinement .toggle-content ul li.clear-filter-mobile {
    display: block;
    position: relative;
    margin: 0;
    width: inherit;
    height: inherit;
    overflow: visible;
    clear: both; }
    .refinement ul li.clear-filter-mobile a,
    .refinement.Tailles ul li.clear-filter-mobile a,
    .refinement.Taglie ul li.clear-filter-mobile a,
    .refinement.Sizes ul li.clear-filter-mobile a,
    .refinement.Colors ul li.clear-filter-mobile a,
    .refinement .toggle-content ul li.clear-filter-mobile a {
      position: relative;
      margin: 5px 0;
      bottom: auto;
      font-size: 1.2rem;
      text-decoration: none;
      padding-left: 32px;
      overflow: visible;
      left: 0; }
      .refinement ul li.clear-filter-mobile a:before,
      .refinement.Tailles ul li.clear-filter-mobile a:before,
      .refinement.Taglie ul li.clear-filter-mobile a:before,
      .refinement.Sizes ul li.clear-filter-mobile a:before,
      .refinement.Colors ul li.clear-filter-mobile a:before,
      .refinement .toggle-content ul li.clear-filter-mobile a:before {
        content: "";
        display: block;
        position: absolute;
        top: 0px;
        left: 0;
        height: 22px;
        width: 22px;
        z-index: 50;
        border: 1px solid #000;
        background: url("../images/icon__close.png") center no-repeat; }
      .refinement ul li.clear-filter-mobile a:after,
      .refinement.Tailles ul li.clear-filter-mobile a:after,
      .refinement.Taglie ul li.clear-filter-mobile a:after,
      .refinement.Sizes ul li.clear-filter-mobile a:after,
      .refinement.Colors ul li.clear-filter-mobile a:after,
      .refinement .toggle-content ul li.clear-filter-mobile a:after {
        display: none; }
  .refinement h3.toggle:after {
    content: "";
    background-image: url(../images/icon-sprite-2x-dim.png);
    background-position: -233px -188px;
    background-repeat: no-repeat;
    width: 15px;
    height: 10px;
    background-size: 371px 346px;
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0);
    top: 23px; }
  .filter-inner .refinement p.toggle:after {
    content: '+';
    position: absolute;
    background: none;
    top: 30% !important;
    right: 16px;
    pointer-events: none;
    color: #000;
    font-size: 24px;
    line-height: 1; }
  .filter-inner .refinement p.toggle.expanded:after {
    content: '-';
    background: none;
    top: 55% !important; }
  .refinement p.toggle.expanded:after, .refinement h3.toggle.expanded:after {
    content: "";
    -webkit-transform: rotateZ(180deg);
            transform: rotateZ(180deg); }
  .search-result-options {
    padding-bottom: 15px;
    border-bottom: 0; }
  .refinement-header.hide {
    display: none; }
  .search-result-options {
    display: none; }
  .refinements .info-refinement ul > li a {
    padding: 0;
    margin-left: 0;
    text-transform: none; }
  .refinements .info-refinement ul > li:not(.clear-filter-mobile):before,
  .refinements .info-refinement ul > li:not(.clear-filter-mobile).selected:before {
    display: none; }
  .page-header-count-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 15px;
    margin-left: 3px; }
    .page-header-count-grid .product-search-count-mobile {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-weight: 600;
      font-size: 22px;
      line-height: 26px; }
    .page-header-count-grid .grid-display-mobile {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .page-header-count-grid .grid-display-mobile a#toggle-small-grid {
        margin-right: 14px; }
      .page-header-count-grid .grid-display-mobile a#toggle-large-grid {
        margin-right: 5px; }
      .page-header-count-grid .grid-display-mobile a#toggle-small-grid,
      .page-header-count-grid .grid-display-mobile #toggle-large-grid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .page-header-count-grid .grid-display-mobile a#toggle-small-grid span,
        .page-header-count-grid .grid-display-mobile #toggle-large-grid span {
          display: block;
          width: 27px;
          height: 27px;
          margin: 2px;
          background-color: #B1B2B3; }
        .page-header-count-grid .grid-display-mobile a#toggle-small-grid.active span,
        .page-header-count-grid .grid-display-mobile #toggle-large-grid.active span {
          background-color: #000; }
  .refinement-results {
    font-size: 12px;
    font-family: 600;
    letter-spacing: 0.24px;
    color: red;
    margin-bottom: 15px;
    margin-top: 3px;
    margin-right: 10px;
    float: right; } }
  @media screen and (max-width: 959px) and (max-width: 959px) {
    .refinement-results {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      width: 50%;
      margin-top: 0;
      color: red; } }

@media screen and (max-width: 959px) {
  .category-bottom-desktop .product-search-count {
    display: none; }
  .refinements-desktop {
    display: block; }
    .refinements-desktop .toggle.expanded {
      border-top: 1px solid #ededed !important;
      border: none; }
    .refinements-desktop .toggle-content {
      border: none;
      width: 100vw; }
      .refinements-desktop .toggle-content > ul {
        padding: 16px; }
    .refinements-desktop .grid-display,
    .refinements-desktop .sort-by {
      display: none; }
  #main.newsletter {
    padding: 0 15px; }
  .banner-newsletter {
    height: 300px; }
    .banner-newsletter img {
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
  .newsletter-container,
  .newsletter-confirm {
    padding: 0;
    width: 100%; }
    .newsletter-container .form-row span.error,
    .newsletter-container .form-row .message-error.wonderbra,
    .newsletter-confirm .form-row span.error,
    .newsletter-confirm .form-row .message-error.wonderbra {
      top: 100%;
      left: 0;
      right: auto;
      font-size: 16px;
      position: relative;
      margin-top: 10px;
      float: left; }
    .newsletter-container .form-row.gender-select .message-error.wonderbra,
    .newsletter-confirm .form-row.gender-select .message-error.wonderbra {
      float: none; }
    .newsletter-container .form-row input[type="text"],
    .newsletter-container .form-row input[type="email"],
    .newsletter-confirm .form-row input[type="text"],
    .newsletter-confirm .form-row input[type="email"] {
      display: block;
      width: 100%; }
    .newsletter-container .form-row .newsletter-button,
    .newsletter-confirm .form-row .newsletter-button {
      display: block; }
    .newsletter-container .m-radio-gender label,
    .newsletter-confirm .m-radio-gender label {
      width: 65px;
      height: 65px;
      line-height: 65px;
      text-align: center; }
    .newsletter-container .newsletter-button .button-fancy-large,
    .newsletter-confirm .newsletter-button .button-fancy-large {
      margin: 0 auto 25px;
      display: block;
      background: #000;
      color: #fff;
      font-size: 20px; }
  .d-only {
    display: none !important; }
  .m-only {
    display: block !important; }
  .homepage-slot .m-section-slot {
    padding-right: 0;
    padding-left: 0;
    display: block;
    width: 100%; }
    .homepage-slot .m-section-slot .c-section-link_image {
      padding-left: 10px;
      padding-right: 10px; }
    .homepage-slot .m-section-slot--full .c-section-link_image {
      padding-right: 0;
      padding-left: 0; }
  .m-section-slot {
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .m-section-slot .c-section-link_image {
      display: block; }
      .m-section-slot .c-section-link_image img {
        width: 100%; }
    .m-section-slot .c-section-text {
      display: none;
      text-transform: uppercase; }
    .m-section-slot_image, .m-section-slot_text {
      width: 100%; }
  .homepage-slot .m-section-slot--flex {
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .m-section-slot_image {
    margin: 0;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0; }
  .m-section-slot_text {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .diary-slot {
    padding-bottom: 35px; }
  .home-bottom-banners {
    width: 100%;
    margin-top: 0; }
    .home-bottom-banners .banner-left,
    .home-bottom-banners .banner-right {
      display: block;
      width: 100%;
      padding: 0;
      margin-top: 20px; }
    .home-bottom-banners .banner-right .newsletter {
      width: 90%;
      display: block;
      margin: 20px auto 0; }
      .home-bottom-banners .banner-right .newsletter button,
      .home-bottom-banners .banner-right .newsletter input {
        height: 65px;
        padding: 0 15px; }
      .home-bottom-banners .banner-right .newsletter button {
        font-size: 0;
        text-align: center; }
        .home-bottom-banners .banner-right .newsletter button:after {
          margin-left: 0;
          -webkit-transform: scale(1.4);
                  transform: scale(1.4); }
      .home-bottom-banners .banner-right .newsletter input {
        width: 76%;
        margin-right: 3% !important; }
  .wonderbra-swiper-container {
    margin-bottom: 20px; }
    .wonderbra-swiper-container .swiper-slide a {
      display: block; }
    .wonderbra-swiper-container .wonderbra-swiper-button-container {
      display: none; }
  .desktop-image {
    display: none; }
  .mobile-image {
    display: block; }
  .no-hits-banner-bg > .no-hits-banner {
    width: 100%;
    margin: 0 auto; }
  .c-section-title {
    margin-bottom: 20px; }
  .homepage-slot .homepage-swiper {
    margin: 0 auto;
    overflow: hidden;
    height: auto; }
    .homepage-slot .homepage-swiper .swiper-slide {
      position: relative;
      background-position: top center;
      background-repeat: no-repeat;
      background-size: 100% auto;
      width: 100%;
      height: auto; }
      .homepage-slot .homepage-swiper .swiper-slide img {
        width: 100%;
        height: auto; }
    .homepage-slot .homepage-swiper .swiper-slide__content {
      display: block;
      position: relative;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      -webkit-transform: none;
              transform: none;
      text-align: center;
      bottom: auto;
      left: auto; }
      .homepage-slot .homepage-swiper .swiper-slide__content p {
        display: none; }
      .homepage-slot .homepage-swiper .swiper-slide__content a {
        display: inline-block;
        bottom: auto;
        right: auto;
        position: relative;
        text-transform: uppercase;
        font-size: 1rem;
        margin-top: 1.5rem;
        padding-bottom: 6px;
        border-bottom: 1.5px solid #000; }
    .homepage-slot .homepage-swiper .swiper-pagination {
      position: absolute;
      z-index: 900;
      top: 15px;
      left: 11px;
      -webkit-transform: none;
              transform: none;
      height: 20px; }
    .homepage-slot .homepage-swiper .swiper-pagination-switch {
      display: inline-block;
      background: #e5e5e5;
      height: 7px;
      width: 7px;
      border-radius: 100%;
      -webkit-transition: all 150ms ease-in-out;
      transition: all 150ms ease-in-out;
      cursor: pointer;
      opacity: 0.2; }
      .homepage-slot .homepage-swiper .swiper-pagination-switch + .swiper-pagination-switch {
        margin-left: 7px; }
      .homepage-slot .homepage-swiper .swiper-pagination-switch:hover {
        opacity: 0.8; }
      .homepage-slot .homepage-swiper .swiper-pagination-switch.swiper-active-switch {
        opacity: 1; }
  .homepage-slot.diary-slot .swiper-slide {
    margin: 0; }
  .homepage-slot.diary-slot .c-section-link_text {
    display: none; }
  .diary-slot .mobile-pagination .swiper-pagination-switch {
    border: 0 !important;
    background: #e5e5e5 !important; }
  .diary-slot .mobile-pagination .swiper-pagination-switch.swiper-active-switch {
    background: #7f7f7f !important;
    border: 0 !important; }
  #loyalty-content .only-desktop {
    display: none; }
  #loyalty-content .only-mobile {
    display: block; }
  #loyalty-presentation-banner {
    margin-bottom: 40px;
    height: auto; }
    #loyalty-presentation-banner img {
      position: relative;
      width: calc(100% - 20px);
      height: auto; }
    #loyalty-presentation-banner .content {
      font-size: 13px;
      top: 250px; }
  #loyalty-content .left,
  #loyalty-content .right {
    width: 100%;
    padding: 0 10px;
    text-align: center; }
  #loyalty-content .wide {
    padding: 0 10px; }
  #loyalty-content section {
    margin-bottom: 50px; }
    #loyalty-content section h3 {
      font-size: 25px;
      margin-bottom: 30px; }
    #loyalty-content section p {
      font-size: 13px; }
    #loyalty-content section.promo h3 {
      margin-top: 0;
      margin-bottom: 30px; }
    #loyalty-content section.promo img {
      margin-bottom: 35px;
      width: 100%;
      height: auto; }
    #loyalty-content section.promo .legal {
      font-size: 10px; }
  #loyalty-content .how_it_works {
    border: 0; }
    #loyalty-content .how_it_works .icon_heart {
      margin-top: 0; }
    #loyalty-content .how_it_works h2 {
      font-size: 15px; }
    #loyalty-content .how_it_works p {
      font-size: 13px; }
    #loyalty-content .how_it_works .slide_image {
      margin: 0 auto;
      width: auto;
      max-width: 100%;
      height: auto; }
    #loyalty-content .how_it_works .swiper-pagination {
      position: relative;
      margin-bottom: 40px; }
    #loyalty-content .how_it_works .swiper-pagination-switch.swiper-active-switch {
      opacity: 0.7; }
    #loyalty-content .how_it_works .swiper-arrows {
      display: none; }
  #loyalty-content #loyalty-registerform-link,
  #loyalty-content #loyalty-linkingform-link {
    font-size: 14px;
    width: 140px; }
    #loyalty-content #loyalty-registerform-link + p,
    #loyalty-content #loyalty-linkingform-link + p {
      margin: 35px 0 10px;
      color: #000;
      line-height: 1; }
  #loyalty-content {
    float: none; }
  .loyalty-account-points-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; }
  #loyalty-account-info {
    margin: 40px 0;
    text-align: center;
    float: none; }
    #loyalty-account-info div {
      text-align: center;
      margin-bottom: 20px;
      padding: 0 30px; }
      #loyalty-account-info div.col-half {
        width: 100%; }
      #loyalty-account-info div span {
        display: inline-block;
        width: 50%;
        text-align: right;
        font-size: 14px; }
        #loyalty-account-info div span:after {
          display: none; }
      #loyalty-account-info div span:first-child {
        text-transform: uppercase;
        text-align: left;
        margin: 0;
        margin-right: -5px; }
      #loyalty-account-info div.col-wide span {
        width: 100%;
        text-align: left; }
      #loyalty-account-info div.col-wide .accountInfo {
        float: right;
        width: auto; }
        #loyalty-account-info div.col-wide .accountInfo span {
          left: auto;
          right: 0;
          width: calc(100vw - 65px); }
    #loyalty-account-info .button-fancy-large {
      float: none;
      position: relative;
      margin: 0; }
  #loyalty-points {
    float: none; }
    #loyalty-points .point-values--wrap {
      min-height: auto; }
    #loyalty-points #convert-points {
      margin-top: 25px;
      position: relative;
      -webkit-transform: none;
              transform: none; }
  .loyalty-promos {
    margin-bottom: 40px;
    padding: 0 30px; }
    .loyalty-promos .swiper-container {
      padding-bottom: 50px; }
    .loyalty-promos .promo-col {
      width: 100%; }
    .loyalty-promos .swiper-pagination {
      display: block; }
    .loyalty-promos .swiper-pagination-switch.swiper-active-switch {
      opacity: 0.7; }
    .loyalty-promos .swiper-arrows {
      display: none; }
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle:checked + label + .optinExplanation__content {
    display: block;
    width: 100%;
    margin: 10px auto;
    padding: 20px;
    font-size: 16px; }
  #RegistrationForm .newsletter-optins .form-row.link-only,
  #legal-consents .form-row.link-only {
    padding: 0 0 0 60px;
    font-size: 21px; }
  #RegistrationForm .newsletter-optins .form-row .optinExplanation__text,
  #legal-consents .form-row .optinExplanation__text {
    display: inline;
    padding: 0;
    text-align: left; }
  #RegistrationForm .newsletter-optins .form-row .optinExplanation__content,
  #legal-consents .form-row .optinExplanation__content {
    display: none;
    width: 100%; }
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type,
  #legal-consents .form-row input[type="checkbox"]:first-of-type {
    position: absolute;
    top: 5px;
    height: 40px;
    width: 40px; }
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label.error + label,
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + span.error + label,
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label),
    #legal-consents .form-row input[type="checkbox"]:first-of-type + label.error + label,
    #legal-consents .form-row input[type="checkbox"]:first-of-type + span.error + label,
    #legal-consents .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label) {
      display: inline-block;
      padding: 0 0 0 60px;
      position: relative;
      z-index: 1;
      top: 0;
      left: 0; }
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label.error + label .optinExplanation__text,
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + span.error + label .optinExplanation__text,
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label) .optinExplanation__text,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + label.error + label .optinExplanation__text,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + span.error + label .optinExplanation__text,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label) .optinExplanation__text {
        text-transform: none;
        font-size: 21px;
        font-weight: 500; }
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label.error + label:before,
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + span.error + label:before,
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label):before,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + label.error + label:before,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + span.error + label:before,
      #legal-consents .form-row input[type="checkbox"]:first-of-type + label:not(.error):not(.optinExplanation__label):before {
        position: absolute;
        left: 0;
        top: 10px;
        width: 40px;
        height: 40px; }
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type:checked + label.error + label:after,
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type:checked + span.error + label:after,
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"]:first-of-type:checked + label:not(.error):after,
    #legal-consents .form-row input[type="checkbox"]:first-of-type:checked + label.error + label:after,
    #legal-consents .form-row input[type="checkbox"]:first-of-type:checked + span.error + label:after,
    #legal-consents .form-row input[type="checkbox"]:first-of-type:checked + label:not(.error):after {
      top: 14px;
      width: 30px;
      height: 30px; }
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle + label,
  #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle + label {
    display: inline;
    position: relative;
    top: 0;
    left: 35px;
    padding: 0 0 0 10px;
    text-decoration: underline; }
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle + label:after,
    #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle + label:after {
      content: "";
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -357px -62px;
      background-repeat: no-repeat;
      width: 5px;
      height: 10px;
      margin: -2px 0 0 3px;
      /* Only for IOS Device */
      -webkit-transform: scale(1.7) translateY(0px) translateX(3px);
              transform: scale(1.7) translateY(0px) translateX(3px); } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle + label:after,
      #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle + label:after {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -357px -62px;
        background-repeat: no-repeat;
        width: 5px;
        height: 10px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
      @supports (-webkit-touch-callout: none) {
        #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle + label:after,
        #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle + label:after {
          margin: -11px 0 0 3px; } }
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle:checked + label:after,
  #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle:checked + label:after {
    content: "";
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -357px -62px;
    background-repeat: no-repeat;
    width: 5px;
    height: 10px;
    -webkit-transform: scale(1.7) translateY(0px) translateX(3px) rotateZ(90deg);
            transform: scale(1.7) translateY(0px) translateX(3px) rotateZ(90deg); } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"].optinExplanation__toggle:checked + label:after,
    #legal-consents .form-row input[type="checkbox"].optinExplanation__toggle:checked + label:after {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -357px -62px;
      background-repeat: no-repeat;
      width: 5px;
      height: 10px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"] + label .optinExplanation__label,
  #RegistrationForm .newsletter-optins .form-row input[type="checkbox"] + label span:last-child,
  #legal-consents .form-row input[type="checkbox"] + label .optinExplanation__label,
  #legal-consents .form-row input[type="checkbox"] + label span:last-child {
    display: inline;
    color: #666;
    padding: 0;
    position: relative;
    z-index: 2; }
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"] + label .optinExplanation__label:before,
    #RegistrationForm .newsletter-optins .form-row input[type="checkbox"] + label span:last-child:before,
    #legal-consents .form-row input[type="checkbox"] + label .optinExplanation__label:before,
    #legal-consents .form-row input[type="checkbox"] + label span:last-child:before {
      content: "";
      display: none; }
  #RegistrationForm .newsletter-optins .form-row.link-only #morePrivacyPolicy + label,
  #legal-consents .form-row.link-only #morePrivacyPolicy + label {
    text-decoration: underline;
    padding: 0 0 0 10px;
    top: 2px; }
    #RegistrationForm .newsletter-optins .form-row.link-only #morePrivacyPolicy + label:after,
    #legal-consents .form-row.link-only #morePrivacyPolicy + label:after {
      content: "";
      content: " ";
      display: inline-block;
      position: relative;
      vertical-align: middle;
      background-image: url(../images/icon-sprite-lovable.png);
      background-position: -357px -62px;
      background-repeat: no-repeat;
      width: 5px;
      height: 10px;
      margin: 0 0 0 3px;
      -webkit-transform: scale(1.7) translateY(0px) translateX(3px);
              transform: scale(1.7) translateY(0px) translateX(3px); } }
    @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
      #RegistrationForm .newsletter-optins .form-row.link-only #morePrivacyPolicy + label:after,
      #legal-consents .form-row.link-only #morePrivacyPolicy + label:after {
        background-image: url(../images/icon-sprite-2x-lovable.png);
        background-position: -357px -62px;
        background-repeat: no-repeat;
        width: 5px;
        height: 10px;
        background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  #RegistrationForm .newsletter-optins .form-row.link-only #morePrivacyPolicy:checked + label:after,
  #legal-consents .form-row.link-only #morePrivacyPolicy:checked + label:after {
    content: "";
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -357px -62px;
    background-repeat: no-repeat;
    width: 5px;
    height: 10px;
    -webkit-transform: scale(1.7) translateY(0px) translateX(3px) rotateZ(90deg);
            transform: scale(1.7) translateY(0px) translateX(3px) rotateZ(90deg); } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    #RegistrationForm .newsletter-optins .form-row.link-only #morePrivacyPolicy:checked + label:after,
    #legal-consents .form-row.link-only #morePrivacyPolicy:checked + label:after {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -357px -62px;
      background-repeat: no-repeat;
      width: 5px;
      height: 10px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  #legal-consents {
    padding: 0 20px 30px 20px; }
    #legal-consents #legal-consents {
      padding: 0; }
    #legal-consents .input-checkbox + label,
    #legal-consents .form-row.link-only .privacyPolicy {
      font-size: 15px; }
  body .ui-dialog.loyaltyModal .lovableModal__header h4 {
    margin-bottom: 10px; }
  body .ui-dialog.loyaltyModal .loyaltyPromo__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body h1 {
      font-size: 15px; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .right, body .ui-dialog.loyaltyModal .loyaltyPromo__body .left {
      float: none;
      width: 100%;
      padding: 0;
      margin-bottom: 20px;
      min-height: auto; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .right {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .left {
      -webkit-box-ordinal-group: 1;
          -ms-flex-order: 0;
              order: 0;
      text-align: center; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .wide {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      padding: 0; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body p {
      font-size: 14px;
      text-align: center; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .couponcode {
      font-size: 15px; }
    body .ui-dialog.loyaltyModal .loyaltyPromo__body .button-fancy-large {
      font-size: 15px; }
  body .ui-dialog.loyaltyModal .verticalAlign__wrap {
    min-height: auto; }
    body .ui-dialog.loyaltyModal .verticalAlign__wrap:before {
      min-height: auto; }
  #accountcreation-join-loyalty {
    border: none;
    background: #f8f8f8;
    padding: 50px 20px; }
    #accountcreation-join-loyalty > p:first-child {
      text-transform: none;
      font-size: 25px; }
    #accountcreation-join-loyalty .custom-checkbox li {
      margin: 0 4px; }
      #accountcreation-join-loyalty .custom-checkbox li label {
        position: inherit;
        font-size: 23px;
        padding: 10px 16px;
        color: #666;
        border-color: #707070;
        font-weight: 600; }
      #accountcreation-join-loyalty .custom-checkbox li input:checked + label {
        color: #fff; }
    #accountcreation-join-loyalty .joinLoyalty__notice {
      font-size: 21px;
      padding-top: 20px; }
    #accountcreation-join-loyalty .joinLoyalty__cols--left,
    #accountcreation-join-loyalty .joinLoyalty__cols--right {
      float: none;
      width: 100%;
      font-size: 21px; }
    #accountcreation-join-loyalty .joinLoyalty__cols--left {
      color: #666; }
    #accountcreation-join-loyalty .joinLoyalty__cols--right {
      margin-top: 10px; }
  #RegistrationForm .birthday select {
    height: 70px;
    padding: 5px 20px;
    background-position: calc(100% - 20px);
    background-color: #f8f8f8;
    line-height: normal;
    margin-left: 0 !important;
    margin-right: 3% !important; }
    #RegistrationForm .birthday select:first-child {
      width: 22% !important; }
    #RegistrationForm .birthday select:last-child {
      margin-right: 0 !important; }
  .label-no-placeholder {
    display: block;
    text-transform: initial;
    font-size: 21px;
    width: auto;
    float: left;
    padding: 0;
    line-height: normal;
    margin-bottom: 10px;
    position: initial; }
  body .ui-dialog.loyaltyModal {
    left: 50% !important;
    top: 0%;
    -webkit-transform: translate(-50%);
            transform: translate(-50%);
    width: 100% !important; }
    body .ui-dialog.loyaltyModal[aria-labelledby='ui-dialog-title-convert-points-modal'], body .ui-dialog.loyaltyModal[aria-labelledby='ui-dialog-title-1'], body .ui-dialog.loyaltyModal[aria-labelledby='ui-dialog-title-loyalty-welcomeback-bonus-popin'] {
      top: 50% !important;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    body .ui-dialog.loyaltyModal .form-row span.error {
      display: inline; }
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_day.input-select_day,
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_month.input-select-month,
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_year.input-select_year {
      padding: 20px;
      background: #ededed;
      border: 0;
      font-size: 13px !important;
      color: #7f7f7f; }
      body .ui-dialog.loyaltyModal .form-row #profile_birthday_day.input-select_day.error,
      body .ui-dialog.loyaltyModal .form-row #profile_birthday_month.input-select-month.error,
      body .ui-dialog.loyaltyModal .form-row #profile_birthday_year.input-select_year.error {
        border: 2px solid #FF0000;
        border-radius: 3px; }
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_day_friend.input-select_day,
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_month_friend.input-select-month,
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_year_friend.input-select_year {
      width: 30% !important;
      padding: 20px !important;
      display: inline-block !important;
      margin-right: calc(4% / 3) !important;
      font-size: 13px !important;
      color: #7f7f7f;
      text-transform: uppercase !important; }
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_month_friend.input-select-month {
      width: 33.5% !important; }
    body .ui-dialog.loyaltyModal .form-row #profile_birthday_month.input-select-month {
      width: 33.5% !important; }
    body .ui-dialog.loyaltyModal .lovableModal__row--sex,
    body .ui-dialog.loyaltyModal .lovableModal__row--date {
      width: 100%; }
    body .ui-dialog.loyaltyModal .lovableModal__row--sex {
      width: 100%;
      text-align: right; }
      body .ui-dialog.loyaltyModal .lovableModal__row--sex > span {
        display: block;
        float: left;
        padding: 20px 20px 20px 0;
        margin: 0 0 -50px 0; }
      body .ui-dialog.loyaltyModal .lovableModal__row--sex .form-row {
        margin-top: 0;
        text-align: right; }
      body .ui-dialog.loyaltyModal .lovableModal__row--sex .input-radio li {
        margin: 0 0 0 15px; }
    body .ui-dialog.loyaltyModal .lovableModal__province select {
      font-size: 13px;
      padding: 20px;
      width: 100%;
      color: #7f7f7f; }
  .loyalty-points {
    margin: 0;
    display: inline-block;
    font-size: 20px;
    height: 55px;
    width: 55px;
    vertical-align: middle;
    padding-top: 11px;
    font-weight: bold; }
    .loyalty-points span {
      font-size: 13px; }
  .cart-coupon-code label {
    width: 45%; }
  /* ############################################################################
    NOT FOUND
############################################################################ */
  .keeper.p-404 {
    text-align: center;
    padding: 80px 15px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 450px;
    max-width: calc(100% - 30px);
    margin: 0 auto;
    overflow: hidden; }
  .p-404 .nohits-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0; }
    .p-404 .nohits-background img {
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      position: absolute;
      top: 0;
      left: 50%;
      width: auto;
      height: auto;
      height: 450px;
      z-index: 0; }
  .p-404 .nohits-searchform {
    position: relative;
    z-index: 10;
    margin-top: 170px; }
    .p-404 .nohits-searchform label {
      text-align: center;
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      display: block; }
    .p-404 .nohits-searchform .search-icon--wrap {
      margin: 25px auto 15px auto;
      max-width: 80%;
      position: relative; }
      .p-404 .nohits-searchform .search-icon--wrap:after {
        content: "";
        position: absolute;
        background-image: url("../images/interface/404__icon--search.png");
        height: 30px;
        width: 30px;
        top: 10px;
        left: 15px;
        z-index: 50; }
    .p-404 .nohits-searchform input[type="text"], .p-404 .nohits-searchform textarea {
      -webkit-box-sizing: content-box;
              box-sizing: content-box;
      font-size: 15px;
      border: 0;
      padding: 1em 1em 1em 4em;
      display: block;
      text-align: left;
      width: calc(100% - 5em);
      height: auto; }
      .p-404 .nohits-searchform input[type="text"]:-ms-input-placeholder, .p-404 .nohits-searchform textarea:-ms-input-placeholder {
        color: #949494;
        font-size: 15px; }
      .p-404 .nohits-searchform input[type="text"]::-ms-input-placeholder, .p-404 .nohits-searchform textarea::-ms-input-placeholder {
        color: #949494;
        font-size: 15px; }
      .p-404 .nohits-searchform input[type="text"]:-ms-input-placeholder, .p-404 .nohits-searchform input[type="text"]::webkit-input-placeholder, .p-404 .nohits-searchform input[type="text"]::placeholder, .p-404 .nohits-searchform textarea:-ms-input-placeholder, .p-404 .nohits-searchform textarea::webkit-input-placeholder, .p-404 .nohits-searchform textarea::placeholder {
        color: #949494;
        font-size: 15px; }
  #mes-coups td {
    padding: 0; }
    #mes-coups td.item-price, #mes-coups td.item-availability {
      display: none; }
    #mes-coups td.item-color {
      text-transform: none; }
  #mes-coups td.item-actions .button-fancy-large {
    color: #000;
    font-size: 15px;
    font-family: "Interstate", helvetica, arial, sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    border: none;
    border-bottom: 1px solid #000;
    padding: 0 0 5px 0;
    background: none;
    border-radius: 0;
    width: auto; }
  #mes-coups table.item-list tr {
    border-bottom: none;
    margin-bottom: 40px; }
  #mes-coups > p {
    display: none; }
  #mes-coups .list-table-header {
    padding: 30px 15px !important; }
  #mes-coups .delete-item {
    content: " ";
    display: inline-block;
    position: relative;
    vertical-align: middle;
    background-image: url(../images/icon-sprite-lovable.png);
    background-position: -454px -32px;
    background-repeat: no-repeat;
    width: 20px;
    height: 24px;
    border: none; } }
  @media screen and (max-width: 959px) and (-webkit-min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-device-pixel-ratio: 1.5), screen and (max-width: 959px) and (min-resolution: 144dpi) {
    #mes-coups .delete-item {
      background-image: url(../images/icon-sprite-2x-lovable.png);
      background-position: -454px -32px;
      background-repeat: no-repeat;
      width: 20px;
      height: 24px;
      background-size: 476px 427px; } }

@media screen and (max-width: 959px) {
  .list-table-header {
    border-top: 1px solid #ededed;
    margin-top: 50px; }
  .wishlist-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0;
    padding: 0; }
  .send-to-friend {
    margin-right: 70px; }
  /* ############################################################################
    CART PAGE RESPONSIVE
############################################################################ */
  .checkoutStepper {
    list-style: none;
    padding: 50px 0 0;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    position: relative;
    margin: 0 60px; } }
  @media screen and (max-width: 959px) and (max-width: 959px) {
    .checkoutStepper .text {
      display: none; } }

@media screen and (max-width: 959px) {
    .checkoutStepper::after {
      content: "";
      position: absolute;
      width: 100%;
      border-bottom: 1px solid #d9d9d9; }
    .checkoutStepper li {
      padding-top: 43px;
      position: relative;
      font-family: "Interstate", helvetica, arial, sans-serif;
      font-size: 16px;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      text-align: center; }
      .checkoutStepper li a {
        color: inherit;
        text-decoration: none; }
      .checkoutStepper li a::before,
      .checkoutStepper li span::before {
        content: "";
        position: absolute;
        top: -22px;
        width: 42px;
        height: 41px;
        border-radius: 50%;
        border: 2px solid #d9d9d9;
        background: #fff;
        font-size: 20px;
        line-height: 43px;
        text-align: center;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        z-index: 2; }
      .checkoutStepper li a::after,
      .checkoutStepper li span::after {
        content: "";
        position: absolute;
        display: block;
        height: 10px;
        background: #fff;
        top: -5px;
        z-index: 1; } }
      @media screen and (max-width: 959px) and (max-width: 959px) {
        .checkoutStepper li a::after,
        .checkoutStepper li span::after {
          background: none; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li.current a,
      .checkoutStepper li.current span, .checkoutStepper li.previous a,
      .checkoutStepper li.previous span {
        color: #d90f3b; }
        .checkoutStepper li.current a::before,
        .checkoutStepper li.current span::before, .checkoutStepper li.previous a::before,
        .checkoutStepper li.previous span::before {
          border-color: #d90f3b; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .checkoutStepper li.current span::after {
        content: "";
        position: relative;
        border-bottom: 1px solid #d90f3b;
        top: -53px;
        left: 0 !important;
        width: calc(50% + 22px) !important; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li.previous::after {
        content: "";
        position: relative;
        top: -62px;
        left: 50%;
        border-bottom: 1px solid #d90f3b;
        z-index: 1; } }
      @media screen and (max-width: 959px) and (max-width: 959px) {
        .checkoutStepper li.previous::after {
          top: -43px;
          left: 0;
          width: 128%; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li.previous a::before,
      .checkoutStepper li.previous span::before {
        background: #d90f3b;
        color: #fff;
        content: url(../images/stepper-check.svg) !important; }
      .checkoutStepper li.previous a:hover span::before, .checkoutStepper li.previous a:focus span::before {
        background: #fff;
        color: #d90f3b; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .checkoutStepper li.previous a:hover::before, .checkoutStepper li.previous a:focus::before {
        background: #fff;
        color: #d90f3b; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li:hover a, .checkoutStepper li:focus a {
        color: #d90f3b; }
        .checkoutStepper li:hover a::before, .checkoutStepper li:focus a::before {
          border-color: #d90f3b; }
      .checkoutStepper li:nth-child(1) a::after,
      .checkoutStepper li:nth-child(1) span::after {
        width: calc(50% + 25px);
        left: 0; }
      .checkoutStepper li:nth-child(1) a::before,
      .checkoutStepper li:nth-child(1) span::before {
        content: "1"; }
      .checkoutStepper li:nth-child(1).previous a:hover span::before, .checkoutStepper li:nth-child(1).previous a:focus span::before {
        content: "1" !important; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .checkoutStepper li:nth-child(1).previous a:hover::before, .checkoutStepper li:nth-child(1).previous a:focus::before {
        content: "1" !important; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li:nth-child(2) a::after,
      .checkoutStepper li:nth-child(2) span::after {
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        width: 50px; }
      .checkoutStepper li:nth-child(2) a::before,
      .checkoutStepper li:nth-child(2) span::before {
        content: "2"; }
      .checkoutStepper li:nth-child(2).previous a:hover span::before, .checkoutStepper li:nth-child(2).previous a:focus span::before {
        content: "2" !important; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .checkoutStepper li:nth-child(2).previous a:hover::before, .checkoutStepper li:nth-child(2).previous a:focus::before {
        content: "2" !important; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li:nth-child(3) a::after,
      .checkoutStepper li:nth-child(3) span::after {
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        width: 50px; }
      .checkoutStepper li:nth-child(3) a::before,
      .checkoutStepper li:nth-child(3) span::before {
        content: "3"; }
      .checkoutStepper li:nth-child(3).previous a:hover span::before, .checkoutStepper li:nth-child(3).previous a:focus span::before {
        content: "3" !important; } }
    @media screen and (max-width: 959px) and (max-width: 959px) {
      .checkoutStepper li:nth-child(3).previous a:hover::before, .checkoutStepper li:nth-child(3).previous a:focus::before {
        content: "3" !important; } }

@media screen and (max-width: 959px) {
      .checkoutStepper li:nth-child(4) a::after,
      .checkoutStepper li:nth-child(4) span::after {
        width: calc(50% + 25px);
        right: 0; }
      .checkoutStepper li:nth-child(4) a::before,
      .checkoutStepper li:nth-child(4) span::before {
        content: "4"; }
  .checkout-header .checkoutStepper {
    padding-top: 20px; }
  .main-wrapper-cart .container-wrapper {
    padding: 0 !important; }
    .main-wrapper-cart .container-wrapper .cart-heading, .main-wrapper-cart .container-wrapper .cart-left {
      padding: 0 15px; }
  .cart-banner {
    display: block;
    padding: 0 10px;
    font-size: 16px;
    margin: 0; }
  .cart-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .cart-table.item-list {
    margin: 0; }
    .cart-table.item-list .section-line {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      position: relative;
      min-height: 160px;
      padding: 20px 0; }
      .cart-table.item-list .section-line:last-child {
        border-bottom: none; }
      .cart-table.item-list .section-line > div {
        border: none; }
        .cart-table.item-list .section-line > div.item-image {
          width: 140px;
          height: 100%;
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1;
          position: absolute;
          left: 0; }
          .cart-table.item-list .section-line > div.item-image img {
            width: 140px;
            border-radius: 0; }
        .cart-table.item-list .section-line > div.item-details {
          -webkit-box-ordinal-group: 3;
              -ms-flex-order: 2;
                  order: 2;
          width: calc(100% - 150px);
          margin-left: 150px;
          padding: 0 0 10px; }
          .cart-table.item-list .section-line > div.item-details .product-list-item {
            max-height: inherit; }
            .cart-table.item-list .section-line > div.item-details .product-list-item .display-r {
              font-size: 15px; }
          .cart-table.item-list .section-line > div.item-details .name {
            padding-right: 25px; }
            .cart-table.item-list .section-line > div.item-details .name a {
              font-size: 18px;
              display: -webkit-box;
              -webkit-line-clamp: 2;
              -webkit-box-orient: vertical;
              max-height: 42px;
              overflow: hidden; }
        .cart-table.item-list .section-line > div.item-price {
          display: none; }
        .cart-table.item-list .section-line > div.item-total {
          position: inherit;
          bottom: auto;
          margin-left: 150px;
          -webkit-box-ordinal-group: 4;
              -ms-flex-order: 3;
                  order: 3;
          width: calc(100% - 150px);
          text-align: left;
          padding: 0 0 10px; }
          .cart-table.item-list .section-line > div.item-total .price-promotion {
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
                -ms-flex-direction: row;
                    flex-direction: row;
            -webkit-box-pack: start;
                -ms-flex-pack: start;
                    justify-content: start; }
            .cart-table.item-list .section-line > div.item-total .price-promotion .price-sales {
              font-size: 20px; }
            .cart-table.item-list .section-line > div.item-total .price-promotion .price-standard {
              font-size: 15px; }
            .cart-table.item-list .section-line > div.item-total .price-promotion .dynamic-discount {
              font-size: 16px; }
          .cart-table.item-list .section-line > div.item-total .cart-loyalty-points span {
            font-size: 15px; }
            .cart-table.item-list .section-line > div.item-total .cart-loyalty-points span::before {
              width: 20px;
              height: 15px;
              background-size: 80%; }
        .cart-table.item-list .section-line > div.color {
          margin-left: 150px;
          -webkit-box-ordinal-group: 5;
              -ms-flex-order: 4;
                  order: 4;
          width: calc(100% - 150px);
          padding: 0 0 10px; }
          .cart-table.item-list .section-line > div.color img {
            width: 30px;
            height: 30px; }
        .cart-table.item-list .section-line > div.size {
          -webkit-box-ordinal-group: 6;
              -ms-flex-order: 5;
                  order: 5;
          margin-left: 150px;
          width: calc((95% - 150px) / 2); }
        .cart-table.item-list .section-line > div .size-select, .cart-table.item-list .section-line > div .quantity-select {
          width: 100%;
          height: 50px;
          font-size: 18px;
          background-position: calc(100% - 15px);
          padding-right: 35px; }
        .cart-table.item-list .section-line > div.item-quantity {
          -webkit-box-ordinal-group: 7;
              -ms-flex-order: 6;
                  order: 6;
          margin-left: auto;
          width: calc((95% - 150px) / 2);
          border: none; }
          .cart-table.item-list .section-line > div.item-quantity .item-quantity-area {
            width: 100%; }
            .cart-table.item-list .section-line > div.item-quantity .item-quantity-area .quantity-select {
              width: 100%; }
        .cart-table.item-list .section-line > div.remove-item {
          position: absolute;
          right: 0;
          top: 0; }
  .cart-table.discount-table {
    margin: 0; }
  .cart-sidebar {
    width: 100%;
    min-width: inherit;
    max-width: inherit;
    padding: 20px; }
    .cart-sidebar .cart-sticky-sidebar {
      position: inherit;
      top: inherit; }
    .cart-sidebar label,
    .cart-sidebar .coupon-text,
    .cart-sidebar #add-coupon {
      font-size: 18px; }
    .cart-sidebar .cart-subtotal .label, .cart-sidebar .cart-subtotal .value,
    .cart-sidebar .cart-order-totals .label,
    .cart-sidebar .cart-order-totals .value {
      font-size: 18px; }
    .cart-sidebar .shippingMethods .title,
    .cart-sidebar .shippingMethods .shippingMsg,
    .cart-sidebar .shippingMethods .shippingMethodsListArea,
    .cart-sidebar .shippingMethods .shippingMethodsListSubTotal {
      font-size: 18px; }
    .cart-sidebar .discount-table .section-line > div, .cart-sidebar .discount-table .section-line .title, .cart-sidebar .discount-table .section-line .desc, .cart-sidebar .discount-table .section-line .label {
      font-size: 18px; }
    .cart-sidebar .cart-coupon-code {
      padding: 0;
      border: none;
      margin: 0; }
      .cart-sidebar .cart-coupon-code label {
        padding-bottom: 10px; }
      .cart-sidebar .cart-coupon-code .coupon-text {
        height: 50px;
        line-height: 50px; }
    .cart-sidebar .shippingandtotals {
      padding: 0; }
    .cart-sidebar .shipping-methods {
      margin: 0; }
      .cart-sidebar .shipping-methods .shippingMethodsListArea li .shipping-radio-select {
        background: none;
        border: none; }
      .cart-sidebar .shipping-methods .shippingMethodsListArea li .shipping-text-content {
        border: none;
        padding: 0;
        font-size: 16px; }
        .cart-sidebar .shipping-methods .shippingMethodsListArea li .shipping-text-content .standard-shipping {
          vertical-align: top; }
      .cart-sidebar .shipping-methods .remain, .cart-sidebar .shipping-methods .shipping-time {
        font-size: 12px; }
    .cart-sidebar .cart-loyalty-points {
      margin: 0 -20px; }
  .cart-actions .terms .form-row {
    padding: 0;
    margin: 0; }
    .cart-actions .terms .form-row input[type=checkbox] {
      margin: 0; }
    .cart-actions .terms .form-row label {
      float: right;
      font-size: 14px;
      line-height: 17px; }
    .cart-actions .terms .form-row span.error {
      float: left; }
  .cart-actions .cart-action-checkout fieldset button {
    width: auto; }
  .pt_cart .cart-recoproduct-container {
    width: 100%;
    padding: 0 0 30px;
    margin: 0; }
  .pt_cart .complete-the-set .column.color li {
    display: inline-block;
    vertical-align: middle;
    list-style: none;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    width: 36px;
    height: 36px;
    -webkit-transition: all 150ms ease-in-out;
    transition: all 150ms ease-in-out;
    overflow: visible;
    border-radius: 100%;
    margin: 0 3px; }
    .pt_cart .complete-the-set .column.color li[data-color="Bianco"].selected, .pt_cart .complete-the-set .column.color li[data-color="Bianco"]:hover {
      opacity: 1;
      height: 36px;
      width: 36px; }
      .pt_cart .complete-the-set .column.color li[data-color="Bianco"].selected .swatchanchor, .pt_cart .complete-the-set .column.color li[data-color="Bianco"]:hover .swatchanchor {
        border: 1px solid #ccc; }
      .pt_cart .complete-the-set .column.color li[data-color="Bianco"].selected:before, .pt_cart .complete-the-set .column.color li[data-color="Bianco"]:hover:before {
        opacity: 1; }
    .pt_cart .complete-the-set .column.color li[data-color="Bianco"]:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: 2px solid #ccc;
      border-radius: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      z-index: 2;
      pointer-events: none;
      opacity: 0; }
    .pt_cart .complete-the-set .column.color li[data-color="Bianco"] .swatchanchor {
      border: 1px solid #ccc;
      z-index: 1;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      height: 28px;
      width: 28px;
      padding: 0; }
      .pt_cart .complete-the-set .column.color li[data-color="Bianco"] .swatchanchor:after {
        content: none; }
    .pt_cart .complete-the-set .column.color li:after {
      content: "";
      position: absolute;
      display: block;
      background: transparent;
      height: 38px;
      width: 38px;
      border: 5px solid #fff;
      top: 50%;
      left: 50%;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      border-radius: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      -webkit-transition: all 150ms ease-in-out;
      transition: all 150ms ease-in-out;
      pointer-events: none;
      z-index: 20; }
    .pt_cart .complete-the-set .column.color li.selected a.swatchanchor, .pt_cart .complete-the-set .column.color li:hover a.swatchanchor {
      border: 0; }
    .pt_cart .complete-the-set .column.color li.selected:after, .pt_cart .complete-the-set .column.color li:hover:after {
      border: 3px solid #fff;
      height: 34px;
      width: 34px; }
    .pt_cart .complete-the-set .column.color li:hover {
      opacity: 0.8; }
    .pt_cart .complete-the-set .column.color li span.swatchanchor {
      cursor: default;
      border: 1px solid #fff; }
    .pt_cart .complete-the-set .column.color li a.swatchanchor {
      display: block;
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
      position: absolute;
      border: 0; }
    .pt_cart .complete-the-set .column.color li.selected-value {
      display: none; }
    .pt_cart .complete-the-set .column.color li a.swatchanchor {
      margin: 0;
      background-size: 100% !important; }
  .confirmationPage {
    padding: 130px 50px; }
  /* ############################################################################
    CART PAYMENT PAGE RESPONSIVE
############################################################################ */
  .payment-page .mini-cart-attributes {
    line-height: 1.1em; }
  .payment-page .mini-cart-pricing {
    font-size: 25px; }
    .payment-page .mini-cart-pricing .price-promotion {
      float: left; }
      .payment-page .mini-cart-pricing .price-promotion .price-sales, .payment-page .mini-cart-pricing .price-promotion .price-standard {
        font-size: 20px; }
  .payment-card-info {
    padding: 30px 15px 0; }
  .payment-method-creditcard {
    padding-right: 0; }
  .form-row > input#dwfrm_billing_paymentMethods_creditCard_number {
    width: 100% !important; }
  .payment-method-creditcard .form-row .scadenza-label {
    margin-top: -20px; }
  .payment-card-info .form-row .card-type-options > label img {
    height: 45px;
    width: auto;
    min-width: auto; }
  .payment-card-info .form-row label span,
  .payment-card-info .form-row label span.required-indicator {
    display: inline-block; }
  .payment-card-info .form-row label span {
    color: #737373; }
  .payment-card-info .form-row input#dwfrm_billing_paymentMethods_creditCard_number, .payment-card-info .form-row input#dwfrm_billing_paymentMethods_creditCard_owner, .payment-card-info .form-row input#dwfrm_billing_paymentMethods_creditCard_cvn {
    width: 100% !important; }
  .payment-card-info .expires-date-dropdown {
    width: 100%; }
  .payment-methods-block {
    padding: 0; }
    .payment-methods-block .show-label span {
      font-weight: 600 !important; }
    .payment-methods-block .payment-card-form legend {
      margin: 0 0 20px; }
    .payment-methods-block .payment-card-form .pmf-PAYPAL {
      margin: 0;
      height: 50px; }
    .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .expires-date-dropdown label {
      display: none; }
    .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .scadenza-label {
      display: block;
      text-transform: initial;
      font-size: 21px;
      width: auto;
      float: left;
      padding: 0;
      line-height: normal;
      margin: 0;
      padding-top: 5px !important;
      position: initial; }
    .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .dialog-required {
      text-align: left;
      margin: 0;
      padding: 0 15px;
      font-size: 21px;
      font-weight: 500; }
      .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .dialog-required.no-padding {
        padding: 0; }
      .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .dialog-required .required-indicator {
        color: #666; }
      .payment-methods-block .payment-card-form #PaymentMethod_CREDIT_CARD .dialog-required em {
        font-family: "Interstate", helvetica, arial, sans-serif;
        font-weight: 500;
        color: #666;
        margin-left: 5px; }
  .toute-securite {
    margin: 0; }
  .recapitulatif-commande {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    .recapitulatif-commande .payment-total-pricing {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
      .recapitulatif-commande .payment-total-pricing .ptp-label {
        padding: 0 20px 0 15px;
        font-size: 21px; }
        .recapitulatif-commande .payment-total-pricing .ptp-label.ptp-prixtotal {
          padding: 10px 20px 10px 15px; }
    .recapitulatif-commande .rc-title {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      padding: 0 15px 25px; }
      .recapitulatif-commande .rc-title > p.billing-summary {
        text-transform: uppercase;
        font-size: 21px; }
    .recapitulatif-commande .mini-cart-name h5 {
      font-size: 19px; }
    .recapitulatif-commande .rc-products {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3;
      padding: 0 15px; }
    .recapitulatif-commande .livraison-info {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4; }
      .recapitulatif-commande .livraison-info > div {
        padding: 30px 15px; }
      .recapitulatif-commande .livraison-info li {
        font-size: 18px; }
      .recapitulatif-commande .livraison-info .li-title {
        text-transform: uppercase;
        font-size: 21px; }
      .recapitulatif-commande .livraison-info .rc-modifier {
        top: 28px; }
    .recapitulatif-commande .rc-modifier {
      right: 15px; }
  /* ############################################################################
    CART ADDRESS PAGE DESKTOP
############################################################################ */
  .checkout-shipping legend {
    padding: 30px 5px 0 5px; }
  .checkout-shipping legend,
  .payment-card-form legend {
    font-size: 30px;
    text-transform: uppercase;
    text-align: left;
    border-bottom: 1px solid #ededed;
    padding: 0 0 25px !important;
    margin: 0 15px 20px; }
  .checkout-shipping .select-address select {
    -webkit-appearance: menulist;
    max-width: 100% !important;
    height: 70px !important;
    min-height: 70px;
    font-size: 20px;
    background-color: #f8f8f8;
    border-color: #f8f8f8; }
  .shippingAddress {
    padding: 0 15px; }
  .checkout-shipping .form-caption {
    margin-top: 10px;
    margin-bottom: 40px !important;
    font-size: 21px;
    font-weight: 500;
    font-family: "Interstate", helvetica, arial, sans-serif;
    color: #666; }
  .checkout-shipping .checkboxLine.form-indent {
    margin: 10px 15px; }
  .checkout-shipping .shippingMethodsListArea ul li .icon {
    background: rgba(255, 255, 255, 0);
    width: 75px; }
    .checkout-shipping .shippingMethodsListArea ul li .icon > img {
      margin: 0 auto;
      display: block; }
  .checkout-shipping div#shipping-method-list {
    margin-bottom: 50px;
    margin-left: 15px;
    margin-right: 15px; }
  .checkout-shipping .shippingMethodsListSubTotal-block {
    margin-left: 3px;
    margin-right: 3px; }
  .checkout-shipping.address .form-row.form-row-button button {
    width: 280px; }
  .checkout-shipping .form-row.country select {
    min-width: auto !important; } }

@media screen and (max-width: 959px) and (max-width: 959px) {
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .salutation-label,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .salutation-label,
  #PaymentMethod_CREDIT_CARD .salutation-label {
    display: none !important; } }

@media screen and (max-width: 959px) {
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row,
  #PaymentMethod_CREDIT_CARD .form-row {
    position: relative; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row label,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row label,
    #PaymentMethod_CREDIT_CARD .form-row label {
      width: calc(100% - 20px) !important;
      position: absolute;
      left: 20px;
      bottom: 0;
      top: 21px;
      padding: 0;
      line-height: 30px;
      font-size: 20px;
      z-index: 1;
      color: #737373; }
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row label span,
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row label span,
      #PaymentMethod_CREDIT_CARD .form-row label span {
        width: auto;
        font-size: 20px;
        text-align: left;
        position: initial; }
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row label .required-indicator,
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row label .required-indicator,
      #PaymentMethod_CREDIT_CARD .form-row label .required-indicator {
        color: #d90f3b;
        padding-left: 5px;
        font-weight: 500; }
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row label[for="dwfrm_singleshipping_addressList"], .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row label[for="dwfrm_singleshipping_billingAddress_addressList"],
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row label[for="dwfrm_singleshipping_addressList"],
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row label[for="dwfrm_singleshipping_billingAddress_addressList"],
      #PaymentMethod_CREDIT_CARD .form-row label[for="dwfrm_singleshipping_addressList"],
      #PaymentMethod_CREDIT_CARD .form-row label[for="dwfrm_singleshipping_billingAddress_addressList"] {
        width: auto !important;
        text-transform: initial;
        font-size: 21px;
        padding: 0;
        line-height: normal;
        margin-bottom: 10px;
        position: initial !important;
        height: auto; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row .civility label,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row .civility label,
    #PaymentMethod_CREDIT_CARD .form-row .civility label {
      width: auto !important;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-right: 10px;
      position: initial; }
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .form-row .civility label span,
      .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .form-row .civility label span,
      #PaymentMethod_CREDIT_CARD .form-row .civility label span {
        padding-left: 5px; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress #billingAddress,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress #billingAddress,
  #PaymentMethod_CREDIT_CARD #billingAddress {
    margin: 15px 15px 30px 15px; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress #billingAddress legend,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress #billingAddress legend,
    #PaymentMethod_CREDIT_CARD #billingAddress legend {
      padding: 30px 0 0 0;
      margin-left: 0;
      margin-right: 0; }
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress #billingAddress .checkboxLine.form-indent,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress #billingAddress .dialog-required,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress #billingAddress .checkboxLine.form-indent,
    .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress #billingAddress .dialog-required,
    #PaymentMethod_CREDIT_CARD #billingAddress .checkboxLine.form-indent,
    #PaymentMethod_CREDIT_CARD #billingAddress .dialog-required {
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding: 0; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .half-size-field .form-row label,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .half-size-field .form-row label,
  #PaymentMethod_CREDIT_CARD .half-size-field .form-row label {
    width: calc(40% - 30px); }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .half-size-field span.error,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .addressForm span.error,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .addressForm .form-row.country span.error,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .half-size-field span.error,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .addressForm span.error,
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .addressForm .form-row.country span.error,
  #PaymentMethod_CREDIT_CARD .half-size-field span.error,
  #PaymentMethod_CREDIT_CARD .addressForm span.error,
  #PaymentMethod_CREDIT_CARD .addressForm .form-row.country span.error {
    margin: 0 !important; }
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .half-size-field span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .addressForm span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .shippingAddress .addressForm .form-row.country span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .half-size-field span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .addressForm span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  .pt_checkout #dwfrm_singleshipping_shippingAddress.checkout-shipping .billingAddress .addressForm .form-row.country span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  #PaymentMethod_CREDIT_CARD .half-size-field span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  #PaymentMethod_CREDIT_CARD .addressForm span[for="dwfrm_singleshipping_billingAddress_addressFields_country"],
  #PaymentMethod_CREDIT_CARD .addressForm .form-row.country span[for="dwfrm_singleshipping_billingAddress_addressFields_country"] {
    margin: 0 !important;
    white-space: nowrap;
    padding: 0; }
  .primary-content .service-pages-title {
    font-size: 28px;
    letter-spacing: 0.03em;
    padding-bottom: 20px;
    margin-top: 25px;
    margin-bottom: 0;
    border-bottom: 0; }
  .faq-sidebar {
    width: 100%;
    background: none; }
    .faq-sidebar ul {
      padding: 0; }
      .faq-sidebar ul li {
        margin: 0 -20px; }
        .faq-sidebar ul li a {
          font-size: 17px;
          border-left: 0;
          border-right: 0;
          text-align: center;
          padding: 14px 10px;
          font-weight: 600; }
          .faq-sidebar ul li a.active {
            position: relative;
            background: none;
            color: #fff;
            background: #000;
            z-index: 10;
            border-left: 0;
            border-right: 0; }
  .service-pages-content .keeper > .content-asset {
    width: 100%; }
  .faq-content {
    margin-top: 30px;
    width: 100%;
    background: none; }
    .faq-content.active {
      padding: 0; }
    .faq-content h2 {
      text-transform: uppercase; }
    .faq-content h2, .faq-content h3 {
      font-size: 28px; }
    .faq-content p, .faq-content ul, .faq-content ol, .faq-content li, .faq-content table, .faq-content td, .faq-content small {
      font-size: 18px; }
    .faq-content small {
      font-size: 15px; }
    .faq-content ol, .faq-content ul {
      padding: 0 20px 0 1em; }
  /*
* #ORDER-LIST
*/
  .order-history-list .odd {
    background: #ededed;
    margin-bottom: 10px; }
  .order-history-list .cell {
    text-align: right;
    padding-bottom: 10px;
    font-size: 20px; }
    .order-history-list .cell:last-child {
      padding-bottom: 0; }
  .order-history-list .order-history-item {
    padding: 20px 10px; }
  .order-history-list .links:not(.returnLink) {
    float: none;
    position: static; }
  .order-history-item {
    background: #ededed;
    margin-bottom: 10px; }
    .order-history-item .mobile-header {
      float: left; }
      .order-history-item .mobile-header .cell {
        text-align: left;
        font-size: 20px;
        text-transform: uppercase;
        color: #737373; }
  /*
* #ORDER-SUMMARY
*/
  .pt_account .primary-content h1,
  .pt_order .primary-content h1 {
    display: none; }
  .pt_order .item-list,
  .shippingandtotals,
  .pt_order h2.orderDetailsTitle,
  .pt_order .backToOrdersList,
  .ordersIntro,
  ul.search-result-items {
    padding-left: 15px;
    padding-right: 15px; }
  .ordersIntro p {
    font-size: 20px; }
  /*
* #RETURN-POPIN
*/
  body .ui-dialog.createReturn {
    padding: 30px 15px; }
  .return-title {
    text-align: left;
    padding: 0 0 30px;
    font-size: 16px;
    font-weight: 500; }
  #create-return {
    font-family: "Interstate", helvetica, arial, sans-serif; }
    #create-return tbody td {
      position: inherit;
      padding: 0;
      margin-bottom: 25px; }
      #create-return tbody td:before {
        font-family: "Interstate", helvetica, arial, sans-serif;
        font-size: 17px;
        display: block;
        position: static;
        top: 0;
        -webkit-transform: none;
                transform: none;
        width: auto;
        clear: both;
        padding: 0;
        margin-bottom: 20px; }
      #create-return tbody td.return-item-name {
        height: auto; }
        #create-return tbody td.return-item-name:after {
          content: '';
          clear: both; }
    #create-return .returnform {
      height: auto;
      font-size: 16px;
      background: #000;
      color: #fff;
      padding: 15px 70px;
      margin: 40px auto 25px; }
    #create-return select {
      font-size: 15px;
      padding: 20px;
      background: #fff;
      border: 1px solid #000;
      border-radius: 0; }
  body .ui-dialog.createReturn .ui-dialog-titlebar-close {
    right: 0;
    margin-top: 30px; }
    body .ui-dialog.createReturn .ui-dialog-titlebar-close span {
      display: block;
      font-size: 16px; }
    body .ui-dialog.createReturn .ui-dialog-titlebar-close:after {
      content: none; }
  #RegistrationForm span.error {
    position: relative;
    left: 0;
    top: 0; }
  #RegistrationForm label[for="profile_birthday"] {
    display: block;
    text-transform: initial;
    font-size: 21px;
    width: auto;
    float: left;
    padding: 0;
    line-height: normal;
    margin-bottom: 10px;
    position: initial; }
  #RegistrationForm .birthday-row span.error {
    position: absolute; }
  #RegistrationForm .registerNewsletter {
    padding: 0; }
    #RegistrationForm .registerNewsletter .dialog-required {
      left: 0; }
  #RegistrationForm .form-row.form-row-button,
  .pt_account .accountDatas .form-row.form-row-button {
    position: relative;
    text-align: center;
    margin-top: 20px; }
  #RegistrationForm label:not([for="dwfrm_login_rememberme"]),
  .pt_account .accountDatas label:not([for="dwfrm_login_rememberme"]) {
    vertical-align: top;
    width: 100%; }
  .whyRegister,
  .pt_account .personalDatas {
    position: relative;
    height: auto; }
  .whyRegister .mainAdvantages .text {
    width: auto;
    max-width: 100%;
    margin: 0; }
  .pt_account .personalDatas,
  .pt_account .loginDatas {
    height: auto; }
    .pt_account .personalDatas label span,
    .pt_account .loginDatas label span {
      vertical-align: top;
      padding-left: 0; }
  #RegistrationForm span.error,
  .pt_account .personalDatas span.error,
  .pt_account .loginDatas span.error {
    white-space: normal; }
  .pt_account .accountDatas.registerPage {
    padding: 0; }
    .pt_account .accountDatas.registerPage #RegistrationForm .personalDatas,
    .pt_account .accountDatas.registerPage #RegistrationForm .whyRegister,
    .pt_account .accountDatas.registerPage #RegistrationForm #accountcreation-loyalty-hidden,
    .pt_account .accountDatas.registerPage #RegistrationForm .newsletter-wrapper {
      padding-left: 15px;
      padding-right: 15px; }
    .pt_account .accountDatas.registerPage #RegistrationForm .title {
      font-size: 31px;
      line-height: normal; }
    .pt_account .accountDatas.registerPage #RegistrationForm .register-form-subtitle {
      font-size: 21px; }
    .pt_account .accountDatas.registerPage #RegistrationForm .dialog-required {
      text-align: right;
      margin: 40px 0; }
  .m-storelocator {
    padding: 20px 15px; }
  .m-storelocator__slider img {
    margin: 0 auto; }
  .m-storelocator__fieldset .c-storelocator__input,
  .m-storelocator__fieldset .c-storelocator__largeButton,
  .m-storelocator__fieldset .m-storelocator__checkbox,
  .m-storelocator__fieldset li,
  .m-storelocator__fieldset input[type="text"],
  .m-storelocator__fieldset input[type="checkbox"] {
    display: block;
    width: 100%;
    float: none;
    margin: 0 0 1em !important;
    font-size: 1.125rem; }
  .m-storelocator__fieldset .c-storelocator__smallButton {
    font-size: 1.125rem; }
  .m-storelocator__fieldset .c-storelocator__checkbox {
    width: 25px; }
  .m-storelocator__map .c-storelocator__img {
    display: none; }
  .m-storelocator__map .c-storelocator__img--isMobile {
    display: inline-block;
    vertical-align: middle;
    float: none;
    margin: 0 .5em 0 0; }
  .m-storelocator__map .c-storelocator__text {
    display: block;
    width: 100%;
    margin: 1em 0 3em; }
  .m-storelocator__map .c-storelocator__text--isTitle {
    margin: 0;
    display: inline-block;
    vertical-align: middle; }
  .m-storelocator__info {
    text-align: center; }
    .m-storelocator__info li {
      display: block;
      width: 100%;
      margin: 0 0 5em; }
    .m-storelocator__info .c-storelocator__text {
      font-size: 1.125rem; }
    .m-storelocator__info .c-storelocator__link {
      margin: 0; }
  .input-checkbox + label:before,
  .input-checkbox + a:before {
    width: 25px;
    height: 25px; }
  .styled-checkbox > input[type="checkbox"]:checked ~ label:after {
    width: 15px;
    height: 15px;
    margin-top: 0;
    left: 5px; }
  .storeHours {
    display: none; }
  .store-list li.store {
    width: 100%;
    float: none;
    display: block;
    margin: 0 0 6em;
    height: auto; }
  .pt_account .primary-content h1,
  .pt_order .primary-content h1 {
    margin: 0;
    font-size: 36px; }
  .pt_account .button-fancy-large,
  .pt_account button.button-fancy-large,
  .pt_account .button-fancy-large[type="button"],
  .pt_order .button-fancy-large,
  .pt_order button.button-fancy-large,
  .pt_order .button-fancy-large[type="button"] {
    font-size: 20px;
    height: auto;
    line-height: 20px; }
  .loginPage.accountLoginPage {
    padding: 0 15px;
    margin: 0; }
  .loginPage .section-header {
    font-size: 30px;
    margin-bottom: 20px; }
  .pt_account.accountLoginPage {
    padding: 0 20px 20px;
    margin: 0; }
  .pt_account .section-header,
  .pt_account #primary .registerPage h1 {
    font-size: 30px;
    margin-bottom: 20px; }
  .pt_account #primary .registerPage h1 {
    margin-top: 15px;
    margin-bottom: 10px; }
  .pt_account .col-1,
  .pt_account .col-2 {
    padding: 10px 0; }
  .pt_account .col-2 .login-box-content {
    min-height: 1px;
    padding: 10px 0;
    font-size: 20px; }
  .login-box-content,
  .pt_account .personalDatas,
  .pt_account .accountDatas {
    padding: 10px 0 0; }
    .login-box-content label,
    .pt_account .personalDatas label,
    .pt_account .accountDatas label {
      display: none; }
    .login-box-content #password-reset,
    .pt_account .personalDatas #password-reset,
    .pt_account .accountDatas #password-reset {
      margin: 0;
      float: none;
      font-size: 22px; }
  .accountMenu li {
    height: 60px;
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-bottom: 1px solid #ededed;
    text-align: center; }
    .accountMenu li:first-child {
      border-top: 1px solid #ededed; }
    .accountMenu li.current a {
      background: #000;
      color: #fff;
      font-size: 20px; }
    .accountMenu li a {
      font-size: 20px;
      line-height: 60px; }
      .accountMenu li a:before {
        display: none; }
  .pt_account .customSelectArea,
  .pt_order .customSelectArea {
    margin-left: 0; }
  .pt_account #primary,
  .pt_order #primary {
    padding: 0; }
    .pt_account #primary .page-title,
    .pt_order #primary .page-title {
      margin: 25px 18px;
      display: block; }
  .pt_account .addresses-content,
  .pt_order .addresses-content {
    padding: 0 10px 10px; }
    .pt_account .addresses-content .input-checkbox + label:before, .pt_account .addresses-content .input-checkbox + a:before,
    .pt_order .addresses-content .input-checkbox + label:before,
    .pt_order .addresses-content .input-checkbox + a:before {
      margin-top: -3px; }
  ul.address-list li {
    margin-bottom: 10px; }
    ul.address-list li.default a.makedefault:after {
      top: 7px; }
  ul.address-list a.makedefault {
    position: relative;
    left: 0;
    top: 0;
    margin-top: 20px; }
  ul.address-list a.edit {
    position: relative;
    left: 0;
    top: 0;
    margin-top: 20px; }
  ul.address-list .mini-address-title,
  ul.address-list .mini-address-name,
  ul.address-list .mini-address-location,
  ul.address-list a.edit,
  ul.address-list a.makedefault {
    font-size: 20px; }
  ul.address-list a.delete {
    -webkit-transform: scale(1.3);
            transform: scale(1.3); }
  body input[type="text"],
  body input[type="password"],
  body input[type='number'],
  .login-box-content input[type="text"],
  .login-box-content input[type="password"],
  .login-box-content input[type='number'],
  .pt_account .personalDatas input[type="text"],
  .pt_account .personalDatas input[type="password"],
  .pt_account .personalDatas input[type='number'],
  .pt_account .accountDatas input[type="text"],
  .pt_account .accountDatas input[type="password"],
  .pt_account .accountDatas input[type='number'],
  .newsletter-container .form-row input[type="text"],
  .newsletter-container .form-row input[type="password"],
  .newsletter-container .form-row input[type='number'],
  .newsletter-confirm .form-row input[type="text"],
  .newsletter-confirm .form-row input[type="password"],
  .newsletter-confirm .form-row input[type='number'] {
    font-size: 20px;
    height: 60px;
    border-radius: 0;
    border: none; }
  body .civility label,
  .login-box-content .civility label,
  .pt_account .personalDatas .civility label,
  .pt_account .accountDatas .civility label,
  .newsletter-container .form-row .civility label,
  .newsletter-confirm .form-row .civility label {
    font-size: 20px; }
  .login-box-content input[type=checkbox] {
    float: left; }
  .login-box-content .rememberMe label {
    font-size: 22px;
    padding-left: 10px; }
  .login-box-content .dialog-required {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
    font-size: 22px;
    font-weight: 500; }
  .birthday-row {
    float: none; }
  .birhtday-error {
    font-size: 21px; }
  .pt_account .accountDatas {
    padding: 0 15px; }
    .pt_account .accountDatas .intro {
      font-size: 20px;
      margin-bottom: 30px; }
    .pt_account .accountDatas .form-row-button {
      margin: 30px auto 40px;
      width: 100%;
      text-align: center;
      display: inline-block; }
  .ui-dialog .ui-dialog-titlebar-close span {
    font-size: 20px; }
  .dialog-content label {
    display: none; }
  .modifyAddress legend {
    font-size: 20px; }
  .modifyAddress .ui-dialog-content {
    padding: 30px 15px; }
  .modifyAddress .ui-icon-closethick {
    top: 0; }
  .dialog-content .form-row-button .button-fancy-large {
    margin-bottom: 10px; }
  .dialog-content .form-row-button button + .button-fancy-large {
    margin-left: 0; }
  .dialog-content .form-row-button .delete,
  .dialog-content .form-row-button .cancel {
    font-size: 28px; }
  .button-fancy-large {
    background: #000;
    color: #fff; }
  .pt_account .personalDatas {
    border-right: none; }
  .whyRegister,
  .pt_account .personalDatas {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 0; }
  .pt_account .personalDatas .dialog-required,
  .pt_account .registerPage .personalDatas .dialog-required {
    text-align: left; }
  .whyRegister .mainAdvantages .item:first-child:after {
    width: 20px;
    height: 20px;
    bottom: -10px;
    right: -10px; }
  .whyRegister .mainAdvantages .item .text {
    font-size: 18px; }
  .pt_account .accountDatas .form-row.birthday {
    text-align: left; }
  .pt_account .accountDatas.registerPage label {
    display: inline-block; }
  #dwfrm_login label:not([for="dwfrm_login_rememberme"]) {
    font-size: 20px; }
  input[type=checkbox] {
    width: 30px;
    height: 30px; } }

@media screen and (max-width: 959px) {
  .menu-open #widget-promo {
    margin-top: 72px !important;
    position: sticky !important; }
  .complete-the-set .products-set .product-set .color {
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
    width: 200px;
    height: 36px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLXJlc3BvbnNpdmUtbG92YWJsZS5jc3MiLCJfaGVscGVycy9fdmFyaWFibGVzLnNjc3MiLCJfaGVscGVycy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2plZXQvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2plZXQvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJfaGVscGVycy9fYnV0dG9ucy5zY3NzIiwiX2hlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsIl9icmVhZGNydW1iLnNjc3MiLCJfaGVscGVycy9faGVscGVycy5zY3NzIiwiX2hlbHBlcnMvX3JldGluYS1zcHJpdGVzLnNjc3MiLCJfaGVscGVycy9fc3ByaXRlLXZhcnMuc2NzcyIsIl9oZWxwZXJzL191dGlsaXR5LWJlbHQuc2NzcyIsIl9oZWxwZXJzL19zbGlkZXJzLnNjc3MiLCJfaGVscGVycy9fdG9vbHRpcC5zY3NzIiwiX2hlbHBlcnMvX3NlbGVjdC5zY3NzIiwiX2hlbHBlcnMvX21peGlucy5zY3NzIiwiX2JhemFhcnZvaWNlLnNjc3MiLCJzdHlsZS1yZXNwb25zaXZlLWxvdmFibGUuc2NzcyIsIl9kcmlsbGRvd24tcmVzcG9uc2l2ZS5zY3NzIiwiX2hlYWRlci1yZXNwb25zaXZlLnNjc3MiLCJfZm9vdGVyLXJlc3BvbnNpdmUuc2NzcyIsIl9nZW5lcmFsLXN0eWxlcy1yZXNwb25zaXZlLnNjc3MiLCJfcHJvZHVjdC1wYWdlLXJlc3BvbnNpdmUuc2NzcyIsIl9oZWxwZXJzL19jb2xvcnMuc2NzcyIsIl9jYXRlZ29yeS1wYWdlLXJlc3BvbnNpdmUuc2NzcyIsIl9uZXdzbGV0dGVyLXBhZ2UtcmVzcG9uc2l2ZS5zY3NzIiwiX2hvbWUtcmVzcG9uc2l2ZS5zY3NzIiwiX2xveWFsdHktcmVzcG9uc2l2ZS5zY3NzIiwicGFnZXMvX3AtNDA0LXJlc3BvbnNpdmUuc2NzcyIsInBhZ2VzL193aXNobGlzdC1yZXNwb25zaXZlLnNjc3MiLCJwYWdlcy9fcC1jYXJ0LXJlc3BvbnNpdmUuc2NzcyIsInBhZ2VzL19jaGVja291dC1zdGVwcGVyLnNjc3MiLCJwYWdlcy9fcC1jYXJ0LXBheW1lbnQtcmVzcG9uc2l2ZS5zY3NzIiwicGFnZXMvX3AtY2FydC1hZGRyZXNzLXJlc3BvbnNpdmUuc2NzcyIsInBhZ2VzL19wLWZhcS1yZXNwb25zaXZlLnNjc3MiLCJwYWdlcy9fb3JkZXJzLXJlc3BvbnNpdmUuc2NzcyIsInBhZ2VzL19wLWFjY291bnQtY3JlYXRpb24tcmVzcG9uc2l2ZS5zY3NzIiwicGFnZXMvX3Atc3RvcmVsb2NhdG9yLXJlc3BvbnNpdmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7OzhFREc4RTtBRUQ5RTtFQUNDO0lBRUMsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQ1Y7O0FBR0Y7RUFUQztJQVlDLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsaUJBQWtCLEVBQUEsRUFFbEI7O0FBY0Q7RUNMQyxXQ051RTtFRE92RSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLFdBQWtDO0VBRWhDLGVBQXdCO0VBQ3hCLGdCQUFpQyxFQUFBO0VBNlBuQztJQUNFLFdBQVc7SUFDWCxjQUFjO0lBQ2QsV0FBVyxFQUFBO0VBN09YO0lBQ0UsZ0JBQThELEVBQUE7O0FEbEJuRTtFQ1JDLFdDTnVFO0VET3ZFLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsWUFBa0M7RUFFaEMsZUFBd0I7RUFDeEIsZ0JBQWlDLEVBQUE7RUE2UG5DO0lBQ0UsV0FBVztJQUNYLGNBQWM7SUFDZCxXQUFXLEVBQUE7RUE3T1g7SUFDRSxnQkFBOEQsRUFBQTs7QURmbkU7RUNYQyxXQ051RTtFRE92RSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGFBQWtDO0VBRWhDLGVBQXdCO0VBQ3hCLGdCQUFpQyxFQUFBO0VBNlBuQztJQUNFLFdBQVc7SUFDWCxjQUFjO0lBQ2QsV0FBVyxFQUFBO0VBN09YO0lBQ0UsZ0JB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ZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBWQVJJQUJMRVNcbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKi9cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDkwJTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEyMDBweDsgfSB9XG5cbi5kLWNvbHVtbi1mdWxsIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xuICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gIC5kLWNvbHVtbi1mdWxsOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmQtY29sdW1uLWZ1bGw6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuXG4uZC1jb2x1bW4taGFsZiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgd2lkdGg6IDQ4LjUlO1xuICBtYXJnaW4tbGVmdDogMCU7XG4gIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgLmQtY29sdW1uLWhhbGY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZC1jb2x1bW4taGFsZjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi5kLWNvbHVtbi1xdWFydGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aWR0aDogMjIuNzUlO1xuICBtYXJnaW4tbGVmdDogMCU7XG4gIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgLmQtY29sdW1uLXF1YXJ0ZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZC1jb2x1bW4tcXVhcnRlcjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi5kLWNvbHVtbi10aHJlZS1xdWFydGVycyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgd2lkdGg6IDc0LjI1JTtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xuICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gIC5kLWNvbHVtbi10aHJlZS1xdWFydGVyczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5kLWNvbHVtbi10aHJlZS1xdWFydGVyczpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi8qICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBCVVRUT05TXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICovXG4uYnV0dG9uLWRlZiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTZweCAzNXB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtOyB9XG4gIC5idXR0b24tZGVmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTQxNDE0OyB9XG5cbi5idG4tcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxMDEwMTtcbiAgYm9yZGVyOiAycHggc29saWQgIzAxMDEwMTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTEyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICBwYWRkaW5nOiAxOXB4IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBpbmhlcml0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ0bi1wcmltYXJ5OmhvdmVyLCAuYnRuLXByaW1hcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICNkOTBmM2I7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDkwZjNiOyB9XG4gIC5idG4tcHJpbWFyeS5kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuYnRuLXByaW1hcnkuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgIC5idG4tcHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ0bi1wcmltYXJ5LmRpc2FibGVkOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMTAxMDE7XG4gICAgICBib3JkZXItY29sb3I6ICMwMTAxMDE7IH1cblxuLyogYnJlYWRjcnVtYnMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogYXV0bzsgfVxuICAuYnJlYWRjcnVtYi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7IH1cbiAgLmJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICM3MzczNzM7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1iIGE6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLnNlYXJjaC1yZXN1bHQtb3B0aW9ucyAuYnJlYWRjcnVtYiB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLmJyZWFkY3J1bWIgZGl2IHtcbiAgZGlzcGxheTogaW5saW5lOyB9XG5cbi5wcm9kdWN0LWRldGFpbCAuYnJlYWRjcnVtYiB7XG4gIG1hcmdpbjogMCAwIDAgMTVweDsgfVxuXG4uYnJlYWRjcnVtYiBsaSB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLmJyZWFkY3J1bWIgbGkgc3Bhbi5sYXN0LFxuLmJyZWFkY3J1bWIgYS5icmVhZGNydW1iLWxhc3Qge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4uYnJlYWRjcnVtYiBhLFxuLmJyZWFkY3J1bWIgc3BhbiB7XG4gIGNvbG9yOiAjNzM3MzczO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5icmVhZGNydW1iIHNwYW4uYnJlYWRjcnVtYi1sYXN0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwMTAxMDE7IH1cblxuLmJyZWFkY3J1bWIgc3Bhbi5icmVhZGNydW1iLXJlZmluZW1lbnQtbmFtZSB7XG4gIGNvbG9yOiAjMDEwMTAxOyB9XG5cbi5icmVhZGNydW1iLXJlZmluZWQtYnkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5icmVhZGNydW1iIGE6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00NTBweCAtMzY4cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiA3cHg7XG4gIGhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZC1zaXplOiA1MDFweCA0NjFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luOiAwIDVweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmJyZWFkY3J1bWIgaDEge1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luOiAyMHB4IDAgMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5icmVhZGNydW1iIGgxIC5wYWdpbmctY3VycmVudC1wYWdlIHtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLypcbi5icmVhZGNydW1iLXJlZmluZW1lbnQtbmFtZSB7XG4gICAgYmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC1zdHlsZTppdGFsaWM7XG59XG4qL1xuLmJyZWFkY3J1bWItcmVmaW5lbWVudC12YWx1ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuYS5icmVhZGNydW1iLXJlbGF4IHtcbiAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMCA1cHggMCAwOyB9XG5cbi5icmVhZGNydW1iLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuXG4uY3Jvc3NTZWxsVGl0bGUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIFxuICAuY3Jvc3NTZWxsVGl0bGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNHB4IC0zNzlweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAxNXB4OyB9XG4gICAgQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgXG4gICAgICAuY3Jvc3NTZWxsVGl0bGU6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTRweCAtMzc5cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIFxuICAgIC5jcm9zc1NlbGxUaXRsZSB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG4uY3VzdG9tU2VsZWN0IHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5jdXN0b21TZWxlY3RBcnJvdyB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtMzYycHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDlweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIEBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAuY3VzdG9tU2VsZWN0QXJyb3cge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTM2MnB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuLnF1YW50aXR5LXNlbGVjdGlvbl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBoZWlnaHQ6IDM3cHg7XG4gIHdpZHRoOiAzN3B4OyB9XG5cbi8qXG4qIERvdHRlZCBCb3JkZXIgLSBBIFNBU1MgbWl4aW4gdG8gaGVscCB5b3UgaW5jcmVhc2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBkb3RzIG9mIGJvcmRlci1zdHlsZTpkb3R0ZWQuXG4qIEJ5IEBmbG9yYnJhelxuKiBEb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlcyAtIGdpdGh1Yi5jb20vZmxvcmJyYXovRG90dGVkLUJvcmRlci13LWN1c3RvbS1zcGFjaW5nLVNDU1MtTWl4aW5cbiogVjEuMFxuKi9cbi8qXG4qIFV0aWxpdHlCZWx0IC0gYSBzdGFydGVyIGtpdCBmb3IgYW55IFNBU1MgcHJvamVjdFxuKiBCeSBAZG10aW50bmVyICYgQGhhY2tpbmd1aVxuKiBEb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlcyAtIGhhY2tpbmd1aS5jb20vZnJvbnQtZW5kLzEwLWJlc3Qtc2Nzcy11dGlsaXRpZXMvXG4qIFYxLjEuMFxuKi9cbi8qXG4jIyBUcmlhbmdsZVxuKiBAaW5jbHVkZSB0cmlhbmdsZSB3aXRoaW4gYSBwc2V1ZG8gZWxlbWVudCBhbmQgYWRkIHBvc2l0aW9uaW5nIHByb3BlcnRpZXMgKGllLiB0b3AsIGxlZnQpXG4qICRkaXJlY3Rpb246IHVwLCBkb3duLCBsZWZ0LCByaWdodFxuKi9cbi8qXG4qIEN1cnJlbmN5XG4qL1xuLypcbiogQ2xlYXJmaXhcbiovXG4vKlxuKiBHaG9zdCBWZXJ0aWNhbCBBbGlnblxuKi9cbi8qXG4qIFRydW5jYXRlIFRleHRcbiovXG4vKlxuKiBBbmltYXRpb25cbiovXG4vKlxuKiBSZXNpemUgU3ByaXRlIC0gZm9yIHJlc2l6aW5nIG9ubHkgYSBzaW5nbGUgaW1hZ2UgZnJvbSBhIHNwcml0ZVxuKlxuKiBwYXJhbXM6ICRtYXAgPSAkPG5hbWU+LXNwcml0ZXMgKGV4LiAkaWNvbi1zcHJpdGVzKVxuKiAgICAgICAgICRzcHJpdGUgPSBmaWxlIG5hbWUgdy9vIGZpbGUgdHlwZSBlbmRpbmcgKGV4LiBnbG9iZSlcbiAgICAgICAgICAkcGVyY2VudCA9IG51bWJlciAoZXguIDUwKVxuKlxuKiAoaWYgY29tcGFzcyBDU1MzIG1peGlucyBub3QgaW5jbHVkZWQsIHVuY29tbWVudCB0aGUgYmFja2dyb3VuZC1zaXplIHJvdyBhbmQgY29tbWVudCB0aGUgQGluY2x1ZGUgdmVyc2lvbilcbiovXG4vKlxuKiBSZXNpemVzIGFsbCBpbWFnZXMgaW4gYSBnaXZlbiBzcHJpdGVcbiogbWl4aW4gY291cnRlc3kgb2YgV2lsa2VyIEzDumNpbyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS93aWxrZXJsdWNpby82NDQyMzA5XG4qIHBhcmFtczogJG9ubHkgPSBpZiB5b3Ugd2FudCB0byBsaXN0IHNwZWNpZmljIGZpbGVzIGluc3RlYWQgb2YgcmVnZW5lcmF0aW5nIGV2ZXJ5IGltYWdlIChleC4gZ2xvYmUsIGNoZWNrbWFyaylcbiovXG4vKlxuKiBIVUkgVG9vbHRpcHNcbiovXG4vKlxuIyMgVGV4dC1hbGlnbiBqdXN0aWZ5XG5Gb3IgcGVyZmVjdGx5IGFsaWduZWQgZ3JpZHMgdGhhdCBkb24ndCByZWx5IG9uIGZsb2F0aW5nIGVsZW1lbnRzIGFuZCBkaWZmaWN1bHQgY2FsY3VsYXRpb25zXG5cbi0gaHR0cDovL3d3dy5iYXJyZWxueS5jb20vYmxvZy90ZXh0LWFsaWduLWp1c3RpZnktYW5kLXJ3ZC8gKi9cbi5tb2JpbGUtcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgLm1vYmlsZS1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2guc3dpcGVyLWFjdGl2ZS1zd2l0Y2gge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udG9vbHRpcDpob3ZlciAudG9vbHRpcC1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5qcyAudG9vbHRpcC1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50b29sdGlwIC50b29sdGlwLWNvbnRlbnQsXG4jdG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGUzZTM7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMzAwMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBtYXgtd2lkdGg6IDI0MHB4OyB9XG5cbiN0b29sdGlwIC5hcnJvdyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDE1cHg7XG4gIGJhY2tncm91bmQ6IHJlZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0xNXB4OyB9XG5cbiN0b29sdGlwIC5yZWNvbW1lbmRhdGlvbi10b29sdGlwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ0NDQztcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEwcHg7IH1cbiAgI3Rvb2x0aXAgLnJlY29tbWVuZGF0aW9uLXRvb2x0aXAtaGVhZGVyIC5wcm9kdWN0LXByaWNlIC5wcmljZS1zdGFuZGFyZCB7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cblxuI3Rvb2x0aXAgLnJlY29tbWVuZGF0aW9uLXRvb2x0aXAtZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nOiAxMHB4OyB9XG5cbiN0b29sdGlwIC5yZWNvbW1lbmRhdGlvbi10b29sdGlwLWF0dHJpYnV0ZXMge1xuICBwYWRkaW5nOiAxMHB4OyB9XG5cbi5zZWxlY3QtY3NzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiByaWdodDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLWNvbG9yOiAjZWRlZGVkO1xuICBiYWNrZ3JvdW5kOiAjZWRlZGVkO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1zaXplOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgLnNlbGVjdC1jc3Mge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZjhmOGY4O1xuICAgICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDsgfVxuICAgICAgLnNlbGVjdC1jc3MuY3VzdG9tLWFycm93IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY28vYnVsbGV0LWRvd24tY3JpbXNvbi5wbmcpICNmOGY4ZjggY2FsYygxMDAlIC0gNXB4KSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7IH0gfVxuXG4uc2VsZWN0LWNzcy5sb3lhbHR5LXJlZ2lzdHJhdGkge1xuICB3aWR0aDogNzBweDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiogQmF6YWFyVm9pY2UgU3BlY2lmaWMgQ3VzdG9taXphdGlvbnNcbiovXG4vKiBCYXphYXJ2b2ljZSBpbmxpbmUgcmF0aW5ncyBjZW50ZXJlZCAqL1xuW2lkKj1CVlJSSW5saW5lUmF0aW5nLV0ge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5wZHAtbWFpbiAuZGVza3RvcC1vbmx5LXdyYXBwZXIgI0JWUlJTdW1tYXJ5Q29udGFpbmVyID4gLmJ2LWNsZWFuc2xhdGUuYnYtY3YyLWNsZWFuc2xhdGUgPiAuYnYtc2hhcmVkW2NsYXNzKj1cImJ2LWNvcmUtY29udGFpbmVyLVwiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi5idi1jdjItY2xlYW5zbGF0ZSBbY2xhc3MqPWJ2LWNvcmUtY29udGFpbmVyLV0gLmJ2LWlubGluZS1yYXRpbmctY29udGFpbmVyIC5idi1zdGFycy1jb250YWluZXIgZGQsIC5idi1jdjItY2xlYW5zbGF0ZSBbY2xhc3MqPWJ2LWNvcmUtY29udGFpbmVyLV0gLmJ2LWlubGluZS1yYXRpbmctY29udGFpbmVyIC5idi1zdGFycy1jb250YWluZXIgZHQge1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuXG4ucGRwLW1haW4gI0JWUlJTdW1tYXJ5Q29udGFpbmVyID4gLmJ2LWNsZWFuc2xhdGUuYnYtY3YyLWNsZWFuc2xhdGUgPiAuYnYtc2hhcmVkW2NsYXNzKj1cImJ2LWNvcmUtY29udGFpbmVyLVwiXSA+IC5idi1jb21wYXQgPiAuYnYtcHJzLWNvbnRhaW5lciA+IC5idi1wcmltYXJ5U3VtbWFyeS1yYXRpbmctY29udGFpbmVyID4gLmJ2LXN1bW1hcnktYmFyID4gLmJ2LWFjdGlvbi1iYXIsXG4ucGRwLW1haW4gI0JWUlJTdW1tYXJ5Q29udGFpbmVyID4gLmJ2LWNsZWFuc2xhdGUuYnYtY3YyLWNsZWFuc2xhdGUgPiAuYnYtc2hhcmVkW2NsYXNzKj1cImJ2LWNvcmUtY29udGFpbmVyLVwiXSA+IC5idi1jb21wYXQgPiAuYnYtcHJzLWNvbnRhaW5lciA+IC5idi1wcmltYXJ5U3VtbWFyeS1yYXRpbmctY29udGFpbmVyID4gLmJ2LXN1bW1hcnktYmFyID4gLmJ2LWRldGFpbHMtYmFyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5sZXZlbC0yIC5odG1sLXNsb3QtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sZXZlbDJfX2ljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLml0ZW1TdWJsZXZlbF9faW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1lbnUtb2ZmZXItYWNjb3VudCB7XG4gICAgYmFja2dyb3VuZDogI0ZGNEU0RTsgfVxuICAubWVudS1vcGVuICNoZWFkZXIgLm1lbnUtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWVudS1vcGVuICNuYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDA7IH1cbiAgICAubWVudS1vcGVuICNuYXZpZ2F0aW9uLndpZGdldC1wcm9tbyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMTFweDsgfVxuICAgIC5tZW51LW9wZW4gI25hdmlnYXRpb24ucHJvbW8tY2xvc2VkIHtcbiAgICAgIG1hcmdpbi10b3A6IDEzMnB4ICFpbXBvcnRhbnQ7IH1cbiAgI25hdmlnYXRpb24gdWwubGV2ZWwtMSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAubWVudS1jYXRlZ29yeSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAubWVudS1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLm1lbnUtb3BlbiAjbmF2aWdhdGlvbiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNzFweCk7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgLm1lbnUtb3BlbiAuaGVhZGVyLXNlYXJjaCB7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAubWVudS1vcGVuIC5uYXZpZ2F0aW9uLWJvdHRvbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5tZW51LW9wZW4gLm5hdmlnYXRpb24tYm90dG9tIGxpIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOyB9XG4gICAgICAgIC5tZW51LW9wZW4gLm5hdmlnYXRpb24tYm90dG9tIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxuICAgICAgLm1lbnUtb3BlbiAubmF2aWdhdGlvbi1ib3R0b20gYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgLm1lbnUtb3BlbiAubmF2aWdhdGlvbi1ib3R0b20gYSBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7IH1cbiAgICAgIC5tZW51LW9wZW4gLm5hdmlnYXRpb24tYm90dG9tIC5jb250ZW50LWFzc2V0IHAge1xuICAgICAgICBtYXJnaW46IDVweCAwIDA7IH1cbiAgLm1lbnUtYWNjb3VudCBsaS5tZW51LW15LWFjY291bnQudXNlci1sb2dnZWQgPiBhOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3VzZXJfbG9nZ2VkX21vYmlsZS5wbmcpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHRvcDogLTZweDsgfVxuICAubWVudS1hY2NvdW50IGxpLm1lbnUtbXktYWNjb3VudC51c2VyLWxvZ2dlZCA+IGE6aG92ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdXNlcl9sb2dnZWRfbW9iaWxlLnBuZykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfVxuICAubWVudS1hY2NvdW50IC5tZW51LWFjY291bnRfbGlzdCA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5tZW51LWFjY291bnQgLm1lbnUtYWNjb3VudF9saXN0IC5tZW51LW5ld3NsZXR0ZXIsXG4gIC5tZW51LWFjY291bnQgLm1lbnUtYWNjb3VudF9saXN0IC5tZW51LXdpc2hsaXN0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tZW51LWFjY291bnQgLm1lbnUtbXktYWNjb3VudCBhOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3VzZXJfbW9iLnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNzUlO1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtYXJnaW4tdG9wOiAzcHg7IH1cbiAgLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50IGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgPiBhID4gcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQ6aG92ZXIgLnN1Ym1lbnUtbXktYWNjb3VudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWVudS1hY2NvdW50IGxpIGEgc3BhbixcbiAgLm1lbnUtYWNjb3VudCBsaSBhIC5tb2JpbGUtbXktYWNjb3VudC10aXRsZSxcbiAgLm1lbnUtYWNjb3VudCBsaSBhIC5taW5pLWNhcnQtbGFiZWwge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAubWVudS1hY2NvdW50IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAubWVudS1hY2NvdW50IHVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm1lbnUtYWNjb3VudCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7IH1cbiAgICAgIC5tZW51LWFjY291bnQgbGkgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5tZW51LWFjY291bnQgbGkgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZTsgfVxuICAgICAgICAubWVudS1hY2NvdW50IGxpIGEgc3Bhbi5pc3JlZCB7XG4gICAgICAgICAgY29sb3I6ICNkOTBmM2I7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgICAubWVudS1hY2NvdW50IGxpLm1lbnUtd2lzaGxpc3QgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAubWVudS1hY2NvdW50IGxpLm1lbnUtd2lzaGxpc3QgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZTsgfVxuICAgICAgICAubWVudS1hY2NvdW50IGxpLm1lbnUtd2lzaGxpc3QgYTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg3cHggLTM3OXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyNHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAgICAgLm1lbnUtYWNjb3VudCBsaS5tZW51LXdpc2hsaXN0IGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4N3B4IC0zNzlweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgICAubWVudS1hY2NvdW50IGxpLm1lbnUtd2lzaGxpc3QgYSAubWVudS13aXNobGlzdC1xdWFudGl0eSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Q5MGYzYjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IC04cHg7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgICAubWVudS1hY2NvdW50IGxpLm1lbnUtc3RvcmVsb2NhdG9yIGE6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NHB4IC0zMjZweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMjdweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICAgLm1lbnUtYWNjb3VudCBsaS5tZW51LXN0b3JlbG9jYXRvciBhOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NHB4IC0zMjZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5tZW51LWFjY291bnQgbGkubWVudS11c2VyLWFjY291bnQgYTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzhweCAtMzc5cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICBoZWlnaHQ6IDI4cHg7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAgIC5tZW51LWFjY291bnQgbGkubWVudS11c2VyLWFjY291bnQgYTpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03OHB4IC0zNzlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgLm1vYmlsZS1teS1hY2NvdW50LXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgPiBhOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50OmhvdmVyID4gYSB7XG4gICAgICB6LWluZGV4OiAxMDE7IH1cbiAgICAgIC5tZW51LWFjY291bnQgLm1lbnUtbXktYWNjb3VudDpob3ZlciA+IGE6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tZW51LWFjY291bnQgLm1lbnUtbXktYWNjb3VudCA+IGEuY2xpY2tlZDphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljby91c2VyLWFjYy1ob3Zlci5zdmcpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlOyB9XG4gICAgLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50LnVzZXItbG9nZ2VkID4gYS5jbGlja2VkOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdXNlcl9sb2dnZWRfaG92ZXJfbW9iaWxlLnBuZykgbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIC5tZW51LWFjY291bnQgLm1lbnUtbXktYWNjb3VudCAuc3VibWVudS1teS1hY2NvdW50IHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNzVweDtcbiAgICAgIHBhZGRpbmc6IDYwcHggMTBweCAxNXB4O1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gICAgICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgLnN1Ym1lbnUtbXktYWNjb3VudCBhLFxuICAgICAgLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50IC5zdWJtZW51LW15LWFjY291bnQ6aG92ZXIgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgLnN1Ym1lbnUtbXktYWNjb3VudCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwOyB9XG4gICAgICAubWVudS1hY2NvdW50IC5tZW51LW15LWFjY291bnQgLnN1Ym1lbnUtbXktYWNjb3VudCBsaTpsYXN0LWNoaWxkIHAge1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAyMnB4OyB9XG4gIC5icmFuZC1zZWFyY2gtY2FydCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxNjE7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgaGVpZ2h0OiA1NXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5icmFuZC1zZWFyY2gtY2FydCAubG9nby13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgLmJyYW5kLXNlYXJjaC1jYXJ0IC5oZWFkZXItc2VhcmNoIHtcbiAgICAgIHBhZGRpbmc6IDE0cHggMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgLmJyYW5kLXNlYXJjaC1jYXJ0IC5oZWFkZXItc2VhcmNoIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICNtaW5pLWNhcnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7IH1cbiAgICAjbWluaS1jYXJ0LmNhcnQtbm90LWVtcHR5IC5taW5pLWNhcnQtdG90YWwgLm1pbmktY2FydC1saW5rOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvL2NhcnRfZmlsbGVkLnN2Zyk7IH1cbiAgICAjbWluaS1jYXJ0IC5taW5pLWNhcnQtdG90YWwgLm1pbmktY2FydC1saW5rIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICNtaW5pLWNhcnQgLm1pbmktY2FydC10b3RhbCAubWluaS1jYXJ0LWxpbms6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljby9jYXJ0LnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDc1JTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgdG9wOiAwOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgICAgI21pbmktY2FydCAubWluaS1jYXJ0LXRvdGFsIC5taW5pLWNhcnQtbGluazphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAjbWluaS1jYXJ0IC5taW5pLWNhcnQtdG90YWw6aG92ZXIgc3BhbiB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAgICNtaW5pLWNhcnQgLm1pbmktY2FydC10b3RhbDpob3ZlciBzcGFuLm1pbmktY2FydC1xdHkge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgI21pbmktY2FydCAubWluaS1jYXJ0LXRvdGFsOmhvdmVyIC5jLXRleHQtY3JpbXNvbiB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLmNhcnQtbm90LWVtcHR5OmhvdmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAubWluaS1jYXJ0LWxpbmsge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gICAgLm1pbmktY2FydC1saW5rOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjFweCAtMjgzcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICBoZWlnaHQ6IDI3cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgLm1pbmktY2FydC1saW5rOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDIxcHggLTI4M3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAubWluaS1jYXJ0LWxpbmsgLmNhcnQtcXR5LW0sXG4gICAgLm1pbmktY2FydC1saW5rIC5taW5pLWNhcnQtZW1wdHkge1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICBib3R0b206IDBweDtcbiAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgI2hlYWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgI2hlYWRlciBoZWFkZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuICAgICAgI2hlYWRlciBoZWFkZXIgLm1haW4taGVhZGVyLCAjaGVhZGVyIGhlYWRlciAubWFpbi1oZWFkZXJfX3NlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgICAgICNoZWFkZXIgaGVhZGVyIC5tYWluLWhlYWRlciAubG9nby13cmFwcGVyLCAjaGVhZGVyIGhlYWRlciAubWFpbi1oZWFkZXJfX3NlYXJjaCAubG9nby13cmFwcGVyIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgICAgICAgICNoZWFkZXIgaGVhZGVyIC5tYWluLWhlYWRlciAubG9nby13cmFwcGVyIC5wcmltYXJ5LWxvZ28sICNoZWFkZXIgaGVhZGVyIC5tYWluLWhlYWRlcl9fc2VhcmNoIC5sb2dvLXdyYXBwZXIgLnByaW1hcnktbG9nbyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgI2hlYWRlciBoZWFkZXIgLm1haW4taGVhZGVyX19zZWFyY2gge1xuICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAjaGVhZGVyIGhlYWRlciAubWFpbi1oZWFkZXIgI21pbmktY2FydCwgI2hlYWRlciBoZWFkZXIgLm1haW4taGVhZGVyX19zZWFyY2ggI21pbmktY2FydCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgcmlnaHQ6IDI1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAjaGVhZGVyIC5wcmltYXJ5LWxvZ28ge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5oZWFkZXItc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICByaWdodDogMTMwcHg7XG4gICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAuaGVhZGVyLXNlYXJjaCAjc3VnZ2VzdGlvbnMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgIC5qcyAuaGVhZGVyLXNlYXJjaCAjc3VnZ2VzdGlvbnMgZGl2IHNwYW4uaGl0cyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgcGFkZGluZzogNnB4OyB9XG4gICAgICAuanMgLmhlYWRlci1zZWFyY2ggI3N1Z2dlc3Rpb25zIGRpdiBkaXYuc3VnZ2VzdGlvbnRlcm0ge1xuICAgICAgICB3aWR0aDogMjUwcHg7IH1cbiAgICAuaGVhZGVyLXNlYXJjaCBmb3JtIFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzczNzM3MztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDg1JSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLmhlYWRlci1zZWFyY2ggZm9ybSBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMThweCAtMzI2cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICB6LWluZGV4OiAyMDE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm90dG9tOiA0cHg7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgLmhlYWRlci1zZWFyY2ggZm9ybSBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzE4cHggLTMyNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAuaGVhZGVyLXNlYXJjaCBmb3JtIGZpZWxkc2V0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuc2hvdy5oZWFkZXItc2VhcmNoIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTlweDtcbiAgICBoZWlnaHQ6IDczcHg7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87IH1cbiAgICAuc2hvdy5oZWFkZXItc2VhcmNoIGZvcm0ge1xuICAgICAgbWFyZ2luOiAxMHB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTdFOEU5OyB9XG4gICAgICAuc2hvdy5oZWFkZXItc2VhcmNoIGZvcm0gZmllbGRzZXQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTdFOEU5O1xuICAgICAgICBtYXJnaW46IDExcHggMTFweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLnNob3cuaGVhZGVyLXNlYXJjaCBmb3JtIGZpZWxkc2V0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICNjbGVhci1zZWFyY2gtZmlsdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogOTBweDtcbiAgICB0b3A6IDIzcHg7XG4gICAgei1pbmRleDogMjAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGJvdHRvbTogNHB4OyB9XG4gICAgI2NsZWFyLXNlYXJjaC1maWx0ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTMxN3B4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICNjbGVhci1zZWFyY2gtZmlsdGVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtMzE3cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICNjbGVhci1zZWFyY2gtZmlsdGVyLm5vLXNlYXJjaCB7XG4gICAgICB0b3A6IDE3cHg7IH1cbiAgICAgICNjbGVhci1zZWFyY2gtZmlsdGVyLm5vLXNlYXJjaDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMThweCAtMzI2cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICBoZWlnaHQ6IDI3cHg7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAgICNjbGVhci1zZWFyY2gtZmlsdGVyLm5vLXNlYXJjaDphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxOHB4IC0zMjZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLndpZGdldC1wcm9tby51bmRlci1uYXYge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICB6LWluZGV4OiAyMTsgfVxuICAgIC53aWRnZXQtcHJvbW8udW5kZXItbmF2LnRvcC1zcGFjZSB7XG4gICAgICBtYXJnaW4tdG9wOiA3MnB4OyB9XG4gIC5tZW51LW9wZW4gI3N1Z2dlc3Rpb25zIHtcbiAgICB6LWluZGV4OiAyMDA7IH1cbiAgLm1lbnUtb3BlbiAud2lkZ2V0LXByb21vIHtcbiAgICB6LWluZGV4OiAxNTEgIWltcG9ydGFudDsgfVxuICAubWVudS1vcGVuIC5uYXZpZ2F0aW9uLWhlYWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXZfY3Jvc3Muc3ZnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDI3cHg7XG4gICAgd2lkdGg6IDI3cHg7XG4gICAgaGVpZ2h0OiAyN3B4OyB9XG4gIC5uYXZpZ2F0aW9uLWhlYWRlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRvcDogMTdweDtcbiAgICB6LWluZGV4OiAxMDAwOyB9XG4gIC5uYXZpZ2F0aW9uLWhlYWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9idXJnZXJfbWVudS5zdmcpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggMjdweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDI3cHg7IH1cbiAgLm5hdmlnYXRpb24tY3VzdG9tZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5hdmlnYXRpb24tY3VzdG9tZXIgbGkge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzM3MzczOyB9XG4gICAgICAubmF2aWdhdGlvbi1jdXN0b21lciBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICAgICAubmF2aWdhdGlvbi1jdXN0b21lciBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gICAgICAubmF2aWdhdGlvbi1jdXN0b21lciBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjbmF2aWdhdGlvbiAubmF2aWdhdGlvbi1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI25hdmlnYXRpb24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbWFyZ2luLXRvcDogNzFweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbGVmdDogLTEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgI25hdmlnYXRpb24uc3RpY2t5IHtcbiAgICAgIHRvcDogNTlweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgI25hdmlnYXRpb24ubmF2LW9wZW4ge1xuICAgICAgbGVmdDogMDsgfVxuICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaTpob3ZlciA+IGE6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpLFxuICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBbY2xhc3NePVwibWVudWxpbmtcIl0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaSA+IGRpdi5sZXZlbC0yLFxuICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IFtjbGFzc149XCJtZW51bGlua1wiXSA+IGRpdi5sZXZlbC0yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpID4gYSxcbiAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBbY2xhc3NePVwibWVudWxpbmtcIl0gPiBhIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBwYWRkaW5nOiAyNHB4IDQwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpID4gYTpub3QoLnRvZ2dsZS1jYXRlZ29yeSksXG4gICAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBbY2xhc3NePVwibWVudWxpbmtcIl0gPiBhOm5vdCgudG9nZ2xlLWNhdGVnb3J5KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7IH1cbiAgICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgPiBhOm5vdCgudG9nZ2xlLWNhdGVnb3J5KS5hY3RpdmUsXG4gICAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IFtjbGFzc149XCJtZW51bGlua1wiXSA+IGE6bm90KC50b2dnbGUtY2F0ZWdvcnkpLmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpID4gYS50b2dnbGUtY2F0ZWdvcnksXG4gICAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBbY2xhc3NePVwibWVudWxpbmtcIl0gPiBhLnRvZ2dsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgPiBhLnRvZ2dsZS1jYXRlZ29yeTpiZWZvcmUsXG4gICAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IFtjbGFzc149XCJtZW51bGlua1wiXSA+IGEudG9nZ2xlLWNhdGVnb3J5OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgICAgIHRvcDogMzUlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpID4gYS50b2dnbGUtY2F0ZWdvcnkuYWN0aXZlLFxuICAgICAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBbY2xhc3NePVwibWVudWxpbmtcIl0gPiBhLnRvZ2dsZS1jYXRlZ29yeS5hY3RpdmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG4gICAgICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgPiBhLnRvZ2dsZS1jYXRlZ29yeS5hY3RpdmU6YmVmb3JlLFxuICAgICAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IFtjbGFzc149XCJtZW51bGlua1wiXSA+IGEudG9nZ2xlLWNhdGVnb3J5LmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7IH1cbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpID4gYTphZnRlcixcbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IFtjbGFzc149XCJtZW51bGlua1wiXSA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaS5uby1zdWJjYXQgPiBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTsgfVxuICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRTdFOEU5OyB9XG4gICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaSBhLmxldmVsLTIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsgfVxuICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpIC5sZXZlbC0yIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgLmxldmVsLTIuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgLmxldmVsLTIubWVudS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpIC5sZXZlbC0yIC5zdWJsZXZlbC0xIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDsgfVxuICAgICAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGkgLmxldmVsLTIgLm1lbnUtd3JhcHBlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpIHVsLmxldmVsLTIge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGk6aG92ZXIgZGl2LmxldmVsLTIgLm1lbnUtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICNuYXZpZ2F0aW9uID4gbmF2IC5sZXZlbC0xID4gbGk6aG92ZXIgPiBhIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTEgPiBsaTpob3ZlciA+IGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzU3cHggLTYycHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICAgICAjbmF2aWdhdGlvbiA+IG5hdiAubGV2ZWwtMSA+IGxpOmhvdmVyID4gYTphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTdweCAtNjJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgI25hdmlnYXRpb24gPiBuYXYgLmxldmVsLTMgbGkgYSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMWVtOyB9XG4gIC5sZXZlbC0yID4gbGkgLm1lbnUtY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IHVsID4gbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmxldmVsLTIgPiBsaSAubWVudS1jb2x1bW4gPiB1bCA+IGxpID4gYTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMjBweCAyNnB4OyB9XG4gICAgICAubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IHVsID4gbGkgPiBhOm5vdCgudG9nZ2xlLWNhdGVnb3J5KSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KSAhaW1wb3J0YW50OyB9XG4gICAgICAubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IHVsID4gbGkgPiBhLmxldmVsMl9faWNvbjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAgICAgLmxldmVsLTIgPiBsaSAubWVudS1jb2x1bW4gPiB1bCA+IGxpID4gYS5sZXZlbDJfX2ljb24uYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgICAgbGVmdDogMTUlOyB9XG4gICAgICAubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IHVsID4gbGkgPiBhLnRvZ2dsZS1jYXRlZ29yeSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7IH1cbiAgICAgICAgLmxldmVsLTIgPiBsaSAubWVudS1jb2x1bW4gPiB1bCA+IGxpID4gYS50b2dnbGUtY2F0ZWdvcnk6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sZXZlbC0yID4gbGkgLm1lbnUtY29sdW1uID4gdWwgPiBsaSA+IGEuaGFzLXN1Ym1lbnU6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IHVsID4gbGkgPiBhLmhhcy1zdWJtZW51LmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZTVlNWU1OyB9XG4gICAgICAgIC5sZXZlbC0yID4gbGkgLm1lbnUtY29sdW1uID4gdWwgPiBsaSA+IGEuaGFzLXN1Ym1lbnUuYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIGRpdi5sZXZlbC0yIHVsLmxldmVsLTIgPiBsaSAubWVudS1jb2x1bW4gPiBhIHtcbiAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICAgIHBhZGRpbmc6IDIwcHggMjZweDsgfVxuICBkaXYubGV2ZWwtMyB1bC5sZXZlbC0zIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIGRpdi5sZXZlbC0zIHVsLmxldmVsLTMgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnN1YmxldmVsLTEgLm1lbnUtY29sdW1uIHVsID4gbGkgPiAubGV2ZWwtMyBhIHtcbiAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgdWwubGV2ZWwtMSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICB1bC5sZXZlbC0xIGEgc3BhbiB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5taW5pLWNhcnQtcXR5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAtNXB4OyB9XG4gIC5maWx0ZXItbW9iaWxlLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuZmlsdGVyLW1vYmlsZS1vcGVuIC5tYWluLXdyYXBwZXIsXG4gICAgLmZpbHRlci1tb2JpbGUtb3BlbiAjZm9vdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmZpbHRlci1tb2JpbGUtb3BlbiAubWFpbi13cmFwcGVyIC5tZW51LW92ZXJsYXksXG4gICAgICAuZmlsdGVyLW1vYmlsZS1vcGVuICNmb290ZXIgLm1lbnUtb3ZlcmxheSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDExOyB9XG4gIC5kaXNhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9XG4gIC5sZXZlbC0yID4gbGkgLm1lbnUtY29sdW1uID4gdWwgPiBsaSA+IGEuaGFzLXN1Ym1lbnUuYWN0aXZlIH4gLmxldmVsLTMgLmxldmVsLTMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgI2hlYWRlcjpub3QoLmNvbnRhaW5lcikuc3RpY2t5LnNjcm9sbGVkLWRvd24ge1xuICAgIHRvcDogLTU5cHg7IH1cbiAgI2hlYWRlcjpub3QoLmNvbnRhaW5lcikuc3RpY2t5LnNlYXJjaC1hY3RpdmUge1xuICAgIHRvcDogLTEzMnB4ICFpbXBvcnRhbnQ7IH1cbiAgI3dpZGdldC1wcm9tby51bmRlci1uYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICN3aWRnZXQtcHJvbW8udW5kZXItbmF2LnN0aWNreSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5OyB9XG4gICAgI3dpZGdldC1wcm9tby51bmRlci1uYXYuc3RpY2t5LWhlYWRlciB7XG4gICAgICB0b3A6IDU5cHg7IH1cbiAgICAjd2lkZ2V0LXByb21vLnVuZGVyLW5hdi5zdGlja3ktaGVhZGVyLXNlYXJjaCB7XG4gICAgICB0b3A6IDEzMnB4OyB9XG4gIC5mb290ZXItZmVhdHVyZXMgYXJ0aWNsZSB7XG4gICAgcGFkZGluZzogODBweCAyMHB4IDA7IH1cbiAgICAuZm9vdGVyLWZlYXR1cmVzIGFydGljbGUgaDQsXG4gICAgLmZvb3Rlci1mZWF0dXJlcyBhcnRpY2xlIHAge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9XG4gIC5mb290ZXItY29udGFjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2VydmljZS1jbGllbnQuanBnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgIC5mb290ZXItY29udGFjdCBwLFxuICAgIC5mb290ZXItY29udGFjdCBoMixcbiAgICAuZm9vdGVyLWNvbnRhY3QgaDMsXG4gICAgLmZvb3Rlci1jb250YWN0IC5oMyB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5mb290ZXItY29udGFjdCBoMyxcbiAgICAuZm9vdGVyLWNvbnRhY3QgLmgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAuZm9vdGVyLWNvbnRhY3QgcCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAuZm9vdGVyLWNvbnRhY3QgYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogI2U1ZTVlNTsgfVxuICAgIC5mb290ZXItY29udGFjdCAuZm9vdGVyLXNlcnZpY2UtY2xpZW50IHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cbiAgICAgIC5mb290ZXItY29udGFjdCAuZm9vdGVyLXNlcnZpY2UtY2xpZW50OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MXB4IC0yOThweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDcxcHg7XG4gICAgICAgIGhlaWdodDogNzBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICAgLmZvb3Rlci1jb250YWN0IC5mb290ZXItc2VydmljZS1jbGllbnQ6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODFweCAtMjk4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB3aWR0aDogNzFweDtcbiAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhY3QgLmZvb3Rlci1zZXJ2aWNlLWNsaWVudCB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLmZvb3Rlci1jb250YWN0IC5mb290ZXItc2VydmljZS1jbGllbnQgdWwgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5mb290ZXItc29jaWFsIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5mb290ZXItc2VydmljZXMgLmZvb3Rlci1zb2NpYWwgLmNvbnRlbnQtYXNzZXQgLmYtc29jaWFsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuZm9vdGVyLXNlcnZpY2VzIC5mb290ZXItc29jaWFsIC5jb250ZW50LWFzc2V0IC5mLXNvY2lhbCBhIHtcbiAgICAgICAgaGVpZ2h0OiA2MHB4OyB9XG4gICAgICAuZm9vdGVyLXNlcnZpY2VzIC5mb290ZXItc29jaWFsIC5jb250ZW50LWFzc2V0IC5mLXNvY2lhbCBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgICAuZm9vdGVyLXNvY2lhbCAuZi1zb2NpYWwgbmF2IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjZm9ybXVsYWlyZS1jb250YWN0IHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAgICNmb3JtdWxhaXJlLWNvbnRhY3QgLmZvcm0tY29udGFjdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZi1pbnN0YWdyYW06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzgycHggLTE3NnB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgLmYtaW5zdGFncmFtOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MnB4IC0xNzZweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAudHJpbWFuIHAsXG4gIC50cmltYW4gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubS1zZWN0aW9uLXJlYXNzdXJhbmNlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubS1zZWN0aW9uLXJlYXNzdXJhbmNlIC5jLWxpbmstaW1hZ2Uge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLm0tc2VjdGlvbi1yZWFzc3VyYW5jZSAuYy1saW5rLWltYWdlX190ZXh0IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44ZW07IH1cbiAgLmZvb3Rlci1maW5kLXN0b3JlLXJvdyBwLFxuICAuZm9vdGVyLW5ld3NsZXR0ZXIgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuZm9vdGVyLW5ld3NsZXR0ZXItcm93IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb290ZXItbmV3c2xldHRlci1yb3cgLmZvb3Rlci1uZXdzbGV0dGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuZm9vdGVyLW5ld3NsZXR0ZXItcm93IC5mb290ZXItbmV3c2xldHRlciAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5mb290ZXItbmV3c2xldHRlci1yb3cgLmZvb3Rlci1uZXdzbGV0dGVyIC5rZWVwZXIge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgICAgLmZvb3Rlci1uZXdzbGV0dGVyLXJvdyAuZm9vdGVyLW5ld3NsZXR0ZXIgc3Bhbi5lcnJvciB7XG4gICAgICAgIG1hcmdpbjogLTIycHggMCAxM3B4IDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICNmb290ZXIgZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mb290ZXItZmluZC1zdG9yZS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMzVweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5mb290ZXItZmluZC1zdG9yZS1yb3cgLnN0b3JlbG9jYXRvci1pbWcge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwOyB9XG4gICAgLmZvb3Rlci1maW5kLXN0b3JlLXJvdyAuZm9vdGVyLWZpbmQtc3RvcmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMjRweDsgfVxuICAuZm9vdGVyLW1vYmlsZS1zb2NpYWwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5mb290ZXItbW9iaWxlLXNvY2lhbDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5mb290ZXItbW9iaWxlLXNvY2lhbCAuaDQsXG4gICAgLmZvb3Rlci1tb2JpbGUtc29jaWFsIGg0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmZvb3Rlci1tb2JpbGUtc29jaWFsIC5jLWxpc3QtaG9yaXpvbnRhbCwgLmZvb3Rlci1tb2JpbGUtc29jaWFsIC5jb250ZW50LWFzc2V0IHVsLmMtbGlzdC1ob3Jpem9udGFsIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuNWVtO1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxRjFFMjE7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgMTBweDsgfVxuICAgICAgLmZvb3Rlci1tb2JpbGUtc29jaWFsIC5jLWxpc3QtaG9yaXpvbnRhbCBsaSwgLmZvb3Rlci1tb2JpbGUtc29jaWFsIC5jb250ZW50LWFzc2V0IHVsLmMtbGlzdC1ob3Jpem9udGFsIGxpIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICAgICAgLmZvb3Rlci1tb2JpbGUtc29jaWFsIC5jLWxpc3QtaG9yaXpvbnRhbCBzcGFuLCAuZm9vdGVyLW1vYmlsZS1zb2NpYWwgLmNvbnRlbnQtYXNzZXQgdWwuYy1saXN0LWhvcml6b250YWwgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuOGVtOyB9XG4gIC5mb290ZXItbW9iaWxlLWN1c3RvbWVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkNWQ1ZDU7XG4gICAgcGFkZGluZzogNGVtIDE1cHg7IH1cbiAgICAuZm9vdGVyLW1vYmlsZS1jdXN0b21lciAuaDQsXG4gICAgLmZvb3Rlci1tb2JpbGUtY3VzdG9tZXIgaDQge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5mb290ZXItbW9iaWxlLWN1c3RvbWVyIHAge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgLmZvb3Rlci1tb2JpbGUtY3VzdG9tZXIgLmg1LFxuICAgIC5mb290ZXItbW9iaWxlLWN1c3RvbWVyIGg1IHtcbiAgICAgIG1hcmdpbjogMmVtIDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIC5mb290ZXItbW9iaWxlLWN1c3RvbWVyIC5oNSBzcGFuLCAuZm9vdGVyLW1vYmlsZS1jdXN0b21lciAuaDUgYSxcbiAgICAgIC5mb290ZXItbW9iaWxlLWN1c3RvbWVyIGg1IHNwYW4sXG4gICAgICAuZm9vdGVyLW1vYmlsZS1jdXN0b21lciBoNSBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvb3Rlci1tb2JpbGUtcGF5bWVudC1kZWxpdmVyeSB7XG4gICAgYmFja2dyb3VuZDogI2VkZWRlZDtcbiAgICBwYWRkaW5nOiAyZW0gMTVweCAyLjVlbSAxNXB4OyB9XG4gICAgLmZvb3Rlci1tb2JpbGUtcGF5bWVudC1kZWxpdmVyeSAuaDQsXG4gICAgLmZvb3Rlci1tb2JpbGUtcGF5bWVudC1kZWxpdmVyeSBoNCB7XG4gICAgICBtYXJnaW46IDEuMzNlbSAwO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAuZm9vdGVyLXNlcnZpY2VzIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5mb290ZXItc2VydmljZXMgdWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgICAgLmZvb3Rlci1zZXJ2aWNlcyB1bCBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjRweDsgfVxuICAgICAgICAuZm9vdGVyLXNlcnZpY2VzIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweCAyNHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAgICAgLmZvb3Rlci1zZXJ2aWNlcyB1bCBsaTpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgICAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDsgfVxuICAgICAgICAgIC5mb290ZXItc2VydmljZXMgdWwgbGk6Zmlyc3QtY2hpbGQgYSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgLmZvb3Rlci1zZXJ2aWNlcyB1bCBsaSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgICAuZm9vdGVyLXNlcnZpY2VzIHVsIGxpIGE6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7IH1cbiAgICAgIC5mb290ZXItc2VydmljZXMgdWwuZm9vdGVyLWljb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgIC5mb290ZXItc2VydmljZXMgdWwuZm9vdGVyLWljb25zIGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTVweDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgICAgICAuZm9vdGVyLXNlcnZpY2VzIHVsLmZvb3Rlci1pY29ucyBsaTpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5mb290ZXItc2VydmljZXMgdWwuYWN0aXZlIGxpOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMXB4OyB9XG4gICAgICAuZm9vdGVyLXNlcnZpY2VzIHVsLmFjdGl2ZSBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgIC5mb290ZXItc2VydmljZXMgdWwuYWN0aXZlIGxpIGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmZvb3Rlci1zZW8ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDVkNWQ1O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM4ZjhmOGYgMC4yLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDVweCAxcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7IH1cbiAgICAuaWU5IC5mb290ZXItc2VvIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgIzhmOGY4ZjsgfVxuICAuZm9vdGVyX19zZW8tdGV4dCxcbiAgLmNvbnRlbnQtYXNzZXQgZGl2LmZvb3Rlcl9fc2VvLXRleHQge1xuICAgIG1hcmdpbi10b3A6IDIuNWVtO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmZvb3Rlcl9fc2VvLXRleHQgLmgzLFxuICAgIC5mb290ZXJfX3Nlby10ZXh0IGgzLFxuICAgIC5jb250ZW50LWFzc2V0IGRpdi5mb290ZXJfX3Nlby10ZXh0IC5oMyxcbiAgICAuY29udGVudC1hc3NldCBkaXYuZm9vdGVyX19zZW8tdGV4dCBoMyB7XG4gICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgIC5mb290ZXJfX3Nlby10ZXh0IHN0cm9uZyxcbiAgICAuY29udGVudC1hc3NldCBkaXYuZm9vdGVyX19zZW8tdGV4dCBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5mb290ZXJfX3Nlby10ZXh0IHAsXG4gICAgLmNvbnRlbnQtYXNzZXQgZGl2LmZvb3Rlcl9fc2VvLXRleHQgcCB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLm0tZm9vdGVyLWNvcHlyaWdodCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5tLWZvb3Rlci1jb3B5cmlnaHQgLmNvcHlyaWdodCB7XG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7IH1cbiAgLmZvb3Rlcl9fbGFuZy1zZWxlY3Rpb24gbGkgaW1nIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIC5idG4tYmFjay10b3AgYSAuYXJyb3cge1xuICAgIHRvcDogNDclO1xuICAgIGxlZnQ6IDM2JTtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7IH1cbiAgLmJ0bi1iYWNrLXRvcC5wZHAtc2hpZnQge1xuICAgIGJvdHRvbTogMTAwcHg7IH1cbiAgLmJ0bi1iYWNrLXRvcC5wcm9kdWN0LWFkZGVkIHtcbiAgICBib3R0b206IDE4NXB4OyB9XG4gIC5idG4tYmFjay10b3AuaGlkZS1iZWhpbmQtb3ZlcmxheSB7XG4gICAgei1pbmRleDogOTsgfVxuICBib2R5IHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAubW9kYWwtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAubW9kYWwtb3BlbiAudWktZGlhbG9nLCAubW9kYWwtb3BlbiAudWktd2lkZ2V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkOyB9XG4gIC5tLW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgaHRtbCBib2R5IC51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmJyZWFkY3J1bWItbW9iaWxlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgIC5icmVhZGNydW1iLW1vYmlsZSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtNjZweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMTdweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42KTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAuYnJlYWRjcnVtYi1tb2JpbGUgYTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC02NnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMTdweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgI21lcy1jb3VwcyAubm8tcmVzdWx0cyB7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICNtZXMtY291cHMgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgbWluLWhlaWdodDogMDsgfVxuICAuYnV0dG9uLWZhbmN5LWxhcmdlLFxuICBidXR0b24uYnV0dG9uLWZhbmN5LWxhcmdlLFxuICAuYnV0dG9uLWZhbmN5LWxhcmdlW3R5cGU9XCJidXR0b25cIl0sXG4gIC5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cuZm9ybS1yb3ctYnV0dG9uIC5idXR0b24tZmFuY3ktbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7IH1cbiAgLmJ1dHRvbi1mYW5jeS1sYXJnZTphZnRlcixcbiAgLmJ1dHRvbi1mYW5jeS1sYXJnZSNhZGQtdG8tY2FydDphZnRlciB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAuY2hlY2tvdXRIZWxwOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODJweCAwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogNjJweDtcbiAgICBoZWlnaHQ6IDU1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAuY2hlY2tvdXRIZWxwOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODJweCAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDYycHg7XG4gICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLm5vLWhpdHMtYmFubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmhlYWRlci1uby1oaXRzIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLm5vdC1mb3VuZC1tc2cuZXJyb3ItbXNnIHtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLm5vLWhpdHMtYmFubmVyLWJnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cbiAgICAubm8taGl0cy1iYW5uZXItYmcgPiAubm8taGl0cy1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy93b25kZXJicmEtbm8taGl0cy1tb2JpbGUuanBnKTtcbiAgICAgIHBhZGRpbmctdG9wOiAzMDBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAubm8taGl0cy1iYW5uZXItYmcgLmhlYWRlci1uby1oaXRzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjZTVlNWU1O1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5uby1oaXRzLWJhbm5lci1iZyAuaGVhZGVyLW5vLWhpdHMgLm5vdC1mb3VuZC1tc2cge1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC5uby1oaXRzLXNlYXJjaCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubm8taGl0cy1zZWFyY2ggbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9XG4gIC5uby1oaXRzLWhlbHAge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubm8taGl0cy1oZWxwIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvIDMwcHg7IH1cbiAgICAubm8taGl0cy1oZWxwIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgICAubm8taGl0cy1oZWxwIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAgIC5uby1oaXRzLWhlbHAgbGkgcCB7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7IH1cbiAgICAubm8taGl0cy1oZWxwX3RpcC1udW1iZXIge1xuICAgICAgY29sb3I6ICNlNWU1ZTU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlYXJjaC1ub3QtZm91bmQgbGkge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5ub3QtZm91bmQtbXNnIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAubm8taGl0cy1mb290ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm5vLWhpdHMtZm9vdGVyOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNik7IH1cbiAgICAubm8taGl0cy1mb290ZXIubm8taGl0cy1uZXdzbGV0dGVyLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRlZDsgfVxuICAgIC5uby1oaXRzLWZvb3Rlci5uby1oaXRzLW5ld3NsZXR0ZXItY29udGFpbmVyLCAubm8taGl0cy1mb290ZXIubm8taGl0cy1jb250YWN0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLm5vLWhpdHMtZm9vdGVyLm5vLWhpdHMtbmV3c2xldHRlci1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgLm5vLWhpdHMtZm9vdGVyLm5vLWhpdHMtbmV3c2xldHRlci1jb250YWluZXIgaDIubm8taGl0cy1mb290ZXJfdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY28vbmV3c2xldHRlci15ZWxsb3dAMngucG5nKTtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87IH1cbiAgICAubm8taGl0cy1mb290ZXIubm8taGl0cy1jb250YWN0IGgyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGUtNDA0X25vUmVzdWx0QDJ4LnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgICAubm8taGl0cy1mb290ZXIgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5uby1oaXRzLWZvb3RlciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7IH1cbiAgICAubm8taGl0cy1mb290ZXIgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogNTQlO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgLm5vLWhpdHMtZm9vdGVyIGJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMThweCAyNXB4IDE4cHggMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAgIC5uby1oaXRzLWZvb3RlciBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC5uby1oaXRzLWZvb3RlciAubm8taGl0cy1mb290ZXJfdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgY29sb3I6ICNlNWU1ZTU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLm5vLWhpdHMtZm9vdGVyX2N1c3RvbWVyLXNlcnZpY2VzIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5uby1oaXRzLWZvb3Rlcl9jdXN0b21lci1zZXJ2aWNlcyBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XG4gICAgICAgIC5uby1oaXRzLWZvb3Rlcl9jdXN0b21lci1zZXJ2aWNlcyBsaTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGUtNDA0X25vUmVzdWx0QDJ4LnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjJweCAwO1xuICAgICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAgICAgLm5vLWhpdHMtZm9vdGVyX2N1c3RvbWVyLXNlcnZpY2VzIGxpOm50aC1jaGlsZCgyKTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYwcHggLTI0cHg7XG4gICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgaGVpZ2h0OiAyOHB4OyB9XG4gICAgICAgIC5uby1oaXRzLWZvb3Rlcl9jdXN0b21lci1zZXJ2aWNlcyBsaTpudGgtY2hpbGQoMyk6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05OHB4IDA7XG4gICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgaGVpZ2h0OiAyOHB4OyB9XG4gICAgICAubm8taGl0cy1mb290ZXJfY3VzdG9tZXItc2VydmljZXMgcCB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAucGFnZS1ub3QtZm91bmQgLm5vLWhpdHMtYmFubmVyLWJnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgLnBhZ2Utbm90LWZvdW5kIC5uby1oaXRzLWJhbm5lci1iZyAubm8taGl0cy1iYW5uZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9XT05ERVJCUkEtNDA0LWJnLW1vYmlsZS5qcGcpOyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAuZXJyb3ItaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC5wYWdlLW5vdC1mb3VuZCAuZXJyb3ItaGVhZGVyIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5wYWdlLW5vdC1mb3VuZCAuZXJyb3ItaGVhZGVyIC5ub3QtZm91bmQtbXNnIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgLnBhZ2Utbm90LWZvdW5kIC5lcnJvci1yZWRpcmVjdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAgIC5wYWdlLW5vdC1mb3VuZCAuZXJyb3ItcmVkaXJlY3QgcCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAucGFnZS1ub3QtZm91bmQgLmVycm9yLXJlZGlyZWN0IC5saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kaXNjb3Zlci1wcm9kdWN0cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4IDMwcHg7IH1cbiAgICAuZGlzY292ZXItcHJvZHVjdHNfaGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmRpc2NvdmVyLXByb2R1Y3RzX2hlYWRlciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4OyB9XG4gICAgICAuZGlzY292ZXItcHJvZHVjdHNfaGVhZGVyIC5kaXZpc29yIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5kaXNjb3Zlci1wcm9kdWN0c19pdGVtcyBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAuZGlzY292ZXItcHJvZHVjdHNfaXRlbXMgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAuZGlzY292ZXItcHJvZHVjdHNfaXRlbXMgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnByaW1hcnktY29udGVudCBoMS5vdXBzIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4NnB4IDBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxODZweDtcbiAgICBoZWlnaHQ6IDUycHg7XG4gICAgbWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAucHJpbWFyeS1jb250ZW50IGgxLm91cHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg2cHggMHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAxODZweDtcbiAgICAgIGhlaWdodDogNTJweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAucHJpbWFyeS1jb250ZW50IGgxLm9vcHMge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDE3NnB4O1xuICAgIGhlaWdodDogNTdweDtcbiAgICBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgIC5wcmltYXJ5LWNvbnRlbnQgaDEub29wcyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDE3NnB4O1xuICAgICAgaGVpZ2h0OiA1N3B4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5wcmltYXJ5LWNvbnRlbnQgLmVycm9yLTQwNC5jdXN0b21lci1mciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAubm8taGl0cy1iYW5uZXIgLmJhY2tncm91bmQtNDA0LWJhbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubm8taGl0cy1iYW5uZXIgLmhlYWRlci1uby1oaXRzIC5uby1oaXRzLWNvbnRlbnQgLm5vdC1mb3VuZC1tc2cubm90LWZvdW5kLW1zZy1ib3JkZXIsIC5uby1oaXRzLWJhbm5lciAuaGVhZGVyLW5vLWhpdHMgLm5vLWhpdHMtY29udGVudCAubm90LWZvdW5kLW1zZy5lcnJvci1tc2cge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAucGF5bWVudC1jYXJkLWluZm8gLmZvcm0tcm93IC5jYXJkLXR5cGUtb3B0aW9ucyBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHRvcDogLTNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuZm9ybS1yb3cuZm9ybS1yb3ctYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBheW1lbnQtY2FyZC1pbmZvIC5mb3JtLXJvdyAuY2FyZC10eXBlLW9wdGlvbnMgPiBsYWJlbCBpbWcge1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAucGF5bWVudC1jYXJkLWluZm8gLmZvcm0tcm93LnJvdy1wYXltZW50LXNlbGVjdC1nbyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogMDsgfVxuICAucGRwLW1haW4gLmF0dHJpYnV0ZSAuc2l6ZS1jaGFydC1saW5rIHtcbiAgICBtYXJnaW46IDIwcHggLTIycHggLTIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucGRwLW1haW4gLmF0dHJpYnV0ZSAuc2l6ZS1jaGFydC1saW5rIGEge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIC5zZXQtbmV3LXBhc3N3b3JkIHtcbiAgICB3aWR0aDogaW5pdGlhbDsgfVxuICAgIC5zZXQtbmV3LXBhc3N3b3JkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAjbWVzLWNvdXBzIC5saXN0LXRhYmxlLWhlYWRlciAuYnV0dG9uI3NlbmQtdG8tZnJpZW5kIHtcbiAgICBsaW5lLWhlaWdodDogNDBweDsgfVxuICAucGF5bWVudC1jYXJkLWluZm8gLmZvcm0tcm93LmZvcm0tcm93LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaG9ydC1pbnB1dGZpZWxkLmV4cGlyZXMtZGF0ZS1kcm9wZG93biB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuY3ZuIGlucHV0IHtcbiAgICB3aWR0aDogMTQwcHg7IH1cbiAgLnBheW1lbnQtY2FyZC1pbmZvIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC5wYXltZW50LWNhcmQtaW5mbyAuZGlhbG9nLXJlcXVpcmVkIC5yZXF1aXJlZC1pbmRpY2F0b3IgZW0ge1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9XG4gIC5jaGVja291dC1zaGlwcGluZy5hZGRyZXNzIC5mb3JtLXJvdy5mb3JtLXJvdy1idXR0b24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5jaGVja291dC1zaGlwcGluZy5hZGRyZXNzIC5mb3JtLXJvdy5mb3JtLXJvdy1idXR0b24gYnV0dG9uIHtcbiAgICAgIHdpZHRoOiA0MjBweDsgfVxuICAjbWVzLWNvdXBzIC53aXNobGlzdC1uYXYgI3NlbmQtdG8tZnJpZW5kLFxuICAjbWVzLWNvdXBzIC53aXNobGlzdC1uYXYgI3ByaW50LWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxNXB4IDI0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICNQYXNzd29yZFJlc2V0Rm9ybSAuYnV0dG9uLWZhbmN5LWxhcmdlIHtcbiAgICBtaW4td2lkdGg6IDE3NXB4OyB9XG4gIC5pbnB1dC1jaGVja2JveCArIGxhYmVsOmJlZm9yZSxcbiAgLmlucHV0LWNoZWNrYm94ICsgYTpiZWZvcmUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmxvZ2luUGFnZSAjZHdmcm1fbG9naW4gLmZvcm0tcm93LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubG9naW5QYWdlICNkd2ZybV9sb2dpbiAuZm9ybS1yb3ctYnV0dG9uIC5idG4tcHJpbWFyeSB7XG4gICAgICBwYWRkaW5nOiAxOXB4IDUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAubG9naW5QYWdlIC5mb3JtLXJvdy1idXR0b24gLmJ0bi1wcmltYXJ5IHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCxcbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCxcbiAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5mb3JtLXJvdyAuY2l2aWxpdHkgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsIHNwYW4sXG4gICAgI2VkaXQtYWRkcmVzcy1mb3JtIC5mb3JtLXJvdyAuY2l2aWxpdHkgbGFiZWwgc3BhbixcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsIHNwYW4sXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5mb3JtLXJvdyAuY2l2aWxpdHkgbGFiZWwgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLXJvdyAuY2l2aWxpdHkgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93IC5jaXZpbGl0eSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICNSZWdpc3RyYXRpb25Gb3JtIC5mb3JtLXJvdyAuY2l2aWxpdHkgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAjUmVnaXN0cmF0aW9uRm9ybUNyZWRlbnRpYWwgLmZvcm0tcm93IC5jaXZpbGl0eSBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItY29sb3I6ICMxRjFFMjE7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLXJvdy5jb3VudHJ5IHNlbGVjdDpub3QoLmhhc0N1c3RvbVNlbGVjdCksXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLXJvdy5jb3VudHJ5IC5jdXN0b21TZWxlY3RBcmVhLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93LmNvdW50cnkgc2VsZWN0Om5vdCguaGFzQ3VzdG9tU2VsZWN0KSxcbiAgI2VkaXQtYWRkcmVzcy1mb3JtIC5mb3JtLXJvdy5jb3VudHJ5IC5jdXN0b21TZWxlY3RBcmVhLFxuICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY291bnRyeSBzZWxlY3Q6bm90KC5oYXNDdXN0b21TZWxlY3QpLFxuICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY291bnRyeSAuY3VzdG9tU2VsZWN0QXJlYSxcbiAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5mb3JtLXJvdy5jb3VudHJ5IHNlbGVjdDpub3QoLmhhc0N1c3RvbVNlbGVjdCksXG4gICNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCAuZm9ybS1yb3cuY291bnRyeSAuY3VzdG9tU2VsZWN0QXJlYSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGhlaWdodDogNzBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0O1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmZvcm0tcm93LmNvdW50cnkgLmN1c3RvbVNlbGVjdCxcbiAgI2VkaXQtYWRkcmVzcy1mb3JtIC5mb3JtLXJvdy5jb3VudHJ5IC5jdXN0b21TZWxlY3QsXG4gICNSZWdpc3RyYXRpb25Gb3JtIC5mb3JtLXJvdy5jb3VudHJ5IC5jdXN0b21TZWxlY3QsXG4gICNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCAuZm9ybS1yb3cuY291bnRyeSAuY3VzdG9tU2VsZWN0IHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmZvcm0tcm93LmNvdW50cnkgLmN1c3RvbVNlbGVjdElubmVyLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93LmNvdW50cnkgLmN1c3RvbVNlbGVjdElubmVyLFxuICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY291bnRyeSAuY3VzdG9tU2VsZWN0SW5uZXIsXG4gICNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCAuZm9ybS1yb3cuY291bnRyeSAuY3VzdG9tU2VsZWN0SW5uZXIge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cuY291bnRyeSBzcGFuLmVycm9yLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93LmNvdW50cnkgc3Bhbi5lcnJvcixcbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLmZvcm0tcm93LmNvdW50cnkgc3Bhbi5lcnJvcixcbiAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5mb3JtLXJvdy5jb3VudHJ5IHNwYW4uZXJyb3Ige1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLXJvdy5jaGVja2JveExpbmUsXG4gICNlZGl0LWFkZHJlc3MtZm9ybSAuZm9ybS1yb3cuY2hlY2tib3hMaW5lLFxuICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY2hlY2tib3hMaW5lLFxuICAjUmVnaXN0cmF0aW9uRm9ybUNyZWRlbnRpYWwgLmZvcm0tcm93LmNoZWNrYm94TGluZSB7XG4gICAgbWFyZ2luOiAwIDE1cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDcwcHg7IH1cbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cuY2hlY2tib3hMaW5lICsgLmRpdmlkZXIsXG4gICAgI2VkaXQtYWRkcmVzcy1mb3JtIC5mb3JtLXJvdy5jaGVja2JveExpbmUgKyAuZGl2aWRlcixcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY2hlY2tib3hMaW5lICsgLmRpdmlkZXIsXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5mb3JtLXJvdy5jaGVja2JveExpbmUgKyAuZGl2aWRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMTBweCAxNXB4IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRlZGVkOyB9XG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmZvcm0tcm93LmNoZWNrYm94TGluZSBsYWJlbCxcbiAgICAjZWRpdC1hZGRyZXNzLWZvcm0gLmZvcm0tcm93LmNoZWNrYm94TGluZSBsYWJlbCxcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAuZm9ybS1yb3cuY2hlY2tib3hMaW5lIGxhYmVsLFxuICAgICNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCAuZm9ybS1yb3cuY2hlY2tib3hMaW5lIGxhYmVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLXJvdy5jaGVja2JveExpbmUgaW5wdXQsXG4gICAgI2VkaXQtYWRkcmVzcy1mb3JtIC5mb3JtLXJvdy5jaGVja2JveExpbmUgaW5wdXQsXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLmZvcm0tcm93LmNoZWNrYm94TGluZSBpbnB1dCxcbiAgICAjUmVnaXN0cmF0aW9uRm9ybUNyZWRlbnRpYWwgLmZvcm0tcm93LmNoZWNrYm94TGluZSBpbnB1dCB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZGlhbG9nLXJlcXVpcmVkLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLmRpYWxvZy1yZXF1aXJlZCxcbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLmRpYWxvZy1yZXF1aXJlZCxcbiAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5kaWFsb2ctcmVxdWlyZWQubm8tcGFkZGluZyxcbiAgICAjZWRpdC1hZGRyZXNzLWZvcm0gLmRpYWxvZy1yZXF1aXJlZC5uby1wYWRkaW5nLFxuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5kaWFsb2ctcmVxdWlyZWQubm8tcGFkZGluZyxcbiAgICAjUmVnaXN0cmF0aW9uRm9ybUNyZWRlbnRpYWwgLmRpYWxvZy1yZXF1aXJlZC5uby1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuZGlhbG9nLXJlcXVpcmVkIC5yZXF1aXJlZC1pbmRpY2F0b3IsXG4gICAgI2VkaXQtYWRkcmVzcy1mb3JtIC5kaWFsb2ctcmVxdWlyZWQgLnJlcXVpcmVkLWluZGljYXRvcixcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAuZGlhbG9nLXJlcXVpcmVkIC5yZXF1aXJlZC1pbmRpY2F0b3IsXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm1DcmVkZW50aWFsIC5kaWFsb2ctcmVxdWlyZWQgLnJlcXVpcmVkLWluZGljYXRvciB7XG4gICAgICBjb2xvcjogIzY2NjsgfVxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5kaWFsb2ctcmVxdWlyZWQgZW0sXG4gICAgI2VkaXQtYWRkcmVzcy1mb3JtIC5kaWFsb2ctcmVxdWlyZWQgZW0sXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLmRpYWxvZy1yZXF1aXJlZCBlbSxcbiAgICAjUmVnaXN0cmF0aW9uRm9ybUNyZWRlbnRpYWwgLmRpYWxvZy1yZXF1aXJlZCBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM2NjY7IH1cbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnRleHQtY2VudGVyLFxuICAjZWRpdC1hZGRyZXNzLWZvcm0gLnRleHQtY2VudGVyLFxuICAjUmVnaXN0cmF0aW9uRm9ybSAudGV4dC1jZW50ZXIsXG4gICNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCAudGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWFyZ2luLXN0aWNreS1maWx0ZXIge1xuICAgIG1hcmdpbi10b3A6IDEwOHB4OyB9XG4gICNlZGl0LWFkZHJlc3MtZm9ybSAuYWRkcmVzcy1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC8qQ29udGFpbmVyIHBhZGRpbmcgc2hvdWxkIGJlIHJlcGxhY2VkIHdpdGggc29tZXRoaW5nIGJldHRlciBhc2FwKi9cbiAgLnBkcFpvb21Qb3Bpbk9wZW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNzB2aDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgICAucGRwWm9vbVBvcGluT3BlbiAud2lkZ2V0LXByb21vLnVuZGVyLW5hdiB7XG4gICAgICB6LWluZGV4OiAzMDAwOyB9XG4gIC5wZHAtbWFpbiAucHJvZHVjdC12YXJpYXRpb25zIHtcbiAgICBtYXJnaW46IDIwcHggMCAwOyB9XG4gIC5wdF9wcm9kdWN0LWRldGFpbHMgLmJyZWFkY3J1bWItY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wdF9wcm9kdWN0LWRldGFpbHMgLmJyZWFkY3J1bWItY29udGFpbmVyIC5icmVhZGNydW1iLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyOHB4O1xuICAgICAgbGVmdDogMTFweDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAucHRfcHJvZHVjdC1kZXRhaWxzIC5icmVhZGNydW1iLWNvbnRhaW5lciAuYnJlYWRjcnVtYi1tb2JpbGUgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucHRfcHJvZHVjdC1kZXRhaWxzIC5icmVhZGNydW1iLWNvbnRhaW5lciAuYnJlYWRjcnVtYiB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogOTElO1xuICAgICAgcGFkZGluZzogMjVweCAwIDE1cHg7XG4gICAgICBtYXJnaW46IC41ZW0gMCAuNWVtIDIuNWVtO1xuICAgICAgaGVpZ2h0OiAyMXB4O1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICAgICAgLnB0X3Byb2R1Y3QtZGV0YWlscyAuYnJlYWRjcnVtYi1jb250YWluZXIgLmJyZWFkY3J1bWIgbGkgc3BhbiwgLnB0X3Byb2R1Y3QtZGV0YWlscyAuYnJlYWRjcnVtYi1jb250YWluZXIgLmJyZWFkY3J1bWIgbGkgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zMXB4OyB9XG4gICAgICAucHRfcHJvZHVjdC1kZXRhaWxzIC5icmVhZGNydW1iLWNvbnRhaW5lciAuYnJlYWRjcnVtYiBsaSBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAucHRfcHJvZHVjdC1kZXRhaWxzIC5icmVhZGNydW1iLWNvbnRhaW5lciAuYnJlYWRjcnVtYiBsaSBzcGFuLmxhc3Qge1xuICAgICAgICAgIGNvbG9yOiAjMDEwMTAxOyB9XG4gIC5wZHAtbWFpbiB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnBkcC1tYWluIC56b29tLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBkcC1tYWluIC5yZWNvbW1lbmRhdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5wZHAtbWFpbiAubW9iaWxlLXBhZ2luYXRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1wcmljZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtYXJnaW46IDIwcHggMCAwOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uID4gZGl2IC5tb2JpbGUtb25seS13cmFwcGVyIHtcbiAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTEgLnByb2R1Y3QtZGVzY3JpcHRpb24gPiBkaXYgLm1vYmlsZS1vbmx5LXdyYXBwZXIgLnByb2R1Y3QtcmV2aWV3c3VtbWFyeSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uID4gZGl2IC5ncm91cC10aXRsZS1yZWYge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTEgLnByb2R1Y3QtZGVzY3JpcHRpb24gLnByb2R1Y3QtcHJpY2UgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LXByaWNlIC5wcmljZS1zYWxlcyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjZDkwZjNiO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1kZXNjcmlwdGlvbiAucHJvZHVjdC1wcmljZSAucHJpY2Utc3RhbmRhcmQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAxM3B4IDE1cHggMCAwO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sge1xuICAgICAgICBvcmRlcjogMjsgfVxuICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTEgLnByb2R1Y3QtZGVzY3JpcHRpb24gLnByb2R1Y3QtZGVzYy1ibG9jayA+IGxpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTEgLnByb2R1Y3QtZGVzY3JpcHRpb24gLnByb2R1Y3QtZGVzYy1ibG9jayA+IGxpLmFjdGl2ZSBzcGFuOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB0b3A6IDQwJTsgfVxuICAgICAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1kZXNjcmlwdGlvbiAucHJvZHVjdC1kZXNjLWJsb2NrID4gbGkgc3BhbiwgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sgPiBsaSBhIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICMwMTAxMDE7IH1cbiAgICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sgLnNpemUtY2hhcnQtbGluayBzcGFuOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0xMDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICB0b3A6IDUwJTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1kZXNjcmlwdGlvbiAucHJvZHVjdC1kZXNjLWJsb2NrIC5zaXplLWNoYXJ0LWxpbmsgc3BhbjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtMTAwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sgLnNpemUtY2hhcnQtbGluay5hY3RpdmUgc3BhbjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRvcDogaW5pdGlhbDsgfVxuICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTEgLnByb2R1Y3QtZGVzY3JpcHRpb24gLnByb2R1Y3QtZGVzYy1ibG9jayAucHJvZHVjdC1kZXNjcmlwdGlvbi1pbm5lciB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sgLnByb2R1Y3QtZGVzY3JpcHRpb24taW5uZXIgcCwgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0xIC5wcm9kdWN0LWRlc2NyaXB0aW9uIC5wcm9kdWN0LWRlc2MtYmxvY2sgLnByb2R1Y3QtZGVzY3JpcHRpb24taW5uZXIgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1hZGQtd2lzaGxpc3Qge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb2wtMSAucHJvZHVjdC1hZGQtd2lzaGxpc3Q6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjkpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAucGRwLW1haW4gLnByb2R1Y3QtaW1hZ2VzLW1vYmlsZSAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1pbWFnZXMtbW9iaWxlIC5iYWRnZSB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29udGVudC5tLW9ubHkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb250ZW50Lm0tb25seSAucHJvZHVjdC1wcmljZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb250ZW50Lm0tb25seSAucHJvZHVjdC1wcmljZSAucHJpY2Utc2FsZXMsXG4gICAgICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbnRlbnQubS1vbmx5IC5wcm9kdWN0LXByaWNlIC5wcmljZS1zdGFuZGFyZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZDkwZjNiO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29udGVudC5tLW9ubHkgLnByb2R1Y3QtcHJpY2UgLnByaWNlLXN0YW5kYXJkIHtcbiAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbnRlbnQubS1vbmx5IC5wcm9kdWN0LXByaWNlIC5wcmljZS1zYWxlcyB7XG4gICAgICAgICAgICBvcmRlcjogMjsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbnRlbnQgLnByb2R1Y3QtYWRkLXRvLWNhcnQgLmludmVudG9yeSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1jb250ZW50IC5wcm9kdWN0LWFkZC10by1jYXJ0IC5pbnZlbnRvcnkudW5hdmFpbGFibGUtcHJvZHVjdCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29udGVudCAucHJvZHVjdC1hZGQtdG8tY2FydCAuaW52ZW50b3J5LnVuYXZhaWxhYmxlLXByb2R1Y3QgLnF1YW50aXR5OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub25lOyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29udGVudCAucHJvZHVjdC1hZGQtdG8tY2FydCAucGRwLWFkZC10by1jYXJ0X2ZpeGVkIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LW5hbWUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAwOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LWNvbC0zIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTMubW9iaWxlLW9ubHktd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTMgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICAgICAucGRwLW1haW4gLnByb2R1Y3QtY29sLTMgLnByb2R1Y3QtcHJpY2UgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1vdXQtb2Ytc3RvY2stbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1vdXQtb2Ytc3RvY2stbW9iaWxlIC5vdXQtb2Ytc3RvY2stYnV0dG9uIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1heC13aWR0aDogNzAlOyB9XG4gICAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSAub3V0LW9mLXN0b2NrX19lcnJvcnMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTM1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LWFkZC10by1jYXJ0IGJ1dHRvbixcbiAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSBidXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBtYXgtd2lkdGg6IDUzJTtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICBtYXJnaW46IDAgMTZweCAwIDA7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hZGQtdG8tY2FydCBidXR0b246aG92ZXIsIC5wZHAtbWFpbiAucHJvZHVjdC1hZGQtdG8tY2FydCBidXR0b246Zm9jdXMsXG4gICAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSBidXR0b246aG92ZXIsXG4gICAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSBidXR0b246Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hZGQtdG8tY2FydCBidXR0b246ZGlzYWJsZWQ6aG92ZXIsIC5wZHAtbWFpbiAucHJvZHVjdC1hZGQtdG8tY2FydCBidXR0b246ZGlzYWJsZWQ6Zm9jdXMsXG4gICAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSBidXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4gICAgICAucGRwLW1haW4gLnByb2R1Y3Qtb3V0LW9mLXN0b2NrLW1vYmlsZSBidXR0b246ZGlzYWJsZWQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDA7IH1cbiAgICAucGRwLW1haW4gLnByb2R1Y3QtdmFyaWF0aW9ucyAuYXR0cmlidXRlLXNpemUge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLnBkcC1tYWluIC5wcm9kdWN0LXZhcmlhdGlvbnMgLmF0dHJpYnV0ZS1zaXplIC5hdmFpbGFibGUtc2l6ZSxcbiAgICAgIC5wZHAtbWFpbiAucHJvZHVjdC12YXJpYXRpb25zIC5hdHRyaWJ1dGUtc2l6ZSAudmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LXZhcmlhdGlvbnMgLmxpc3Qtc2l6ZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBkcC1tYWluIC5wcm9kdWN0LXZhcmlhdGlvbnMgLnNpemUtY2hhcnQtbGluayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDQwcHggMCAwOyB9XG4gICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUgLmxhYmVsLFxuICAgIC5wZHAtbWFpbiAuaW52ZW50b3J5IC5xdWFudGl0eSBzZWxlY3QjUXVhbnRpdHksXG4gICAgLnBkcC1tYWluIC5xdWFudGl0eSBzZWxlY3Qge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAucGRwLW1haW4gLmF0dHJpYnV0ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUgLm1vYmlsZS1jdXJyZW50LXNpemU6bm90KDplbXB0eSkge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRlZGVkO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTsgfVxuICAgICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUgLmxhYmVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAucGRwLW1haW4gLmF0dHJpYnV0ZSAubGFiZWw6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAucGRwLW1haW4gLmF0dHJpYnV0ZS5zaXplIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICBib3R0b206IDE2cHg7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjQlIC0gMTZweCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUuc2l6ZTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3JlZF9hcnJvd19kb3duLnN2Zykgbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB0b3A6IDM4JTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAucGRwLW1haW4gLmludmVudG9yeSB7XG4gICAgICB3aWR0aDogMTUlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjUlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDsgfVxuICAgICAgLnBkcC1tYWluIC5pbnZlbnRvcnk6YWZ0ZXIge1xuICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5wZHAtbWFpbiAuaW52ZW50b3J5IC5xdWFudGl0eSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgICAucGRwLW1haW4gLmludmVudG9yeSAucXVhbnRpdHk6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3JlZF9hcnJvd19kb3duLnN2Zykgbm8tcmVwZWF0O1xuICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIC5wZHAtbWFpbiAuaW52ZW50b3J5IC5xdWFudGl0eSBzZWxlY3QjUXVhbnRpdHkge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGhlaWdodDogNThweDtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucGRwLW1haW4gLmludmVudG9yeSAucXVhbnRpdHkgc2VsZWN0I1F1YW50aXR5OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LWFkZC13aXNobGlzdCB7XG4gICAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LXNoYXJlIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAucGRwLW1haW4gLnByb2R1Y3QtYWN0aW9ucyAucHJvZHVjdC1zaGFyZSAuYWRkdGhpc19idXR0b25fcGludGVyZXN0LFxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LXNoYXJlIC5hZGR0aGlzX2J1dHRvbl9nb29nbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wZHAtbWFpbiAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LXNoYXJlIC5hZGR0aGlzX3Rvb2xib3ggYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDsgfVxuICAgIC5wZHAtbWFpbiAuY29tcGxldGUtdGhlLXNldCAuYWRkLXRvLWNhcnQgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9XG4gICAgICAucGRwLW1haW4gLmNvbXBsZXRlLXRoZS1zZXQgLmFkZC10by1jYXJ0IGJ1dHRvbjphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xN3B4OyB9XG4gICAgLnBkcC1tYWluIC5jb21wbGV0ZS10aGUtc2V0IC5hdHRyaWJ1dGUuc2l6ZSAuYXZhaWxhYmxlLXNpemUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAucGRwLW1haW4gLmNvbXBsZXRlLXRoZS1zZXQgLmF0dHJpYnV0ZSAubW9iaWxlLWN1cnJlbnQtc2l6ZTpub3QoOmVtcHR5KSB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7IH1cbiAgICAucGRwLW1haW4gLnN3YXRjaGVzLXNpemUtbW9iaWxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgNDBweCAwIDEwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMtc2l6ZS1tb2JpbGUgLnNpemUtdW5hdmFpbGFibGUge1xuICAgICAgICBjb2xvcjogbGlnaHRncmV5OyB9XG4gICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUgLmxhYmVsICsgdWwsXG4gICAgLnBkcC1tYWluIC5hdHRyaWJ1dGUgLmxhYmVsICsgZGl2IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3Ige1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgM3B4OyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXS5zZWxlY3RlZCwgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICB3aWR0aDogMzZweDsgfVxuICAgICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXS5zZWxlY3RlZCAuc3dhdGNoYW5jaG9yLCAucGRwLW1haW4gLnN3YXRjaGVzLkNvbG9yIGxpW2RhdGEtY29sb3I9XCJCaWFuY29cIl06aG92ZXIgLnN3YXRjaGFuY2hvciB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyB9XG4gICAgICAgICAgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdLnNlbGVjdGVkOmJlZm9yZSwgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2NjYztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXSAuc3dhdGNoYW5jaG9yIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdIC5zd2F0Y2hhbmNob3I6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTsgfVxuICAgICAgICAucGRwLW1haW4gLnN3YXRjaGVzLkNvbG9yIGxpOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgI2ZmZjtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICB6LWluZGV4OiAyMDsgfVxuICAgICAgICAucGRwLW1haW4gLnN3YXRjaGVzLkNvbG9yIGxpLnNlbGVjdGVkIGEuc3dhdGNoYW5jaG9yLCAucGRwLW1haW4gLnN3YXRjaGVzLkNvbG9yIGxpOmhvdmVyIGEuc3dhdGNoYW5jaG9yIHtcbiAgICAgICAgICBib3JkZXI6IDA7IH1cbiAgICAgICAgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaS5zZWxlY3RlZDphZnRlciwgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgd2lkdGg6IDM0cHg7IH1cbiAgICAgICAgLnBkcC1tYWluIC5zd2F0Y2hlcy5Db2xvciBsaTpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMC44OyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGkgc3Bhbi5zd2F0Y2hhbmNob3Ige1xuICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmOyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGkgYS5zd2F0Y2hhbmNob3Ige1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAgIC5wZHAtbWFpbiAuc3dhdGNoZXMuQ29sb3IgbGkuc2VsZWN0ZWQtdmFsdWUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBkcC1tYWluIC5wcm9kdWN0LXZhcmlhdGlvbnMgLmF0dHJpYnV0ZS5zaXplIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY29udGVudC1hc3NldCAucHJvZHVjdC1vZmZlcnMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDEwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIGxpLmljb24teWVsbG93OmJlZm9yZSwgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIGxpLmljb246YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MnB4IC02NXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MXB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KSB0cmFuc2xhdGUoMTBweCwgMCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAgICAgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIGxpLmljb24teWVsbG93OmJlZm9yZSwgLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHVsIGxpLmljb246YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MnB4IC02NXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAgIC5jb250ZW50LWFzc2V0IC5wcm9kdWN0LW9mZmVycyB1bCBsaSAub25lLWxpbmUtZGVzY3JpcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLnByb2R1Y3QtYXR0cmlidXRlcy13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7IH1cbiAgICAucHJvZHVjdC1hdHRyaWJ1dGVzLXdyYXBwZXIgLmF0dHJpYnV0ZS5zaXplIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgLmNvbXBsZXRlLXRoZS1zZXQ6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTsgfVxuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0Om50aC1jaGlsZChvZGQpLCAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogaW5oZXJpdDsgfVxuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0Om50aC1jaGlsZChldmVuKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAuY29sdW1uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4uYXR0cmlidXRlLnNpemUsIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4ucXVhbnRpdHkge1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAuY29sdW1uLmF0dHJpYnV0ZS5zaXplIC5kLW9ubHksIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4ucXVhbnRpdHkgLmQtb25seSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAuY29sdW1uLmF0dHJpYnV0ZS5zaXplIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4uYXR0cmlidXRlLnNpemUgLmxhYmVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4uYXR0cmlidXRlLnNpemU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2x1bW4ucXVhbnRpdHkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2xvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDsgfVxuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5wcmljZS1uYW1lIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAucHJpY2UtbmFtZS5jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDE1cHggYXV0bzsgfVxuICAgICAgLmNvbXBsZXRlLXRoZS1zZXQgLnByb2R1Y3RzLXNldCAucHJvZHVjdC1zZXQgLnByaWNlLW5hbWUgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDU2cHg7IH1cbiAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5wcmljZS1uYW1lIC5wcm9kdWN0LXNhbGVzLXByaWNlLFxuICAgICAgLmNvbXBsZXRlLXRoZS1zZXQgLnByb2R1Y3RzLXNldCAucHJvZHVjdC1zZXQgLnByaWNlLW5hbWUgLnByb2R1Y3Qtc3RhbmRhcmQtcHJpY2UsXG4gICAgICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAucHJpY2UtbmFtZSAucHJpY2Utc2FsZXMge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5wcmljZS1uYW1lIC5wcm9kdWN0LXN0YW5kYXJkLXByaWNlIHtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgLmNvbXBsZXRlLXRoZS1zZXQgLnByb2R1Y3RzLXNldCAucHJvZHVjdC1zZXQgLmFkZC10by1jYXJ0LmNvbHVtbiBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuY29tcGxldGUtdGhlLXNldCAuYWRkLXRvLWNhcnQgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDI0cHg7IH1cbiAgICAuY29tcGxldGUtdGhlLXNldCAuYWRkLXRvLWNhcnQgYnV0dG9uOmFmdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xN3B4OyB9XG4gIC5jb21wbGV0ZS10aGUtc2V0IC5hdHRyaWJ1dGUuc2l6ZSAudmFsdWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5hdHRyaWJ1dGUuc2l6ZSAudmFsdWU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTM2MnB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5hdHRyaWJ1dGUuc2l6ZSAudmFsdWU6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0zNjJweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogOXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLmNvbXBsZXRlLXRoZS1zZXQgLmF0dHJpYnV0ZS5zaXplIC5hdmFpbGFibGUtc2l6ZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmNvbXBsZXRlLXRoZS1zZXQgLmF0dHJpYnV0ZS5zaXplOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb21wbGV0ZS10aGUtc2V0IHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLyp3aWR0aDogYXV0bzsqL1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4ucXVhbnRpdHkge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLnF1YW50aXR5OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0zNjJweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGhlaWdodDogOXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5xdWFudGl0eTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTM2MnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgIC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4ucXVhbnRpdHkgc2VsZWN0IHtcbiAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICBoZWlnaHQ6IDU1cHg7IH1cbiAgICAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLnF1YW50aXR5IGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBkcC1tYWluIGJ1dHRvbiNhZGQtdG8tY2FydFtkaXNhYmxlZF06YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5wcm9kdWN0LWNvbG9ycyAuaXRlbS1jb2xvciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLnByb2R1Y3QtY29sb3JzIC5pdGVtLWNvbG9yIC5zd2F0Y2hhbmNob3Ige1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDsgfVxuICAjdW5hdmFpbGFibGUtZGlhbG9nLnVpLWRpYWxvZy1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA0MHB4IDQwcHggODBweDsgfVxuICAuZGlhbG9nUHJvZHVjdC51aS1kaWFsb2cge1xuICAgIG1hcmdpbjogMCA1JTtcbiAgICBtYXgtd2lkdGg6IDkwJTsgfVxuICAuZGlhbG9nUHJvZHVjdCAuZm9ybS1iYWNraW5zdG9jayBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDI2MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuZGlhbG9nUHJvZHVjdCAucHJvZHVjdC1pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuZGlhbG9nUHJvZHVjdCAucHJvZHVjdC1pbWcgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMjE1cHg7IH1cbiAgLmRpYWxvZ1Byb2R1Y3QgLmVycm9yIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgLmRpYWxvZ1Byb2R1Y3QgLm5ld3NsZXR0ZXItZ2VuZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIC5kaWFsb2dQcm9kdWN0IC5iaXNfZW1haWwge1xuICAgIGhlaWdodDogMzVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhOyB9XG4gIC5kaWFsb2dQcm9kdWN0IC5idXR0b24uYmlzX21lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnRpdGxlLWJhY2tpbnN0b2NrIHtcbiAgICBmb250LXNpemU6IDMwcHg7IH1cbiAgLnRleHQtYmFja2luc3RvY2sge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIC5kaWFsb2dQcm9kdWN0IC5mb3JtLWJhY2tpbnN0b2NrIGlucHV0LFxuICAuZGlhbG9nUHJvZHVjdCAuZm9ybS1iYWNraW5zdG9jayBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5kaWFsb2dQcm9kdWN0IC5mb3JtLWJhY2tpbnN0b2NrIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgLmRpYWxvZ1Byb2R1Y3QgLmZvcm0tYmFja2luc3RvY2sgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmRpYWxvZ1Byb2R1Y3QgLmZvcm0tYmFja2luc3RvY2sgLm5ld3NsZXR0ZXItZ2VuZGVyIHtcbiAgICBtYXJnaW46IDI1cHggMDsgfVxuICAuZGlhbG9nUHJvZHVjdCAuZm9ybS1iYWNraW5zdG9jayAuYmlzX3N1Ym1pdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgICAuZGlhbG9nUHJvZHVjdCAuZm9ybS1iYWNraW5zdG9jayAuYmlzX3N1Ym1pdDphZnRlciB7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgIGJvdHRvbTogMTBweDsgfVxuICAucGRwLW1haW4gLmF0dHJpYnV0ZSAuc2l6ZS1jaGFydC1saW5rIGEuYXR0cmlidXRlY29udGVudGxpbmsudW5hdmFpbGFibGVsaW5rIHtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmRpYWxvZ1Byb2R1Y3QgLmZvcm0tYmFja2luc3RvY2sgLmR3ZnJtX2JhY2tpbnN0b2NrX25ld3NsZXR0ZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJvcmRlci1jb2xvcjogI2FhYTsgfVxuICAuZGlhbG9nUHJvZHVjdCAuZm9ybS1iYWNraW5zdG9jayAubGFiZWxfY2hlY2sge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMjNweDsgfVxuICAuZm9ybS1iYWNraW5zdG9jayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcm9kdWN0LWFkZC10by1jYXJ0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnByb2R1Y3QtdmFyaWF0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucHJvZHVjdC12YXJpYXRpb25zIC5zaXplIHtcbiAgICAgIHotaW5kZXg6IDEwMTsgfVxuICAubW9iaWxlLW9ubHktd3JhcHBlciAubS1vbmx5IC5lcnJvci1zaXplLFxuICAubW9iaWxlLW9ubHktd3JhcHBlciAubS1vbmx5IC5lcnJvci11bmF2YWlsYWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5MGYzYjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogNnB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDkycHg7XG4gICAgei1pbmRleDogMTAxO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDIxcHg7IH1cbiAgICAubW9iaWxlLW9ubHktd3JhcHBlciAubS1vbmx5IC5lcnJvci1zaXplOjphZnRlcixcbiAgICAubW9iaWxlLW9ubHktd3JhcHBlciAubS1vbmx5IC5lcnJvci11bmF2YWlsYWJsZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxNXB4IHNvbGlkICNkOTBmM2I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xM3B4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAubW9iaWxlLW9ubHktd3JhcHBlciAubS1vbmx5IC5lcnJvci1zaXplOjphZnRlciB7XG4gICAgbGVmdDogMTElOyB9XG4gIC5tb2JpbGUtb25seS13cmFwcGVyIC5tLW9ubHkgLmVycm9yLXVuYXZhaWxhYmxlOjphZnRlciB7XG4gICAgbGVmdDogMzMlOyB9XG4gIC5tLW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG4gICAgc2VsZWN0OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucHJvZHVjdC1saXN0aW5nLTF4NCB1bC5zZWFyY2gtcmVzdWx0LWl0ZW1zIC5ncmlkLXRpbGUge1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucHJvZHVjdC1saXN0aW5nLTF4NCB1bC5zZWFyY2gtcmVzdWx0LWl0ZW1zIC5ncmlkLXRpbGU6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAucHJvZHVjdC1saXN0aW5nLTF4NCB1bC5zZWFyY2gtcmVzdWx0LWl0ZW1zIC5ncmlkLXRpbGU6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5wcm9kdWN0LWxpc3RpbmctMXg0IHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZTpudGgtY2hpbGQobiszKSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wcm9kdWN0LWltYWdlcy1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcm9kdWN0LWxpc3Rpbmcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnJlY29tbWVuZGF0aW9ucyAuZ3JpZC10aWxlIC5wcm9kdWN0LXRpbGUgLm0taWNvbi13aXNobGlzdCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAucmVjb21tZW5kYXRpb25zIC5ncmlkLXRpbGUgLnByb2R1Y3QtdGlsZTpob3ZlciAuYy1pY29uLXdpc2hsaXN0LFxuICAucmVjb21tZW5kYXRpb25zIC5ncmlkLXRpbGUgLnByb2R1Y3QtdGlsZTpob3ZlciAuYy1pY29uLXdpc2hsaXN0LS1maWxsZWQge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLnByb2R1Y3QtdGlsZTpob3ZlciAuYy1pY29uLXdpc2hsaXN0LFxuICAucHJvZHVjdC10aWxlOmhvdmVyIC5jLWljb24td2lzaGxpc3QtLWZpbGxlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5tLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGVkOyB9XG4gIC5tLW5hdmlnYXRpb25faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLm0tbmF2aWdhdGlvbl9pdGVtIGEge1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tLW5hdmlnYXRpb25faXRlbS0taXMtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAwOyB9XG4gICAgLm0tbmF2aWdhdGlvbl9pdGVtLS1pcy1yaWdodCAuYy1saW5rIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm0tbmF2aWdhdGlvbl9pdGVtLS1pcy1yaWdodCAuYy1zcGFuX2Fycm93LS1pcy1sZWZ0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgIC5tLW5hdmlnYXRpb25faXRlbS0taXMtcmlnaHQgLmMtc3Bhbl9hcnJvdy0taXMtcmlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgLm0tbmF2aWdhdGlvbl9pdGVtIC5jLXNwYW5fYXJyb3ctLWlzLWxlZnQ6YWZ0ZXIsXG4gIC5tLW5hdmlnYXRpb25faXRlbSAuYy1zcGFuX2Fycm93LS1pcy1yaWdodDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtNDAxcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogOXB4O1xuICAgIGhlaWdodDogMTdweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgIC5tLW5hdmlnYXRpb25faXRlbSAuYy1zcGFuX2Fycm93LS1pcy1sZWZ0OmFmdGVyLFxuICAgIC5tLW5hdmlnYXRpb25faXRlbSAuYy1zcGFuX2Fycm93LS1pcy1yaWdodDphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtNDAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDlweDtcbiAgICAgIGhlaWdodDogMTdweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAubS1uYXZpZ2F0aW9uX2l0ZW0tLWlzLWxlZnQgLmMtc3Bhbl9hcnJvdy0taXMtbGVmdDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpOyB9XG4gIC5tLW5hdmlnYXRpb25faXRlbSAuYy1zcGFuX2Fycm93LS1pcy1yaWdodDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAubS1uYXZpZ2F0aW9uIC5jLXNwYW5fYXJyb3ctLWlzLWxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAubS1uYXZpZ2F0aW9uIC5jLXNwYW5fYXJyb3ctLWlzLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAubS1ibG9ja19tZXRpbWUgLm1vYmlsZS1vbmx5LXdyYXBwZXIgLm1vYmlsZS1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgLyoqXG4gKiBUaGUgY29kZSBiZWxvdyBvdmVycmlkZSBhIHN0eWxlIHRoYXQgY29tZXMgZnJvbSBBQlRhc3R5XG4gKi9cbiAgI3BkcE1haW4gPiBESVYucHJvZHVjdC1pbWFnZS1jb250YWluZXIucHJvZHVjdC1jb2wtMSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAubG92YWJsZS1wcm9kdWN0LWFkZGVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAyO1xuICAgIHBhZGRpbmc6IDI0cHggMTZweCAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gICAgLmxvdmFibGUtcHJvZHVjdC1hZGRlZCAuY2xvc2UtY29udGludWUtc2hvcHBpbmcge1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uX19jbG9zZS5wbmcpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICB0b3A6IDVweDtcbiAgICAgIHJpZ2h0OiA3cHg7IH1cbiAgICAubG92YWJsZS1wcm9kdWN0LWFkZGVkIC5jb250aW51ZS1zaG9wcGluZyxcbiAgICAubG92YWJsZS1wcm9kdWN0LWFkZGVkIC52aWV3LWJhZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5sb3ZhYmxlLXByb2R1Y3QtYWRkZWQgLmNvbnRpbnVlLXNob3BwaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgI2d1aWRlLWRlcy10YWlsbGVzIC5hY2NvcmRlb24gLnNvdXMtbWVudSAudGFibGUtd3JhcCAudGFibGUtY29udGVudC1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAjZ3VpZGUtZGVzLXRhaWxsZXMgLmFjY29yZGVvbiAuc291cy1tZW51IC50YWJsZS13cmFwIC50YWJsZS1jb250ZW50LXNjcm9sbCAudGFibGUtcm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgI2d1aWRlLWRlcy10YWlsbGVzIC5hY2NvcmRlb24gLnNvdXMtbWVudSAjYnVzdGUgLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiA2MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDlkOWQ5OyB9XG4gIC5yZWZpbmVtZW50LWhlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAzNnB4OyB9XG4gIC5wdF9wcm9kdWN0LXNlYXJjaC1yZXN1bHQgI3NlY29uZGFyeSB7XG4gICAgei1pbmRleDogMTU7IH1cbiAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMTVweCAwIDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7IH1cbiAgICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUuc2Nyb2xsLXN0aWNreSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlID4gZGl2Om50aC1jaGlsZCgyKTo6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3JpZ2h0LWFycm93LnBuZykgMCAwIG5vLXJlcGVhdCB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlID4gZGl2LFxuICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSA+IGRpdiBzZWxlY3Qge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7IH1cbiAgICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgPiBkaXYgc2VsZWN0IHtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSAuZmlsdGVyaW5nOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZmlsdGVyLW1vYmlsZS5wbmcpIDAgMCBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIC5maWx0ZXJpbmcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIGhlaWdodDogNzNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAxM3B4KTsgfVxuICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSAuc29ydC1ieSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDczcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgbWFyZ2luOiAwIDEycHggMCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMTNweCk7IH1cbiAgICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSAuc29ydC1ieSAjZ3JpZC1zb3J0LWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7IH1cbiAgICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgLnNvcnQtYnkgZm9ybSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSAuc29ydC1ieSBmb3JtIGZpZWxkc2V0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIC5maWx0ZXJpbmcuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIC5maWx0ZXJpbmcuYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDEwcHggMTBweCAwO1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDsgfVxuICAjc2Vjb25kYXJ5IC5icmVhZGNydW1iIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDI1cHggMCAxNXB4O1xuICAgIG1hcmdpbjogMC41ZW07XG4gICAgaGVpZ2h0OiAyMXB4O1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgd2lkdGg6IDk3JTsgfVxuICAgICNzZWNvbmRhcnkgLmJyZWFkY3J1bWIgc3BhbiwgI3NlY29uZGFyeSAuYnJlYWRjcnVtYiBhIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzFweDsgfVxuICAgICNzZWNvbmRhcnkgLmJyZWFkY3J1bWIgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5yZWZpbmVtZW50LlRhaWxsZXMuaW5mby1yZWZpbmVtZW50IHVsIGEsIC5yZWZpbmVtZW50LlNpemVzLmluZm8tcmVmaW5lbWVudCB1bCBhLCAucmVmaW5lbWVudC5UYWdsaWUuaW5mby1yZWZpbmVtZW50IHVsIGEge1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICB3aWR0aDogNjZweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbjogMCAxcHg7XG4gICAgZm9udC1zaXplOiAyMXB4OyB9XG4gIC5yZWZpbmVtZW50LlRhaWxsZXMgLmZpbHRlci1ndWlkZS1saW5rOmJlZm9yZSwgLnJlZmluZW1lbnQuU2l6ZXMgLmZpbHRlci1ndWlkZS1saW5rOmJlZm9yZSwgLnJlZmluZW1lbnQuVGFnbGllIC5maWx0ZXItZ3VpZGUtbGluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA3cHggLTEzNHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDMxcHg7XG4gICAgaGVpZ2h0OiAzMXB4O1xuICAgIHRvcDogLTdweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAucmVmaW5lbWVudC5UYWlsbGVzIC5maWx0ZXItZ3VpZGUtbGluazpiZWZvcmUsIC5yZWZpbmVtZW50LlNpemVzIC5maWx0ZXItZ3VpZGUtbGluazpiZWZvcmUsIC5yZWZpbmVtZW50LlRhZ2xpZSAuZmlsdGVyLWd1aWRlLWxpbms6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwN3B4IC0xMzRweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMzFweDtcbiAgICAgIGhlaWdodDogMzFweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAucmVmaW5lbWVudC5UYWlsbGVzIC5zZWxlY3RlZCBhLCAucmVmaW5lbWVudC5TaXplcyAuc2VsZWN0ZWQgYSwgLnJlZmluZW1lbnQuVGFnbGllIC5zZWxlY3RlZCBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyB9XG4gIC5yZWZpbmVtZW50LlRhaWxsZXMgLnRvZ2dsZS1jb250ZW50IHVsIGxpLCAucmVmaW5lbWVudC5TaXplcyAudG9nZ2xlLWNvbnRlbnQgdWwgbGksIC5yZWZpbmVtZW50LlRhZ2xpZSAudG9nZ2xlLWNvbnRlbnQgdWwgbGkge1xuICAgIHdpZHRoOiBjYWxjKCAoMTAwJSAvIDYpIC0gMTBweCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5yZWZpbmVtZW50LkZvcm1lcyAuZmlsdGVyLWd1aWRlLWxpbms6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NnB4IC0xMzRweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAzMXB4O1xuICAgIGhlaWdodDogMzFweDtcbiAgICB0b3A6IC03cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgLnJlZmluZW1lbnQuRm9ybWVzIC5maWx0ZXItZ3VpZGUtbGluazpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjY2cHggLTEzNHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAzMXB4O1xuICAgICAgaGVpZ2h0OiAzMXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5yZWZpbmVtZW50IC5maWx0ZXItZ3VpZGUtbGluayB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGhlaWdodDogNDFweDtcbiAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5yZWZpbmVtZW50IC50b2dnbGUtY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5yZWZpbmVtZW50IC50b2dnbGUtY29udGVudCB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGEge1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5yZWZpbmVtZW50IC50b2dnbGUgc3BhbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5yZWZpbmVtZW50cyAuaW5mby1yZWZpbmVtZW50IHVsID4gbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IDBweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpLnNlbGVjdGVkOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTFweCAtMzc5cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICAgLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaS5zZWxlY3RlZDpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5MXB4IC0zNzlweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaS5jbGVhci1maWx0ZXItbW9iaWxlOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGEge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaSBhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAyMHB4OyB9XG4gIC5yZWZpbmVtZW50cyAuQ29sb3JzLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZmlsdGVyLW9wZW4gLmNsZWFyLWFsbC1maWx0ZXJzIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDIwcHggMThweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5maWx0ZXItb3BlbiAuY2xlYXItYWxsLWZpbHRlcnMgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuZmlsdGVyLW9wZW4gLmNsZWFyLWFsbC1maWx0ZXJzIGE6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwOyB9XG4gIC5wcm9kdWN0LXRpbGUgLnByb2R1Y3QtcHJpY2luZyA+IC5wcm9kdWN0LWRpc2NvdW50ZWQtcHJpY2UgLnByb2R1Y3Qtc3RhbmRhcmQtcHJpY2UsXG4gIC5wcm9kdWN0LXRpbGUgLnByb2R1Y3QtcHJpY2luZyA+IC5wcm9kdWN0LWRpc2NvdW50ZWQtcHJpY2UgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5wcm9kdWN0LXRpbGUgLnByb2R1Y3QtcHJpY2luZyA+IC5wcm9kdWN0LWRpc2NvdW50ZWQtcHJpY2UgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucHJvZHVjdC10aWxlIC5wcm9kdWN0LW5hbWUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAucHJvZHVjdC10aWxlIC5wcm9kdWN0LW5hbWUgYSB7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAucHJvZHVjdC10aWxlIC5wcm9kdWN0LXByaWNpbmcgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgLnByb2R1Y3QtdGlsZSAuc3dpcGVyLWNvbnRhaW5lci5jYXRhbG9ndWUtcHJvZHVjdC1pdGVtIC5zd2lwZXItd3JhcHBlciwgLnByb2R1Y3QtdGlsZSAuc3dpcGVyLWNvbnRhaW5lci5jYXRhbG9ndWUtcHJvZHVjdC1pdGVtIC5zd2lwZXItc2xpZGUge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmxvYWRlZFN3aXBlciAuc3dpcGVyLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXRpbGUgLnByb2R1Y3QtbmFtZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBib3JkZXItdG9wOiBub25lOyB9XG4gIC5yZWNvbW1lbmRhdGlvbnMgLnNpemUtaG92ZXItYXJlYS1wZXJzb25hbGl6ZWQge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gICAgLnJlY29tbWVuZGF0aW9ucyAuc2l6ZS1ob3Zlci1hcmVhLXBlcnNvbmFsaXplZCAucHJvZHVjdC1jb2xvcnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgLnJlY29tbWVuZGF0aW9ucyBwLFxuICAucGRwLW1haW4gLmNvbXBsZXRlLXRoZS1zZXQgaDMsXG4gIC5wZHAtbWFpbiAuY29tcGxldGUtdGhlLXNldCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgdWwuc2VhcmNoLXJlc3VsdC1pdGVtcyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIycHgpO1xuICAgIG1hcmdpbjogMCA1cHggMjVweCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZSAuc3dpcGVyLWFycm93cyB7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMjhweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAxNHB4KTtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cbiAgICAgIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZSAuc3dpcGVyLWFycm93cy5zd2lwZXItcHJldiB7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3N3aXBlci9zbGlkZXItcHJldi1taW5pQDJ4LnBuZ1wiKSAwIDAgbm8tcmVwZWF0IHRyYW5zcGFyZW50OyB9XG4gICAgICB1bC5zZWFyY2gtcmVzdWx0LWl0ZW1zIC5ncmlkLXRpbGUgLnN3aXBlci1hcnJvd3Muc3dpcGVyLW5leHQge1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvc3dpcGVyL3NsaWRlci1uZXh0LW1pbmlAMngucG5nXCIpIDAgMCBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7IH1cbiAgICAgIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZSAuc3dpcGVyLWFycm93cy5kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuMzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZTpudGgtY2hpbGQoM24rMCkge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zZWFyY2gtcmVzdWx0LWNvbnRlbnQ6bm90KC5jb2x1bXMtMikgdWwuc2VhcmNoLXJlc3VsdC1pdGVtcyAuZ3JpZC10aWxlOm50aC1jaGlsZCgzbiswKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLnByb2R1Y3QtY29sb3JzIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZmlsdGVyLXNvcnQtbW9iaWxlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRlZGVkO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgLmZpbHRlcmluZy5hY3RpdmU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZmlsdGVyX2JsYWNrLnN2Zykgbm8tcmVwZWF0O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogMjBweDsgfVxuICAucmVmaW5lbWVudCBwLnRvZ2dsZS5leHBhbmRlZDphZnRlciwgLnJlZmluZW1lbnQgaDMudG9nZ2xlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtZGltLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNXB4IC0xOTNweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM3MXB4IDM0NnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxODBkZWcpO1xuICAgIHRvcDogMjNweDsgfVxuICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgPiBkaXYsXG4gICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSA+IGRpdiBzZWxlY3Qge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIHtcbiAgICBtYXJnaW46IDAgMCAwIC01cHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuICAjc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgLmZpbHRlcmluZy5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDsgfVxuICAgICNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSAuZmlsdGVyaW5nLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAubW9iaWxlLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLXN3aXRjaCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC5tb2JpbGUtcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoLnN3aXBlci1hY3RpdmUtc3dpdGNoIHtcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrOyB9XG4gIC5yZWZpbmVtZW50IC50b2dnbGUge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5maWx0ZXItb3BlbiAucmVmaW5lbWVudDpudGgtY2hpbGQoNCkgLnRvZ2dsZSxcbiAgLnJlZmluZW1lbnQ6bnRoLWNoaWxkKDQpIC50b2dnbGUge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLmZpbHRlci1zb3J0LW1vYmlsZSAuZmlsdGVyaW5nIC5hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5yZWZpbmVtZW50cyAuZGlhbG9naWZ5LmZpbHRlci1ndWlkZS1saW5rLmF0dHJpYnV0ZWNvbnRlbnRsaW5rIHtcbiAgICB0b3A6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDEuMnJlbTsgfVxuICAucmVmaW5lbWVudC5UYWlsbGVzLmluZm8tcmVmaW5lbWVudCB1bCBhLFxuICAucmVmaW5lbWVudC5UYWdsaWUuaW5mby1yZWZpbmVtZW50IHVsIGEsXG4gIC5yZWZpbmVtZW50LlNpemVzLmluZm8tcmVmaW5lbWVudCB1bCBhIHtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgZm9udC1zaXplOiAxLjA1cmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAucmVmaW5lbWVudCBwLnRvZ2dsZTphZnRlcixcbiAgLnJlZmluZW1lbnQgaDMudG9nZ2xlOmFmdGVyLFxuICAucmVmaW5lbWVudCBwLnRvZ2dsZS5leHBhbmRlZDphZnRlcixcbiAgLnJlZmluZW1lbnQgaDMudG9nZ2xlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICByaWdodDogMTBweDsgfVxuICAucmVmaW5lbWVudC5UYWlsbGVzIHVsIGxpLFxuICAucmVmaW5lbWVudC5UYWdsaWUgdWwgbGkge1xuICAgIHdpZHRoOiBjYWxjKCAyNSUgLSAxMHB4KTtcbiAgICBtYXJnaW46IDAgMTBweCAxMHB4IDA7IH1cbiAgLnJlZmluZW1lbnQuVGFpbGxlcy5pbmZvLXJlZmluZW1lbnQgdWwgYSxcbiAgLnJlZmluZW1lbnQuVGFnbGllLmluZm8tcmVmaW5lbWVudCB1bCBhIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaW5mby1yZWZpbmVtZW50IC50b2dnbGUtY29udGVudCB7XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbiAgLmZpbHRlci1pbm5lciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuICAgIC5maWx0ZXItaW5uZXIgLnJlZmluZW1lbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmZpbHRlci1pbm5lci5hY3RpdmUge1xuICAgICAgbWFyZ2luOiAwIC01cHg7XG4gICAgICBwYWRkaW5nOiAwIDVweDsgfVxuICAgIC5maWx0ZXItaW5uZXIuc3RpY2t5LWZpbHRlciB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDk2cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgICAuZmlsdGVyLWlubmVyLnN0aWNreS1maWx0ZXIgLnJlZmluZW1lbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5maWx0ZXItaW5uZXIuc3RpY2t5LWZpbHRlciAucmVmaW5lbWVudCAudG9nZ2xlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAuZmlsdGVyLW9wZW4gLmNsZWFyLWFsbC1maWx0ZXJzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuY2xlYXItYWxsLWZpbHRlcnMge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAuY2xlYXItYWxsLWZpbHRlcnMgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAxMnB4IDAgMTJweCA1NXB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5jbGVhci1hbGwtZmlsdGVycyBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICB6LWluZGV4OiA1MDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25fX2Nsb3NlLnBuZ1wiKSBjZW50ZXIgbm8tcmVwZWF0OyB9XG4gIC5yZWZpbmVtZW50IHVsIHtcbiAgICBtYXJnaW4tdG9wOiAtMzBweDsgfVxuICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpLmNsZWFyLWZpbHRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKSB7XG4gICAgaGVpZ2h0OiA0NnB4O1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDsgfVxuICAgIC5yZWZpbmVtZW50cyAuQ29sb3JpIHVsIGxpOm5vdCguY2xlYXItZmlsdGVyKTpub3QoLmNsZWFyLWZpbHRlci1tb2JpbGUpOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGJvcmRlcjogNXB4IHNvbGlkICNmZmY7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKS5zZWxlY3RlZCwgLnJlZmluZW1lbnRzIC5Db2xvcmkgdWwgbGk6bm90KC5jbGVhci1maWx0ZXIpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSk6aG92ZXIge1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKS5zZWxlY3RlZDphZnRlciwgLnJlZmluZW1lbnRzIC5Db2xvcmkgdWwgbGk6bm90KC5jbGVhci1maWx0ZXIpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSk6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDQzcHg7XG4gICAgICAgIHdpZHRoOiA0M3B4OyB9XG4gICAgLnJlZmluZW1lbnRzIC5Db2xvcmkgdWwgbGk6bm90KC5jbGVhci1maWx0ZXIpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSk6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC44OyB9XG4gICAgLnJlZmluZW1lbnRzIC5Db2xvcmkgdWwgbGk6bm90KC5jbGVhci1maWx0ZXIpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSkuY2xlYXItZmlsdGVyOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKTpub3QoLmNsZWFyLWZpbHRlcikgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLnJlZmluZW1lbnRzIC5Db2xvcmkgdWwgbGk6bm90KC5jbGVhci1maWx0ZXIpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSkuc2VhcmNoQ29sb3JJRHMtMiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKS5zZWFyY2hDb2xvcklEcy0yOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNjY2NjY2M7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5yZWZpbmVtZW50cyAuQ29sb3JpIHVsIGxpOm5vdCguY2xlYXItZmlsdGVyKTpub3QoLmNsZWFyLWZpbHRlci1tb2JpbGUpLnNlYXJjaENvbG9ySURzLTIuc2VsZWN0ZWQ6YmVmb3JlLCAucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKS5zZWFyY2hDb2xvcklEcy0yOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgd2lkdGg6IDMycHg7IH1cbiAgICAgIC5yZWZpbmVtZW50cyAuQ29sb3JpIHVsIGxpOm5vdCguY2xlYXItZmlsdGVyKTpub3QoLmNsZWFyLWZpbHRlci1tb2JpbGUpLnNlYXJjaENvbG9ySURzLTIuc2VsZWN0ZWQ6YWZ0ZXIsIC5yZWZpbmVtZW50cyAuQ29sb3JpIHVsIGxpOm5vdCguY2xlYXItZmlsdGVyKTpub3QoLmNsZWFyLWZpbHRlci1tb2JpbGUpLnNlYXJjaENvbG9ySURzLTI6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjY2NjY2NjO1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgIHdpZHRoOiA0NnB4OyB9XG4gIC5yZWZpbmVtZW50LkNvbG9yaSB1bCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAucmVmaW5lbWVudC5Db2xvcmkgdWwgbGkge1xuICAgICAgbWFyZ2luOiAwIDE1cHggMTVweCAwcHggIWltcG9ydGFudDsgfVxuICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpIGEge1xuICAgIG1hcmdpbjogMCAwIDI1cHggMjBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnB4OyB9XG4gIC5yZWZpbmVtZW50cyAuaW5mby1yZWZpbmVtZW50IHVsID4gbGkuc2VsZWN0ZWQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5yZWZpbmVtZW50IHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUsXG4gIC5yZWZpbmVtZW50LlRhaWxsZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSxcbiAgLnJlZmluZW1lbnQuVGFnbGllIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUsXG4gIC5yZWZpbmVtZW50LlNpemVzIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUsXG4gIC5yZWZpbmVtZW50LkNvbG9ycyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlLFxuICAucmVmaW5lbWVudCAudG9nZ2xlLWNvbnRlbnQgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAucmVmaW5lbWVudCB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGEsXG4gICAgLnJlZmluZW1lbnQuVGFpbGxlcyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGEsXG4gICAgLnJlZmluZW1lbnQuVGFnbGllIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUgYSxcbiAgICAucmVmaW5lbWVudC5TaXplcyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGEsXG4gICAgLnJlZmluZW1lbnQuQ29sb3JzIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUgYSxcbiAgICAucmVmaW5lbWVudCAudG9nZ2xlLWNvbnRlbnQgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzJweDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgLnJlZmluZW1lbnQgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmJlZm9yZSxcbiAgICAgIC5yZWZpbmVtZW50LlRhaWxsZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmJlZm9yZSxcbiAgICAgIC5yZWZpbmVtZW50LlRhZ2xpZSB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGE6YmVmb3JlLFxuICAgICAgLnJlZmluZW1lbnQuU2l6ZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmJlZm9yZSxcbiAgICAgIC5yZWZpbmVtZW50LkNvbG9ycyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGE6YmVmb3JlLFxuICAgICAgLnJlZmluZW1lbnQgLnRvZ2dsZS1jb250ZW50IHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUgYTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgei1pbmRleDogNTA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uX19jbG9zZS5wbmdcIikgY2VudGVyIG5vLXJlcGVhdDsgfVxuICAgICAgLnJlZmluZW1lbnQgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmFmdGVyLFxuICAgICAgLnJlZmluZW1lbnQuVGFpbGxlcyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGE6YWZ0ZXIsXG4gICAgICAucmVmaW5lbWVudC5UYWdsaWUgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmFmdGVyLFxuICAgICAgLnJlZmluZW1lbnQuU2l6ZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSBhOmFmdGVyLFxuICAgICAgLnJlZmluZW1lbnQuQ29sb3JzIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUgYTphZnRlcixcbiAgICAgIC5yZWZpbmVtZW50IC50b2dnbGUtY29udGVudCB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlIGE6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5yZWZpbmVtZW50IGgzLnRvZ2dsZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWRpbS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzNweCAtMTg4cHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzNzFweCAzNDZweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7XG4gICAgdG9wOiAyM3B4OyB9XG4gIC5maWx0ZXItaW5uZXIgLnJlZmluZW1lbnQgcC50b2dnbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcrJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0b3A6IDMwJSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuZmlsdGVyLWlubmVyIC5yZWZpbmVtZW50IHAudG9nZ2xlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICBjb250ZW50OiAnLSc7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0b3A6IDU1JSAhaW1wb3J0YW50OyB9XG4gIC5yZWZpbmVtZW50IHAudG9nZ2xlLmV4cGFuZGVkOmFmdGVyLCAucmVmaW5lbWVudCBoMy50b2dnbGUuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDE4MGRlZyk7IH1cbiAgLnNlYXJjaC1yZXN1bHQtb3B0aW9ucyB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAucmVmaW5lbWVudC1oZWFkZXIuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2VhcmNoLXJlc3VsdC1vcHRpb25zIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5yZWZpbmVtZW50cyAuaW5mby1yZWZpbmVtZW50IHVsID4gbGkgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSk6YmVmb3JlLFxuICAucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSkuc2VsZWN0ZWQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlLWhlYWRlci1jb3VudC1ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgICAucGFnZS1oZWFkZXItY291bnQtZ3JpZCAucHJvZHVjdC1zZWFyY2gtY291bnQtbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4OyB9XG4gICAgLnBhZ2UtaGVhZGVyLWNvdW50LWdyaWQgLmdyaWQtZGlzcGxheS1tb2JpbGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLWNvdW50LWdyaWQgLmdyaWQtZGlzcGxheS1tb2JpbGUgYSN0b2dnbGUtc21hbGwtZ3JpZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTRweDsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLWNvdW50LWdyaWQgLmdyaWQtZGlzcGxheS1tb2JpbGUgYSN0b2dnbGUtbGFyZ2UtZ3JpZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgICAucGFnZS1oZWFkZXItY291bnQtZ3JpZCAuZ3JpZC1kaXNwbGF5LW1vYmlsZSBhI3RvZ2dsZS1zbWFsbC1ncmlkLFxuICAgICAgLnBhZ2UtaGVhZGVyLWNvdW50LWdyaWQgLmdyaWQtZGlzcGxheS1tb2JpbGUgI3RvZ2dsZS1sYXJnZS1ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAucGFnZS1oZWFkZXItY291bnQtZ3JpZCAuZ3JpZC1kaXNwbGF5LW1vYmlsZSBhI3RvZ2dsZS1zbWFsbC1ncmlkIHNwYW4sXG4gICAgICAgIC5wYWdlLWhlYWRlci1jb3VudC1ncmlkIC5ncmlkLWRpc3BsYXktbW9iaWxlICN0b2dnbGUtbGFyZ2UtZ3JpZCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgbWFyZ2luOiAycHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0IxQjJCMzsgfVxuICAgICAgICAucGFnZS1oZWFkZXItY291bnQtZ3JpZCAuZ3JpZC1kaXNwbGF5LW1vYmlsZSBhI3RvZ2dsZS1zbWFsbC1ncmlkLmFjdGl2ZSBzcGFuLFxuICAgICAgICAucGFnZS1oZWFkZXItY291bnQtZ3JpZCAuZ3JpZC1kaXNwbGF5LW1vYmlsZSAjdG9nZ2xlLWxhcmdlLWdyaWQuYWN0aXZlIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cbiAgLnJlZmluZW1lbnQtcmVzdWx0cyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtZmFtaWx5OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMjRweDtcbiAgICBjb2xvcjogcmVkO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgLnJlZmluZW1lbnQtcmVzdWx0cyB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgY29sb3I6IHJlZDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5jYXRlZ29yeS1ib3R0b20tZGVza3RvcCAucHJvZHVjdC1zZWFyY2gtY291bnQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnJlZmluZW1lbnRzLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnJlZmluZW1lbnRzLWRlc2t0b3AgLnRvZ2dsZS5leHBhbmRlZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWRlZCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgLnJlZmluZW1lbnRzLWRlc2t0b3AgLnRvZ2dsZS1jb250ZW50IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDB2dzsgfVxuICAgICAgLnJlZmluZW1lbnRzLWRlc2t0b3AgLnRvZ2dsZS1jb250ZW50ID4gdWwge1xuICAgICAgICBwYWRkaW5nOiAxNnB4OyB9XG4gICAgLnJlZmluZW1lbnRzLWRlc2t0b3AgLmdyaWQtZGlzcGxheSxcbiAgICAucmVmaW5lbWVudHMtZGVza3RvcCAuc29ydC1ieSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICNtYWluLm5ld3NsZXR0ZXIge1xuICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICAuYmFubmVyLW5ld3NsZXR0ZXIge1xuICAgIGhlaWdodDogMzAwcHg7IH1cbiAgICAuYmFubmVyLW5ld3NsZXR0ZXIgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAubmV3c2xldHRlci1jb250YWluZXIsXG4gIC5uZXdzbGV0dGVyLWNvbmZpcm0ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubmV3c2xldHRlci1jb250YWluZXIgLmZvcm0tcm93IHNwYW4uZXJyb3IsXG4gICAgLm5ld3NsZXR0ZXItY29udGFpbmVyIC5mb3JtLXJvdyAubWVzc2FnZS1lcnJvci53b25kZXJicmEsXG4gICAgLm5ld3NsZXR0ZXItY29uZmlybSAuZm9ybS1yb3cgc3Bhbi5lcnJvcixcbiAgICAubmV3c2xldHRlci1jb25maXJtIC5mb3JtLXJvdyAubWVzc2FnZS1lcnJvci53b25kZXJicmEge1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm5ld3NsZXR0ZXItY29udGFpbmVyIC5mb3JtLXJvdy5nZW5kZXItc2VsZWN0IC5tZXNzYWdlLWVycm9yLndvbmRlcmJyYSxcbiAgICAubmV3c2xldHRlci1jb25maXJtIC5mb3JtLXJvdy5nZW5kZXItc2VsZWN0IC5tZXNzYWdlLWVycm9yLndvbmRlcmJyYSB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIC5uZXdzbGV0dGVyLWNvbnRhaW5lciAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgLm5ld3NsZXR0ZXItY29udGFpbmVyIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgLm5ld3NsZXR0ZXItY29uZmlybSAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgLm5ld3NsZXR0ZXItY29uZmlybSAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubmV3c2xldHRlci1jb250YWluZXIgLmZvcm0tcm93IC5uZXdzbGV0dGVyLWJ1dHRvbixcbiAgICAubmV3c2xldHRlci1jb25maXJtIC5mb3JtLXJvdyAubmV3c2xldHRlci1idXR0b24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubmV3c2xldHRlci1jb250YWluZXIgLm0tcmFkaW8tZ2VuZGVyIGxhYmVsLFxuICAgIC5uZXdzbGV0dGVyLWNvbmZpcm0gLm0tcmFkaW8tZ2VuZGVyIGxhYmVsIHtcbiAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubmV3c2xldHRlci1jb250YWluZXIgLm5ld3NsZXR0ZXItYnV0dG9uIC5idXR0b24tZmFuY3ktbGFyZ2UsXG4gICAgLm5ld3NsZXR0ZXItY29uZmlybSAubmV3c2xldHRlci1idXR0b24gLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5tLW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhvbWVwYWdlLXNsb3QgLm0tc2VjdGlvbi1zbG90IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ob21lcGFnZS1zbG90IC5tLXNlY3Rpb24tc2xvdCAuYy1zZWN0aW9uLWxpbmtfaW1hZ2Uge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgIC5ob21lcGFnZS1zbG90IC5tLXNlY3Rpb24tc2xvdC0tZnVsbCAuYy1zZWN0aW9uLWxpbmtfaW1hZ2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubS1zZWN0aW9uLXNsb3Qge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLm0tc2VjdGlvbi1zbG90IC5jLXNlY3Rpb24tbGlua19pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm0tc2VjdGlvbi1zbG90IC5jLXNlY3Rpb24tbGlua19pbWFnZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tLXNlY3Rpb24tc2xvdCAuYy1zZWN0aW9uLXRleHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAubS1zZWN0aW9uLXNsb3RfaW1hZ2UsIC5tLXNlY3Rpb24tc2xvdF90ZXh0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5ob21lcGFnZS1zbG90IC5tLXNlY3Rpb24tc2xvdC0tZmxleCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubS1zZWN0aW9uLXNsb3RfaW1hZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBvcmRlcjogMDsgfVxuICAubS1zZWN0aW9uLXNsb3RfdGV4dCB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmRpYXJ5LXNsb3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9XG4gIC5ob21lLWJvdHRvbS1iYW5uZXJzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmhvbWUtYm90dG9tLWJhbm5lcnMgLmJhbm5lci1sZWZ0LFxuICAgIC5ob21lLWJvdHRvbS1iYW5uZXJzIC5iYW5uZXItcmlnaHQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgLmhvbWUtYm90dG9tLWJhbm5lcnMgLmJhbm5lci1yaWdodCAubmV3c2xldHRlciB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAwOyB9XG4gICAgICAuaG9tZS1ib3R0b20tYmFubmVycyAuYmFubmVyLXJpZ2h0IC5uZXdzbGV0dGVyIGJ1dHRvbixcbiAgICAgIC5ob21lLWJvdHRvbS1iYW5uZXJzIC5iYW5uZXItcmlnaHQgLm5ld3NsZXR0ZXIgaW5wdXQge1xuICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICAgICAgLmhvbWUtYm90dG9tLWJhbm5lcnMgLmJhbm5lci1yaWdodCAubmV3c2xldHRlciBidXR0b24ge1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAuaG9tZS1ib3R0b20tYmFubmVycyAuYmFubmVyLXJpZ2h0IC5uZXdzbGV0dGVyIGJ1dHRvbjphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpOyB9XG4gICAgICAuaG9tZS1ib3R0b20tYmFubmVycyAuYmFubmVyLXJpZ2h0IC5uZXdzbGV0dGVyIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDc2JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzJSAhaW1wb3J0YW50OyB9XG4gIC53b25kZXJicmEtc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC53b25kZXJicmEtc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLXNsaWRlIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAud29uZGVyYnJhLXN3aXBlci1jb250YWluZXIgLndvbmRlcmJyYS1zd2lwZXItYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5kZXNrdG9wLWltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tb2JpbGUtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5uby1oaXRzLWJhbm5lci1iZyA+IC5uby1oaXRzLWJhbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmMtc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuaG9tZXBhZ2Utc2xvdCAuaG9tZXBhZ2Utc3dpcGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ob21lcGFnZS1zbG90IC5ob21lcGFnZS1zd2lwZXIgLnN3aXBlci1zbGlkZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIC5ob21lcGFnZS1zbG90IC5ob21lcGFnZS1zd2lwZXIgLnN3aXBlci1zbGlkZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmhvbWVwYWdlLXNsb3QgLmhvbWVwYWdlLXN3aXBlciAuc3dpcGVyLXNsaWRlX19jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG87IH1cbiAgICAgIC5ob21lcGFnZS1zbG90IC5ob21lcGFnZS1zd2lwZXIgLnN3aXBlci1zbGlkZV9fY29udGVudCBwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmhvbWVwYWdlLXNsb3QgLmhvbWVwYWdlLXN3aXBlciAuc3dpcGVyLXNsaWRlX19jb250ZW50IGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDEuNXB4IHNvbGlkICMwMDA7IH1cbiAgICAuaG9tZXBhZ2Utc2xvdCAuaG9tZXBhZ2Utc3dpcGVyIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA5MDA7XG4gICAgICB0b3A6IDE1cHg7XG4gICAgICBsZWZ0OiAxMXB4O1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgLmhvbWVwYWdlLXNsb3QgLmhvbWVwYWdlLXN3aXBlciAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7XG4gICAgICBoZWlnaHQ6IDdweDtcbiAgICAgIHdpZHRoOiA3cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgb3BhY2l0eTogMC4yOyB9XG4gICAgICAuaG9tZXBhZ2Utc2xvdCAuaG9tZXBhZ2Utc3dpcGVyIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2ggKyAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDsgfVxuICAgICAgLmhvbWVwYWdlLXNsb3QgLmhvbWVwYWdlLXN3aXBlciAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC44OyB9XG4gICAgICAuaG9tZXBhZ2Utc2xvdCAuaG9tZXBhZ2Utc3dpcGVyIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2guc3dpcGVyLWFjdGl2ZS1zd2l0Y2gge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gIC5ob21lcGFnZS1zbG90LmRpYXJ5LXNsb3QgLnN3aXBlci1zbGlkZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5ob21lcGFnZS1zbG90LmRpYXJ5LXNsb3QgLmMtc2VjdGlvbi1saW5rX3RleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmRpYXJ5LXNsb3QgLm1vYmlsZS1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNlNWU1ZTUgIWltcG9ydGFudDsgfVxuICAuZGlhcnktc2xvdCAubW9iaWxlLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLXN3aXRjaC5zd2lwZXItYWN0aXZlLXN3aXRjaCB7XG4gICAgYmFja2dyb3VuZDogIzdmN2Y3ZiAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4gICNsb3lhbHR5LWNvbnRlbnQgLm9ubHktZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjbG95YWx0eS1jb250ZW50IC5vbmx5LW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgI2xveWFsdHktcHJlc2VudGF0aW9uLWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAjbG95YWx0eS1wcmVzZW50YXRpb24tYmFubmVyIGltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAjbG95YWx0eS1wcmVzZW50YXRpb24tYmFubmVyIC5jb250ZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIHRvcDogMjUwcHg7IH1cbiAgI2xveWFsdHktY29udGVudCAubGVmdCxcbiAgI2xveWFsdHktY29udGVudCAucmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgI2xveWFsdHktY29udGVudCAud2lkZSB7XG4gICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICNsb3lhbHR5LWNvbnRlbnQgc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgc2VjdGlvbiBoMyB7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgI2xveWFsdHktY29udGVudCBzZWN0aW9uIHAge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgI2xveWFsdHktY29udGVudCBzZWN0aW9uLnByb21vIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgI2xveWFsdHktY29udGVudCBzZWN0aW9uLnByb21vIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAjbG95YWx0eS1jb250ZW50IHNlY3Rpb24ucHJvbW8gLmxlZ2FsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAjbG95YWx0eS1jb250ZW50IC5ob3dfaXRfd29ya3Mge1xuICAgIGJvcmRlcjogMDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyAuaWNvbl9oZWFydCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgI2xveWFsdHktY29udGVudCAuaG93X2l0X3dvcmtzIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyAuc2xpZGVfaW1hZ2Uge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoLnN3aXBlci1hY3RpdmUtc3dpdGNoIHtcbiAgICAgIG9wYWNpdHk6IDAuNzsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgLmhvd19pdF93b3JrcyAuc3dpcGVyLWFycm93cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICNsb3lhbHR5LWNvbnRlbnQgI2xveWFsdHktcmVnaXN0ZXJmb3JtLWxpbmssXG4gICNsb3lhbHR5LWNvbnRlbnQgI2xveWFsdHktbGlua2luZ2Zvcm0tbGluayB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHdpZHRoOiAxNDBweDsgfVxuICAgICNsb3lhbHR5LWNvbnRlbnQgI2xveWFsdHktcmVnaXN0ZXJmb3JtLWxpbmsgKyBwLFxuICAgICNsb3lhbHR5LWNvbnRlbnQgI2xveWFsdHktbGlua2luZ2Zvcm0tbGluayArIHAge1xuICAgICAgbWFyZ2luOiAzNXB4IDAgMTBweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgI2xveWFsdHktY29udGVudCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmxveWFsdHktYWNjb3VudC1wb2ludHMtY29udGFpbmVyIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgI2xveWFsdHktYWNjb3VudC1pbmZvIHtcbiAgICBtYXJnaW46IDQwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAjbG95YWx0eS1hY2NvdW50LWluZm8gZGl2IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgICAgICNsb3lhbHR5LWFjY291bnQtaW5mbyBkaXYuY29sLWhhbGYge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgI2xveWFsdHktYWNjb3VudC1pbmZvIGRpdiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgICNsb3lhbHR5LWFjY291bnQtaW5mbyBkaXYgc3BhbjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgI2xveWFsdHktYWNjb3VudC1pbmZvIGRpdiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC01cHg7IH1cbiAgICAgICNsb3lhbHR5LWFjY291bnQtaW5mbyBkaXYuY29sLXdpZGUgc3BhbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAjbG95YWx0eS1hY2NvdW50LWluZm8gZGl2LmNvbC13aWRlIC5hY2NvdW50SW5mbyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgICAgI2xveWFsdHktYWNjb3VudC1pbmZvIGRpdi5jb2wtd2lkZSAuYWNjb3VudEluZm8gc3BhbiB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDY1cHgpOyB9XG4gICAgI2xveWFsdHktYWNjb3VudC1pbmZvIC5idXR0b24tZmFuY3ktbGFyZ2Uge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgI2xveWFsdHktcG9pbnRzIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgICNsb3lhbHR5LXBvaW50cyAucG9pbnQtdmFsdWVzLS13cmFwIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgICAjbG95YWx0eS1wb2ludHMgI2NvbnZlcnQtcG9pbnRzIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmxveWFsdHktcHJvbW9zIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgMzBweDsgfVxuICAgIC5sb3lhbHR5LXByb21vcyAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgIC5sb3lhbHR5LXByb21vcyAucHJvbW8tY29sIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmxveWFsdHktcHJvbW9zIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5sb3lhbHR5LXByb21vcyAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoLnN3aXBlci1hY3RpdmUtc3dpdGNoIHtcbiAgICAgIG9wYWNpdHk6IDAuNzsgfVxuICAgIC5sb3lhbHR5LXByb21vcyAuc3dpcGVyLWFycm93cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZTpjaGVja2VkICsgbGFiZWwgKyAub3B0aW5FeHBsYW5hdGlvbl9fY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdy5saW5rLW9ubHksXG4gICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cubGluay1vbmx5IHtcbiAgICBwYWRkaW5nOiAwIDAgMCA2MHB4O1xuICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0LFxuICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgLm9wdGluRXhwbGFuYXRpb25fX2NvbnRlbnQsXG4gICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgLm9wdGluRXhwbGFuYXRpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSxcbiAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNXB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDsgfVxuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGUgKyBsYWJlbC5lcnJvciArIGxhYmVsLFxuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGUgKyBzcGFuLmVycm9yICsgbGFiZWwsXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsOm5vdCguZXJyb3IpOm5vdCgub3B0aW5FeHBsYW5hdGlvbl9fbGFiZWwpLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGUgKyBsYWJlbC5lcnJvciArIGxhYmVsLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGUgKyBzcGFuLmVycm9yICsgbGFiZWwsXG4gICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsOm5vdCguZXJyb3IpOm5vdCgub3B0aW5FeHBsYW5hdGlvbl9fbGFiZWwpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsLmVycm9yICsgbGFiZWwgLm9wdGluRXhwbGFuYXRpb25fX3RleHQsXG4gICAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlICsgc3Bhbi5lcnJvciArIGxhYmVsIC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0LFxuICAgICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsOm5vdCguZXJyb3IpOm5vdCgub3B0aW5FeHBsYW5hdGlvbl9fbGFiZWwpIC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0LFxuICAgICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsLmVycm9yICsgbGFiZWwgLm9wdGluRXhwbGFuYXRpb25fX3RleHQsXG4gICAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlICsgc3Bhbi5lcnJvciArIGxhYmVsIC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0LFxuICAgICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsOm5vdCguZXJyb3IpOm5vdCgub3B0aW5FeHBsYW5hdGlvbl9fbGFiZWwpIC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsLmVycm9yICsgbGFiZWw6YmVmb3JlLFxuICAgICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIHNwYW4uZXJyb3IgKyBsYWJlbDpiZWZvcmUsXG4gICAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlICsgbGFiZWw6bm90KC5lcnJvcik6bm90KC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbCk6YmVmb3JlLFxuICAgICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIGxhYmVsLmVycm9yICsgbGFiZWw6YmVmb3JlLFxuICAgICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zmlyc3Qtb2YtdHlwZSArIHNwYW4uZXJyb3IgKyBsYWJlbDpiZWZvcmUsXG4gICAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlICsgbGFiZWw6bm90KC5lcnJvcik6bm90KC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbCk6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7IH1cbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlOmNoZWNrZWQgKyBsYWJlbC5lcnJvciArIGxhYmVsOmFmdGVyLFxuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGU6Y2hlY2tlZCArIHNwYW4uZXJyb3IgKyBsYWJlbDphZnRlcixcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlOmNoZWNrZWQgKyBsYWJlbDpub3QoLmVycm9yKTphZnRlcixcbiAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlOmNoZWNrZWQgKyBsYWJlbC5lcnJvciArIGxhYmVsOmFmdGVyLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZpcnN0LW9mLXR5cGU6Y2hlY2tlZCArIHNwYW4uZXJyb3IgKyBsYWJlbDphZnRlcixcbiAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlOmNoZWNrZWQgKyBsYWJlbDpub3QoLmVycm9yKTphZnRlciB7XG4gICAgICB0b3A6IDE0cHg7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDsgfVxuICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5vcHRpbkV4cGxhbmF0aW9uX190b2dnbGUgKyBsYWJlbCxcbiAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ub3B0aW5FeHBsYW5hdGlvbl9fdG9nZ2xlICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDM1cHg7XG4gICAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSArIGxhYmVsOmFmdGVyLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSArIGxhYmVsOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTdweCAtNjJweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogNXB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgbWFyZ2luOiAtMnB4IDAgMCAzcHg7XG4gICAgICAvKiBPbmx5IGZvciBJT1MgRGV2aWNlICovXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5vcHRpbkV4cGxhbmF0aW9uX190b2dnbGUgKyBsYWJlbDphZnRlcixcbiAgICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSArIGxhYmVsOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTdweCAtNjJweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSArIGxhYmVsOmFmdGVyLFxuICAgICAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5vcHRpbkV4cGxhbmF0aW9uX190b2dnbGUgKyBsYWJlbDphZnRlciB7XG4gICAgICAgICAgbWFyZ2luOiAtMTFweCAwIDAgM3B4OyB9IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ub3B0aW5FeHBsYW5hdGlvbl9fdG9nZ2xlOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcbiAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ub3B0aW5FeHBsYW5hdGlvbl9fdG9nZ2xlOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1N3B4IC02MnB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjcpIHRyYW5zbGF0ZVkoMHB4KSB0cmFuc2xhdGVYKDNweCkgcm90YXRlWig5MGRlZyk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5vcHRpbkV4cGxhbmF0aW9uX190b2dnbGU6Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzU3cHggLTYycHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDVweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbCxcbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCBzcGFuOmxhc3QtY2hpbGQsXG4gICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwgLm9wdGluRXhwbGFuYXRpb25fX2xhYmVsLFxuICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbDpiZWZvcmUsXG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCBzcGFuOmxhc3QtY2hpbGQ6YmVmb3JlLFxuICAgICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwgLm9wdGluRXhwbGFuYXRpb25fX2xhYmVsOmJlZm9yZSxcbiAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHNwYW46bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdy5saW5rLW9ubHkgI21vcmVQcml2YWN5UG9saWN5ICsgbGFiZWwsXG4gICNsZWdhbC1jb25zZW50cyAuZm9ybS1yb3cubGluay1vbmx5ICNtb3JlUHJpdmFjeVBvbGljeSArIGxhYmVsIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgIHRvcDogMnB4OyB9XG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdy5saW5rLW9ubHkgI21vcmVQcml2YWN5UG9saWN5ICsgbGFiZWw6YWZ0ZXIsXG4gICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdy5saW5rLW9ubHkgI21vcmVQcml2YWN5UG9saWN5ICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1N3B4IC02MnB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW46IDAgMCAwIDNweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS43KSB0cmFuc2xhdGVZKDBweCkgdHJhbnNsYXRlWCgzcHgpOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMgLyAyKSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cubGluay1vbmx5ICNtb3JlUHJpdmFjeVBvbGljeSArIGxhYmVsOmFmdGVyLFxuICAgICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdy5saW5rLW9ubHkgI21vcmVQcml2YWN5UG9saWN5ICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1N3B4IC02MnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc2cHggNDI3cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci1vcHRpbnMgLmZvcm0tcm93Lmxpbmstb25seSAjbW9yZVByaXZhY3lQb2xpY3k6Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93Lmxpbmstb25seSAjbW9yZVByaXZhY3lQb2xpY3k6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzU3cHggLTYycHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGVaKDkwZGVnKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMyAvIDIpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgICNSZWdpc3RyYXRpb25Gb3JtIC5uZXdzbGV0dGVyLW9wdGlucyAuZm9ybS1yb3cubGluay1vbmx5ICNtb3JlUHJpdmFjeVBvbGljeTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4gICAgI2xlZ2FsLWNvbnNlbnRzIC5mb3JtLXJvdy5saW5rLW9ubHkgI21vcmVQcml2YWN5UG9saWN5OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTdweCAtNjJweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogNXB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzZweCA0MjdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICNsZWdhbC1jb25zZW50cyB7XG4gICAgcGFkZGluZzogMCAyMHB4IDMwcHggMjBweDsgfVxuICAgICNsZWdhbC1jb25zZW50cyAjbGVnYWwtY29uc2VudHMge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICNsZWdhbC1jb25zZW50cyAuaW5wdXQtY2hlY2tib3ggKyBsYWJlbCxcbiAgICAjbGVnYWwtY29uc2VudHMgLmZvcm0tcm93Lmxpbmstb25seSAucHJpdmFjeVBvbGljeSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG92YWJsZU1vZGFsX19oZWFkZXIgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG95YWx0eVByb21vX19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5sb3lhbHR5UHJvbW9fX2JvZHkgaDEge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG95YWx0eVByb21vX19ib2R5IC5yaWdodCwgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG95YWx0eVByb21vX19ib2R5IC5sZWZ0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5sb3lhbHR5UHJvbW9fX2JvZHkgLnJpZ2h0IHtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG95YWx0eVByb21vX19ib2R5IC5sZWZ0IHtcbiAgICAgIG9yZGVyOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG95YWx0eVByb21vX19ib2R5IC53aWRlIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmxveWFsdHlQcm9tb19fYm9keSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmxveWFsdHlQcm9tb19fYm9keSAuY291cG9uY29kZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5sb3lhbHR5UHJvbW9fX2JvZHkgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAudmVydGljYWxBbGlnbl9fd3JhcCB7XG4gICAgbWluLWhlaWdodDogYXV0bzsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLnZlcnRpY2FsQWxpZ25fX3dyYXA6YmVmb3JlIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgI2FjY291bnRjcmVhdGlvbi1qb2luLWxveWFsdHkge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgIHBhZGRpbmc6IDUwcHggMjBweDsgfVxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5ID4gcDpmaXJzdC1jaGlsZCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfVxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IC5jdXN0b20tY2hlY2tib3ggbGkge1xuICAgICAgbWFyZ2luOiAwIDRweDsgfVxuICAgICAgI2FjY291bnRjcmVhdGlvbi1qb2luLWxveWFsdHkgLmN1c3RvbS1jaGVja2JveCBsaSBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzcwNzA3MDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgI2FjY291bnRjcmVhdGlvbi1qb2luLWxveWFsdHkgLmN1c3RvbS1jaGVja2JveCBsaSBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IC5qb2luTG95YWx0eV9fbm90aWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gICAgI2FjY291bnRjcmVhdGlvbi1qb2luLWxveWFsdHkgLmpvaW5Mb3lhbHR5X19jb2xzLS1sZWZ0LFxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IC5qb2luTG95YWx0eV9fY29scy0tcmlnaHQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IC5qb2luTG95YWx0eV9fY29scy0tbGVmdCB7XG4gICAgICBjb2xvcjogIzY2NjsgfVxuICAgICNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IC5qb2luTG95YWx0eV9fY29scy0tcmlnaHQge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAjUmVnaXN0cmF0aW9uRm9ybSAuYmlydGhkYXkgc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJSAhaW1wb3J0YW50OyB9XG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLmJpcnRoZGF5IHNlbGVjdDpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMjIlICFpbXBvcnRhbnQ7IH1cbiAgICAjUmVnaXN0cmF0aW9uRm9ybSAuYmlydGhkYXkgc2VsZWN0Omxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmxhYmVsLW5vLXBsYWNlaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcG9zaXRpb246IGluaXRpYWw7IH1cbiAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCB7XG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbFthcmlhLWxhYmVsbGVkYnk9J3VpLWRpYWxvZy10aXRsZS1jb252ZXJ0LXBvaW50cy1tb2RhbCddLCBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsW2FyaWEtbGFiZWxsZWRieT0ndWktZGlhbG9nLXRpdGxlLTEnXSwgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbFthcmlhLWxhYmVsbGVkYnk9J3VpLWRpYWxvZy10aXRsZS1sb3lhbHR5LXdlbGNvbWViYWNrLWJvbnVzLXBvcGluJ10ge1xuICAgICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAuZm9ybS1yb3cgc3Bhbi5lcnJvciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5mb3JtLXJvdyAjcHJvZmlsZV9iaXJ0aGRheV9kYXkuaW5wdXQtc2VsZWN0X2RheSxcbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5mb3JtLXJvdyAjcHJvZmlsZV9iaXJ0aGRheV9tb250aC5pbnB1dC1zZWxlY3QtbW9udGgsXG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAuZm9ybS1yb3cgI3Byb2ZpbGVfYmlydGhkYXlfeWVhci5pbnB1dC1zZWxlY3RfeWVhciB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2VkZWRlZDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM3ZjdmN2Y7IH1cbiAgICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmZvcm0tcm93ICNwcm9maWxlX2JpcnRoZGF5X2RheS5pbnB1dC1zZWxlY3RfZGF5LmVycm9yLFxuICAgICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAuZm9ybS1yb3cgI3Byb2ZpbGVfYmlydGhkYXlfbW9udGguaW5wdXQtc2VsZWN0LW1vbnRoLmVycm9yLFxuICAgICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAuZm9ybS1yb3cgI3Byb2ZpbGVfYmlydGhkYXlfeWVhci5pbnB1dC1zZWxlY3RfeWVhci5lcnJvciB7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRjAwMDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmZvcm0tcm93ICNwcm9maWxlX2JpcnRoZGF5X2RheV9mcmllbmQuaW5wdXQtc2VsZWN0X2RheSxcbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5mb3JtLXJvdyAjcHJvZmlsZV9iaXJ0aGRheV9tb250aF9mcmllbmQuaW5wdXQtc2VsZWN0LW1vbnRoLFxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmZvcm0tcm93ICNwcm9maWxlX2JpcnRoZGF5X3llYXJfZnJpZW5kLmlucHV0LXNlbGVjdF95ZWFyIHtcbiAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQlIC8gMykgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM3ZjdmN2Y7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5mb3JtLXJvdyAjcHJvZmlsZV9iaXJ0aGRheV9tb250aF9mcmllbmQuaW5wdXQtc2VsZWN0LW1vbnRoIHtcbiAgICAgIHdpZHRoOiAzMy41JSAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAuZm9ybS1yb3cgI3Byb2ZpbGVfYmlydGhkYXlfbW9udGguaW5wdXQtc2VsZWN0LW1vbnRoIHtcbiAgICAgIHdpZHRoOiAzMy41JSAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG92YWJsZU1vZGFsX19yb3ctLXNleCxcbiAgICBib2R5IC51aS1kaWFsb2cubG95YWx0eU1vZGFsIC5sb3ZhYmxlTW9kYWxfX3Jvdy0tZGF0ZSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmxvdmFibGVNb2RhbF9fcm93LS1zZXgge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG92YWJsZU1vZGFsX19yb3ctLXNleCA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gICAgICAgIG1hcmdpbjogMCAwIC01MHB4IDA7IH1cbiAgICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmxvdmFibGVNb2RhbF9fcm93LS1zZXggLmZvcm0tcm93IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIGJvZHkgLnVpLWRpYWxvZy5sb3lhbHR5TW9kYWwgLmxvdmFibGVNb2RhbF9fcm93LS1zZXggLmlucHV0LXJhZGlvIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxNXB4OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCAubG92YWJsZU1vZGFsX19wcm92aW5jZSBzZWxlY3Qge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6ICM3ZjdmN2Y7IH1cbiAgLmxveWFsdHktcG9pbnRzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIC5sb3lhbHR5LXBvaW50cyBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAuY2FydC1jb3Vwb24tY29kZSBsYWJlbCB7XG4gICAgd2lkdGg6IDQ1JTsgfVxuICAvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgTk9UIEZPVU5EXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICovXG4gIC5rZWVwZXIucC00MDQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA4MHB4IDE1cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucC00MDQgLm5vaGl0cy1iYWNrZ3JvdW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMDsgfVxuICAgIC5wLTQwNCAubm9oaXRzLWJhY2tncm91bmQgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgLnAtNDA0IC5ub2hpdHMtc2VhcmNoZm9ybSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG1hcmdpbi10b3A6IDE3MHB4OyB9XG4gICAgLnAtNDA0IC5ub2hpdHMtc2VhcmNoZm9ybSBsYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnAtNDA0IC5ub2hpdHMtc2VhcmNoZm9ybSAuc2VhcmNoLWljb24tLXdyYXAge1xuICAgICAgbWFyZ2luOiAyNXB4IGF1dG8gMTVweCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gLnNlYXJjaC1pY29uLS13cmFwOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaW50ZXJmYWNlLzQwNF9faWNvbi0tc2VhcmNoLnBuZ1wiKTtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICB6LWluZGV4OiA1MDsgfVxuICAgIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gdGV4dGFyZWEge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAxZW0gMWVtIDFlbSA0ZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNWVtKTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgLnAtNDA0IC5ub2hpdHMtc2VhcmNoZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06OndlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLnAtNDA0IC5ub2hpdHMtc2VhcmNoZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTo6cGxhY2Vob2xkZXIsIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAucC00MDQgLm5vaGl0cy1zZWFyY2hmb3JtIHRleHRhcmVhOjp3ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5wLTQwNCAubm9oaXRzLXNlYXJjaGZvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICM5NDk0OTQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAjbWVzLWNvdXBzIHRkIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgI21lcy1jb3VwcyB0ZC5pdGVtLXByaWNlLCAjbWVzLWNvdXBzIHRkLml0ZW0tYXZhaWxhYmlsaXR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAjbWVzLWNvdXBzIHRkLml0ZW0tY29sb3Ige1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgI21lcy1jb3VwcyB0ZC5pdGVtLWFjdGlvbnMgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyc3RhdGVcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgI21lcy1jb3VwcyB0YWJsZS5pdGVtLWxpc3QgdHIge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAjbWVzLWNvdXBzID4gcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjbWVzLWNvdXBzIC5saXN0LXRhYmxlLWhlYWRlciB7XG4gICAgcGFkZGluZzogMzBweCAxNXB4ICFpbXBvcnRhbnQ7IH1cbiAgI21lcy1jb3VwcyAuZGVsZXRlLWl0ZW0ge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTMycHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYm9yZGVyOiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSB7XG4gICAgI21lcy1jb3VwcyAuZGVsZXRlLWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTMycHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NnB4IDQyN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLmxpc3QtdGFibGUtaGVhZGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWRlZDtcbiAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC53aXNobGlzdC1uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5zZW5kLXRvLWZyaWVuZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3MHB4OyB9XG4gIC8qICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBDQVJUIFBBR0UgUkVTUE9OU0lWRVxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAqL1xuICAuY2hlY2tvdXRTdGVwcGVyIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDUwcHggMCAwO1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDYwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgLmNoZWNrb3V0U3RlcHBlciAudGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAuY2hlY2tvdXRTdGVwcGVyOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZDlkOTsgfVxuICAgIC5jaGVja291dFN0ZXBwZXIgbGkge1xuICAgICAgcGFkZGluZy10b3A6IDQzcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkgYTo6YmVmb3JlLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaSBzcGFuOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTIycHg7XG4gICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICBoZWlnaHQ6IDQxcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaSBhOjphZnRlcixcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgei1pbmRleDogMTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkgYTo6YWZ0ZXIsXG4gICAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaS5jdXJyZW50IGEsXG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpLmN1cnJlbnQgc3BhbiwgLmNoZWNrb3V0U3RlcHBlciBsaS5wcmV2aW91cyBhLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaS5wcmV2aW91cyBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNkOTBmM2I7IH1cbiAgICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaS5jdXJyZW50IGE6OmJlZm9yZSxcbiAgICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaS5jdXJyZW50IHNwYW46OmJlZm9yZSwgLmNoZWNrb3V0U3RlcHBlciBsaS5wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkucHJldmlvdXMgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNkOTBmM2I7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkuY3VycmVudCBzcGFuOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOTBmM2I7XG4gICAgICAgIHRvcDogLTUzcHg7XG4gICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMjJweCkgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpLnByZXZpb3VzOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtNjJweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5MGYzYjtcbiAgICAgICAgei1pbmRleDogMTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkucHJldmlvdXM6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IC00M3B4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEyOCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaS5wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpLnByZXZpb3VzIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkOTBmM2I7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBjb250ZW50OiB1cmwoLi4vaW1hZ2VzL3N0ZXBwZXItY2hlY2suc3ZnKSAhaW1wb3J0YW50OyB9XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpLnByZXZpb3VzIGE6aG92ZXIgc3Bhbjo6YmVmb3JlLCAuY2hlY2tvdXRTdGVwcGVyIGxpLnByZXZpb3VzIGE6Zm9jdXMgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29sb3I6ICNkOTBmM2I7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGkucHJldmlvdXMgYTpob3Zlcjo6YmVmb3JlLCAuY2hlY2tvdXRTdGVwcGVyIGxpLnByZXZpb3VzIGE6Zm9jdXM6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAjZDkwZjNiOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6aG92ZXIgYSwgLmNoZWNrb3V0U3RlcHBlciBsaTpmb2N1cyBhIHtcbiAgICAgICAgY29sb3I6ICNkOTBmM2I7IH1cbiAgICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpob3ZlciBhOjpiZWZvcmUsIC5jaGVja291dFN0ZXBwZXIgbGk6Zm9jdXMgYTo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNkOTBmM2I7IH1cbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDEpIGE6OmFmdGVyLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMSkgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgKyAyNXB4KTtcbiAgICAgICAgbGVmdDogMDsgfVxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMSkgYTo6YmVmb3JlLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMSkgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIxXCI7IH1cbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDEpLnByZXZpb3VzIGE6aG92ZXIgc3Bhbjo6YmVmb3JlLCAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgxKS5wcmV2aW91cyBhOmZvY3VzIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiMVwiICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDEpLnByZXZpb3VzIGE6aG92ZXI6OmJlZm9yZSwgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMSkucHJldmlvdXMgYTpmb2N1czo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIxXCIgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgyKSBhOjphZnRlcixcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDIpIHNwYW46OmFmdGVyIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiA1MHB4OyB9XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgyKSBhOjpiZWZvcmUsXG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgyKSBzcGFuOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIjJcIjsgfVxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMikucHJldmlvdXMgYTpob3ZlciBzcGFuOjpiZWZvcmUsIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDIpLnByZXZpb3VzIGE6Zm9jdXMgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIyXCIgIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMikucHJldmlvdXMgYTpob3Zlcjo6YmVmb3JlLCAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgyKS5wcmV2aW91cyBhOmZvY3VzOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIjJcIiAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDMpIGE6OmFmdGVyLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMykgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDUwcHg7IH1cbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDMpIGE6OmJlZm9yZSxcbiAgICAgIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDMpIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiM1wiOyB9XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgzKS5wcmV2aW91cyBhOmhvdmVyIHNwYW46OmJlZm9yZSwgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoMykucHJldmlvdXMgYTpmb2N1cyBzcGFuOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIjNcIiAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCgzKS5wcmV2aW91cyBhOmhvdmVyOjpiZWZvcmUsIC5jaGVja291dFN0ZXBwZXIgbGk6bnRoLWNoaWxkKDMpLnByZXZpb3VzIGE6Zm9jdXM6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiM1wiICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoNCkgYTo6YWZ0ZXIsXG4gICAgICAuY2hlY2tvdXRTdGVwcGVyIGxpOm50aC1jaGlsZCg0KSBzcGFuOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSArIDI1cHgpO1xuICAgICAgICByaWdodDogMDsgfVxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoNCkgYTo6YmVmb3JlLFxuICAgICAgLmNoZWNrb3V0U3RlcHBlciBsaTpudGgtY2hpbGQoNCkgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCI0XCI7IH1cbiAgLmNoZWNrb3V0LWhlYWRlciAuY2hlY2tvdXRTdGVwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAubWFpbi13cmFwcGVyLWNhcnQgLmNvbnRhaW5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAubWFpbi13cmFwcGVyLWNhcnQgLmNvbnRhaW5lci13cmFwcGVyIC5jYXJ0LWhlYWRpbmcsIC5tYWluLXdyYXBwZXItY2FydCAuY29udGFpbmVyLXdyYXBwZXIgLmNhcnQtbGVmdCB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgLmNhcnQtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbjogMDsgfVxuICAuY2FydC13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5jYXJ0LXRhYmxlLml0ZW0tbGlzdCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgICAgIC5jYXJ0LXRhYmxlLml0ZW0tbGlzdCAuc2VjdGlvbi1saW5lOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdiB7XG4gICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLWRldGFpbHMge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNTBweCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4OyB9XG4gICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS1kZXRhaWxzIC5wcm9kdWN0LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBpbmhlcml0OyB9XG4gICAgICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLWRldGFpbHMgLnByb2R1Y3QtbGlzdC1pdGVtIC5kaXNwbGF5LXIge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLWRldGFpbHMgLm5hbWUge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS1kZXRhaWxzIC5uYW1lIGEge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS1wcmljZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLXRvdGFsIHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNTBweCk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDsgfVxuICAgICAgICAgIC5jYXJ0LXRhYmxlLml0ZW0tbGlzdCAuc2VjdGlvbi1saW5lID4gZGl2Lml0ZW0tdG90YWwgLnByaWNlLXByb21vdGlvbiB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDsgfVxuICAgICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS10b3RhbCAucHJpY2UtcHJvbW90aW9uIC5wcmljZS1zYWxlcyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS10b3RhbCAucHJpY2UtcHJvbW90aW9uIC5wcmljZS1zdGFuZGFyZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS10b3RhbCAucHJpY2UtcHJvbW90aW9uIC5keW5hbWljLWRpc2NvdW50IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS10b3RhbCAuY2FydC1sb3lhbHR5LXBvaW50cyBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS10b3RhbCAuY2FydC1sb3lhbHR5LXBvaW50cyBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJTsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5jb2xvciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNTBweCk7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7IH1cbiAgICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5jb2xvciBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7IH1cbiAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuc2l6ZSB7XG4gICAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCg5NSUgLSAxNTBweCkgLyAyKTsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdiAuc2l6ZS1zZWxlY3QsIC5jYXJ0LXRhYmxlLml0ZW0tbGlzdCAuc2VjdGlvbi1saW5lID4gZGl2IC5xdWFudGl0eS1zZWxlY3Qge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTVweCk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDsgfVxuICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLXF1YW50aXR5IHtcbiAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICB3aWR0aDogY2FsYygoOTUlIC0gMTUwcHgpIC8gMik7XG4gICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IC5zZWN0aW9uLWxpbmUgPiBkaXYuaXRlbS1xdWFudGl0eSAuaXRlbS1xdWFudGl0eS1hcmVhIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICAuY2FydC10YWJsZS5pdGVtLWxpc3QgLnNlY3Rpb24tbGluZSA+IGRpdi5pdGVtLXF1YW50aXR5IC5pdGVtLXF1YW50aXR5LWFyZWEgLnF1YW50aXR5LXNlbGVjdCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5jYXJ0LXRhYmxlLml0ZW0tbGlzdCAuc2VjdGlvbi1saW5lID4gZGl2LnJlbW92ZS1pdGVtIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiAwOyB9XG4gIC5jYXJ0LXRhYmxlLmRpc2NvdW50LXRhYmxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmNhcnQtc2lkZWJhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLmNhcnQtc2lkZWJhciAuY2FydC1zdGlja3ktc2lkZWJhciB7XG4gICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgIHRvcDogaW5oZXJpdDsgfVxuICAgIC5jYXJ0LXNpZGViYXIgbGFiZWwsXG4gICAgLmNhcnQtc2lkZWJhciAuY291cG9uLXRleHQsXG4gICAgLmNhcnQtc2lkZWJhciAjYWRkLWNvdXBvbiB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAuY2FydC1zaWRlYmFyIC5jYXJ0LXN1YnRvdGFsIC5sYWJlbCwgLmNhcnQtc2lkZWJhciAuY2FydC1zdWJ0b3RhbCAudmFsdWUsXG4gICAgLmNhcnQtc2lkZWJhciAuY2FydC1vcmRlci10b3RhbHMgLmxhYmVsLFxuICAgIC5jYXJ0LXNpZGViYXIgLmNhcnQtb3JkZXItdG90YWxzIC52YWx1ZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAuY2FydC1zaWRlYmFyIC5zaGlwcGluZ01ldGhvZHMgLnRpdGxlLFxuICAgIC5jYXJ0LXNpZGViYXIgLnNoaXBwaW5nTWV0aG9kcyAuc2hpcHBpbmdNc2csXG4gICAgLmNhcnQtc2lkZWJhciAuc2hpcHBpbmdNZXRob2RzIC5zaGlwcGluZ01ldGhvZHNMaXN0QXJlYSxcbiAgICAuY2FydC1zaWRlYmFyIC5zaGlwcGluZ01ldGhvZHMgLnNoaXBwaW5nTWV0aG9kc0xpc3RTdWJUb3RhbCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAuY2FydC1zaWRlYmFyIC5kaXNjb3VudC10YWJsZSAuc2VjdGlvbi1saW5lID4gZGl2LCAuY2FydC1zaWRlYmFyIC5kaXNjb3VudC10YWJsZSAuc2VjdGlvbi1saW5lIC50aXRsZSwgLmNhcnQtc2lkZWJhciAuZGlzY291bnQtdGFibGUgLnNlY3Rpb24tbGluZSAuZGVzYywgLmNhcnQtc2lkZWJhciAuZGlzY291bnQtdGFibGUgLnNlY3Rpb24tbGluZSAubGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgLmNhcnQtc2lkZWJhciAuY2FydC1jb3Vwb24tY29kZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuY2FydC1zaWRlYmFyIC5jYXJ0LWNvdXBvbi1jb2RlIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgICAgIC5jYXJ0LXNpZGViYXIgLmNhcnQtY291cG9uLWNvZGUgLmNvdXBvbi10ZXh0IHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDsgfVxuICAgIC5jYXJ0LXNpZGViYXIgLnNoaXBwaW5nYW5kdG90YWxzIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY2FydC1zaWRlYmFyIC5zaGlwcGluZy1tZXRob2RzIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmNhcnQtc2lkZWJhciAuc2hpcHBpbmctbWV0aG9kcyAuc2hpcHBpbmdNZXRob2RzTGlzdEFyZWEgbGkgLnNoaXBwaW5nLXJhZGlvLXNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLmNhcnQtc2lkZWJhciAuc2hpcHBpbmctbWV0aG9kcyAuc2hpcHBpbmdNZXRob2RzTGlzdEFyZWEgbGkgLnNoaXBwaW5nLXRleHQtY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgICAgIC5jYXJ0LXNpZGViYXIgLnNoaXBwaW5nLW1ldGhvZHMgLnNoaXBwaW5nTWV0aG9kc0xpc3RBcmVhIGxpIC5zaGlwcGluZy10ZXh0LWNvbnRlbnQgLnN0YW5kYXJkLXNoaXBwaW5nIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAuY2FydC1zaWRlYmFyIC5zaGlwcGluZy1tZXRob2RzIC5yZW1haW4sIC5jYXJ0LXNpZGViYXIgLnNoaXBwaW5nLW1ldGhvZHMgLnNoaXBwaW5nLXRpbWUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH1cbiAgICAuY2FydC1zaWRlYmFyIC5jYXJ0LWxveWFsdHktcG9pbnRzIHtcbiAgICAgIG1hcmdpbjogMCAtMjBweDsgfVxuICAuY2FydC1hY3Rpb25zIC50ZXJtcyAuZm9ybS1yb3cge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmNhcnQtYWN0aW9ucyAudGVybXMgLmZvcm0tcm93IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5jYXJ0LWFjdGlvbnMgLnRlcm1zIC5mb3JtLXJvdyBsYWJlbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTdweDsgfVxuICAgIC5jYXJ0LWFjdGlvbnMgLnRlcm1zIC5mb3JtLXJvdyBzcGFuLmVycm9yIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jYXJ0LWFjdGlvbnMgLmNhcnQtYWN0aW9uLWNoZWNrb3V0IGZpZWxkc2V0IGJ1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLnB0X2NhcnQgLmNhcnQtcmVjb3Byb2R1Y3QtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDNweDsgfVxuICAgIC5wdF9jYXJ0IC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXS5zZWxlY3RlZCwgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICB3aWR0aDogMzZweDsgfVxuICAgICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdLnNlbGVjdGVkIC5zd2F0Y2hhbmNob3IsIC5wdF9jYXJ0IC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXTpob3ZlciAuc3dhdGNoYW5jaG9yIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgfVxuICAgICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdLnNlbGVjdGVkOmJlZm9yZSwgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAucHRfY2FydCAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLmNvbG9yIGxpW2RhdGEtY29sb3I9XCJCaWFuY29cIl06YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2NjYztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5wdF9jYXJ0IC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3IgbGlbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXSAuc3dhdGNoYW5jaG9yIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIGhlaWdodDogMjhweDtcbiAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaVtkYXRhLWNvbG9yPVwiQmlhbmNvXCJdIC5zd2F0Y2hhbmNob3I6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBub25lOyB9XG4gICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGhlaWdodDogMzhweDtcbiAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgI2ZmZjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgei1pbmRleDogMjA7IH1cbiAgICAucHRfY2FydCAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLmNvbG9yIGxpLnNlbGVjdGVkIGEuc3dhdGNoYW5jaG9yLCAucHRfY2FydCAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLmNvbG9yIGxpOmhvdmVyIGEuc3dhdGNoYW5jaG9yIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgIC5wdF9jYXJ0IC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3IgbGkuc2VsZWN0ZWQ6YWZ0ZXIsIC5wdF9jYXJ0IC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3IgbGk6aG92ZXI6YWZ0ZXIge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgICAgIGhlaWdodDogMzRweDtcbiAgICAgIHdpZHRoOiAzNHB4OyB9XG4gICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaTpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cbiAgICAucHRfY2FydCAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLmNvbG9yIGxpIHNwYW4uc3dhdGNoYW5jaG9yIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IH1cbiAgICAucHRfY2FydCAuY29tcGxldGUtdGhlLXNldCAuY29sdW1uLmNvbG9yIGxpIGEuc3dhdGNoYW5jaG9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaS5zZWxlY3RlZC12YWx1ZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnB0X2NhcnQgLmNvbXBsZXRlLXRoZS1zZXQgLmNvbHVtbi5jb2xvciBsaSBhLnN3YXRjaGFuY2hvciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgIWltcG9ydGFudDsgfVxuICAuY29uZmlybWF0aW9uUGFnZSB7XG4gICAgcGFkZGluZzogMTMwcHggNTBweDsgfVxuICAvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgQ0FSVCBQQVlNRU5UIFBBR0UgUkVTUE9OU0lWRVxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAqL1xuICAucGF5bWVudC1wYWdlIC5taW5pLWNhcnQtYXR0cmlidXRlcyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtOyB9XG4gIC5wYXltZW50LXBhZ2UgLm1pbmktY2FydC1wcmljaW5nIHtcbiAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgICAucGF5bWVudC1wYWdlIC5taW5pLWNhcnQtcHJpY2luZyAucHJpY2UtcHJvbW90aW9uIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAucGF5bWVudC1wYWdlIC5taW5pLWNhcnQtcHJpY2luZyAucHJpY2UtcHJvbW90aW9uIC5wcmljZS1zYWxlcywgLnBheW1lbnQtcGFnZSAubWluaS1jYXJ0LXByaWNpbmcgLnByaWNlLXByb21vdGlvbiAucHJpY2Utc3RhbmRhcmQge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLnBheW1lbnQtY2FyZC1pbmZvIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHggMDsgfVxuICAucGF5bWVudC1tZXRob2QtY3JlZGl0Y2FyZCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAuZm9ybS1yb3cgPiBpbnB1dCNkd2ZybV9iaWxsaW5nX3BheW1lbnRNZXRob2RzX2NyZWRpdENhcmRfbnVtYmVyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5wYXltZW50LW1ldGhvZC1jcmVkaXRjYXJkIC5mb3JtLXJvdyAuc2NhZGVuemEtbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IC0yMHB4OyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuZm9ybS1yb3cgLmNhcmQtdHlwZS1vcHRpb25zID4gbGFiZWwgaW1nIHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiBhdXRvOyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuZm9ybS1yb3cgbGFiZWwgc3BhbixcbiAgLnBheW1lbnQtY2FyZC1pbmZvIC5mb3JtLXJvdyBsYWJlbCBzcGFuLnJlcXVpcmVkLWluZGljYXRvciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuZm9ybS1yb3cgbGFiZWwgc3BhbiB7XG4gICAgY29sb3I6ICM3MzczNzM7IH1cbiAgLnBheW1lbnQtY2FyZC1pbmZvIC5mb3JtLXJvdyBpbnB1dCNkd2ZybV9iaWxsaW5nX3BheW1lbnRNZXRob2RzX2NyZWRpdENhcmRfbnVtYmVyLCAucGF5bWVudC1jYXJkLWluZm8gLmZvcm0tcm93IGlucHV0I2R3ZnJtX2JpbGxpbmdfcGF5bWVudE1ldGhvZHNfY3JlZGl0Q2FyZF9vd25lciwgLnBheW1lbnQtY2FyZC1pbmZvIC5mb3JtLXJvdyBpbnB1dCNkd2ZybV9iaWxsaW5nX3BheW1lbnRNZXRob2RzX2NyZWRpdENhcmRfY3ZuIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5wYXltZW50LWNhcmQtaW5mbyAuZXhwaXJlcy1kYXRlLWRyb3Bkb3duIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucGF5bWVudC1tZXRob2RzLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnBheW1lbnQtbWV0aG9kcy1ibG9jayAuc2hvdy1sYWJlbCBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDsgfVxuICAgIC5wYXltZW50LW1ldGhvZHMtYmxvY2sgLnBheW1lbnQtY2FyZC1mb3JtIGxlZ2VuZCB7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4OyB9XG4gICAgLnBheW1lbnQtbWV0aG9kcy1ibG9jayAucGF5bWVudC1jYXJkLWZvcm0gLnBtZi1QQVlQQUwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgaGVpZ2h0OiA1MHB4OyB9XG4gICAgLnBheW1lbnQtbWV0aG9kcy1ibG9jayAucGF5bWVudC1jYXJkLWZvcm0gI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLmV4cGlyZXMtZGF0ZS1kcm9wZG93biBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBheW1lbnQtbWV0aG9kcy1ibG9jayAucGF5bWVudC1jYXJkLWZvcm0gI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLnNjYWRlbnphLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAgIC5wYXltZW50LW1ldGhvZHMtYmxvY2sgLnBheW1lbnQtY2FyZC1mb3JtICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5wYXltZW50LW1ldGhvZHMtYmxvY2sgLnBheW1lbnQtY2FyZC1mb3JtICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5kaWFsb2ctcmVxdWlyZWQubm8tcGFkZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5wYXltZW50LW1ldGhvZHMtYmxvY2sgLnBheW1lbnQtY2FyZC1mb3JtICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5kaWFsb2ctcmVxdWlyZWQgLnJlcXVpcmVkLWluZGljYXRvciB7XG4gICAgICAgIGNvbG9yOiAjNjY2OyB9XG4gICAgICAucGF5bWVudC1tZXRob2RzLWJsb2NrIC5wYXltZW50LWNhcmQtZm9ybSAjUGF5bWVudE1ldGhvZF9DUkVESVRfQ0FSRCAuZGlhbG9nLXJlcXVpcmVkIGVtIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAudG91dGUtc2VjdXJpdGUge1xuICAgIG1hcmdpbjogMDsgfVxuICAucmVjYXBpdHVsYXRpZi1jb21tYW5kZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnJlY2FwaXR1bGF0aWYtY29tbWFuZGUgLnBheW1lbnQtdG90YWwtcHJpY2luZyB7XG4gICAgICBvcmRlcjogMTsgfVxuICAgICAgLnJlY2FwaXR1bGF0aWYtY29tbWFuZGUgLnBheW1lbnQtdG90YWwtcHJpY2luZyAucHRwLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMTVweDtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9XG4gICAgICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5wYXltZW50LXRvdGFsLXByaWNpbmcgLnB0cC1sYWJlbC5wdHAtcHJpeHRvdGFsIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxNXB4OyB9XG4gICAgLnJlY2FwaXR1bGF0aWYtY29tbWFuZGUgLnJjLXRpdGxlIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgcGFkZGluZzogMCAxNXB4IDI1cHg7IH1cbiAgICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5yYy10aXRsZSA+IHAuYmlsbGluZy1zdW1tYXJ5IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9XG4gICAgLnJlY2FwaXR1bGF0aWYtY29tbWFuZGUgLm1pbmktY2FydC1uYW1lIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfVxuICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5yYy1wcm9kdWN0cyB7XG4gICAgICBvcmRlcjogMztcbiAgICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5saXZyYWlzb24taW5mbyB7XG4gICAgICBvcmRlcjogNDsgfVxuICAgICAgLnJlY2FwaXR1bGF0aWYtY29tbWFuZGUgLmxpdnJhaXNvbi1pbmZvID4gZGl2IHtcbiAgICAgICAgcGFkZGluZzogMzBweCAxNXB4OyB9XG4gICAgICAucmVjYXBpdHVsYXRpZi1jb21tYW5kZSAubGl2cmFpc29uLWluZm8gbGkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5saXZyYWlzb24taW5mbyAubGktdGl0bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH1cbiAgICAgIC5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIC5saXZyYWlzb24taW5mbyAucmMtbW9kaWZpZXIge1xuICAgICAgICB0b3A6IDI4cHg7IH1cbiAgICAucmVjYXBpdHVsYXRpZi1jb21tYW5kZSAucmMtbW9kaWZpZXIge1xuICAgICAgcmlnaHQ6IDE1cHg7IH1cbiAgLyogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgIENBUlQgQUREUkVTUyBQQUdFIERFU0tUT1BcbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKi9cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIGxlZ2VuZCB7XG4gICAgcGFkZGluZzogMzBweCA1cHggMCA1cHg7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIGxlZ2VuZCxcbiAgLnBheW1lbnQtY2FyZC1mb3JtIGxlZ2VuZCB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRlZDtcbiAgICBwYWRkaW5nOiAwIDAgMjVweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAxNXB4IDIwcHg7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIC5zZWxlY3QtYWRkcmVzcyBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVudWxpc3Q7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogNzBweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBib3JkZXItY29sb3I6ICNmOGY4Zjg7IH1cbiAgLnNoaXBwaW5nQWRkcmVzcyB7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9XG4gIC5jaGVja291dC1zaGlwcGluZyAuZm9ybS1jYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlcnN0YXRlXCIsIGhlbHZldGljYSwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM2NjY7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIC5jaGVja2JveExpbmUuZm9ybS1pbmRlbnQge1xuICAgIG1hcmdpbjogMTBweCAxNXB4OyB9XG4gIC5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdNZXRob2RzTGlzdEFyZWEgdWwgbGkgLmljb24ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgd2lkdGg6IDc1cHg7IH1cbiAgICAuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nTWV0aG9kc0xpc3RBcmVhIHVsIGxpIC5pY29uID4gaW1nIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIGRpdiNzaGlwcGluZy1tZXRob2QtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nIC5zaGlwcGluZ01ldGhvZHNMaXN0U3ViVG90YWwtYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7IH1cbiAgLmNoZWNrb3V0LXNoaXBwaW5nLmFkZHJlc3MgLmZvcm0tcm93LmZvcm0tcm93LWJ1dHRvbiBidXR0b24ge1xuICAgIHdpZHRoOiAyODBweDsgfVxuICAuY2hlY2tvdXQtc2hpcHBpbmcgLmZvcm0tcm93LmNvdW50cnkgc2VsZWN0IHtcbiAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuc2FsdXRhdGlvbi1sYWJlbCxcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5zYWx1dGF0aW9uLWxhYmVsLFxuICAjUGF5bWVudE1ldGhvZF9DUkVESVRfQ0FSRCAuc2FsdXRhdGlvbi1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuZm9ybS1yb3csXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAuZm9ybS1yb3csXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5mb3JtLXJvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuZm9ybS1yb3cgbGFiZWwsXG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5mb3JtLXJvdyBsYWJlbCxcbiAgICAjUGF5bWVudE1ldGhvZF9DUkVESVRfQ0FSRCAuZm9ybS1yb3cgbGFiZWwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdG9wOiAyMXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbG9yOiAjNzM3MzczOyB9XG4gICAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5mb3JtLXJvdyBsYWJlbCBzcGFuLFxuICAgICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5mb3JtLXJvdyBsYWJlbCBzcGFuLFxuICAgICAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLmZvcm0tcm93IGxhYmVsIHNwYW4ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAgICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuZm9ybS1yb3cgbGFiZWwgLnJlcXVpcmVkLWluZGljYXRvcixcbiAgICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAuZm9ybS1yb3cgbGFiZWwgLnJlcXVpcmVkLWluZGljYXRvcixcbiAgICAgICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5mb3JtLXJvdyBsYWJlbCAucmVxdWlyZWQtaW5kaWNhdG9yIHtcbiAgICAgICAgY29sb3I6ICNkOTBmM2I7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5mb3JtLXJvdyBsYWJlbFtmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19hZGRyZXNzTGlzdFwiXSwgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuZm9ybS1yb3cgbGFiZWxbZm9yPVwiZHdmcm1fc2luZ2xlc2hpcHBpbmdfYmlsbGluZ0FkZHJlc3NfYWRkcmVzc0xpc3RcIl0sXG4gICAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgLmZvcm0tcm93IGxhYmVsW2Zvcj1cImR3ZnJtX3NpbmdsZXNoaXBwaW5nX2FkZHJlc3NMaXN0XCJdLFxuICAgICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5mb3JtLXJvdyBsYWJlbFtmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzTGlzdFwiXSxcbiAgICAgICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5mb3JtLXJvdyBsYWJlbFtmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19hZGRyZXNzTGlzdFwiXSxcbiAgICAgICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5mb3JtLXJvdyBsYWJlbFtmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzTGlzdFwiXSB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5zaGlwcGluZ0FkZHJlc3MgLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCxcbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCxcbiAgICAjUGF5bWVudE1ldGhvZF9DUkVESVRfQ0FSRCAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAgICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsIHNwYW4sXG4gICAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCBzcGFuLFxuICAgICAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLmZvcm0tcm93IC5jaXZpbGl0eSBsYWJlbCBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MsXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MsXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEICNiaWxsaW5nQWRkcmVzcyB7XG4gICAgbWFyZ2luOiAxNXB4IDE1cHggMzBweCAxNXB4OyB9XG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MgbGVnZW5kLFxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MgbGVnZW5kLFxuICAgICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEICNiaWxsaW5nQWRkcmVzcyBsZWdlbmQge1xuICAgICAgcGFkZGluZzogMzBweCAwIDAgMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MgLmNoZWNrYm94TGluZS5mb3JtLWluZGVudCxcbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzICNiaWxsaW5nQWRkcmVzcyAuZGlhbG9nLXJlcXVpcmVkLFxuICAgIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAjYmlsbGluZ0FkZHJlc3MgLmNoZWNrYm94TGluZS5mb3JtLWluZGVudCxcbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgI2JpbGxpbmdBZGRyZXNzIC5kaWFsb2ctcmVxdWlyZWQsXG4gICAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgI2JpbGxpbmdBZGRyZXNzIC5jaGVja2JveExpbmUuZm9ybS1pbmRlbnQsXG4gICAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgI2JpbGxpbmdBZGRyZXNzIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5oYWxmLXNpemUtZmllbGQgLmZvcm0tcm93IGxhYmVsLFxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgLmhhbGYtc2l6ZS1maWVsZCAuZm9ybS1yb3cgbGFiZWwsXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5oYWxmLXNpemUtZmllbGQgLmZvcm0tcm93IGxhYmVsIHtcbiAgICB3aWR0aDogY2FsYyg0MCUgLSAzMHB4KTsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5oYWxmLXNpemUtZmllbGQgc3Bhbi5lcnJvcixcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuYWRkcmVzc0Zvcm0gc3Bhbi5lcnJvcixcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyAuYWRkcmVzc0Zvcm0gLmZvcm0tcm93LmNvdW50cnkgc3Bhbi5lcnJvcixcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5oYWxmLXNpemUtZmllbGQgc3Bhbi5lcnJvcixcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5hZGRyZXNzRm9ybSBzcGFuLmVycm9yLFxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MgLmFkZHJlc3NGb3JtIC5mb3JtLXJvdy5jb3VudHJ5IHNwYW4uZXJyb3IsXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5oYWxmLXNpemUtZmllbGQgc3Bhbi5lcnJvcixcbiAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLmFkZHJlc3NGb3JtIHNwYW4uZXJyb3IsXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5hZGRyZXNzRm9ybSAuZm9ybS1yb3cuY291bnRyeSBzcGFuLmVycm9yIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5oYWxmLXNpemUtZmllbGQgc3Bhbltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0sXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5zaGlwcGluZ0FkZHJlc3MgLmFkZHJlc3NGb3JtIHNwYW5bZm9yPVwiZHdmcm1fc2luZ2xlc2hpcHBpbmdfYmlsbGluZ0FkZHJlc3NfYWRkcmVzc0ZpZWxkc19jb3VudHJ5XCJdLFxuICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdBZGRyZXNzIC5hZGRyZXNzRm9ybSAuZm9ybS1yb3cuY291bnRyeSBzcGFuW2Zvcj1cImR3ZnJtX3NpbmdsZXNoaXBwaW5nX2JpbGxpbmdBZGRyZXNzX2FkZHJlc3NGaWVsZHNfY291bnRyeVwiXSxcbiAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLmJpbGxpbmdBZGRyZXNzIC5oYWxmLXNpemUtZmllbGQgc3Bhbltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0sXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAuYWRkcmVzc0Zvcm0gc3Bhbltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0sXG4gIC5wdF9jaGVja291dCAjZHdmcm1fc2luZ2xlc2hpcHBpbmdfc2hpcHBpbmdBZGRyZXNzLmNoZWNrb3V0LXNoaXBwaW5nIC5iaWxsaW5nQWRkcmVzcyAuYWRkcmVzc0Zvcm0gLmZvcm0tcm93LmNvdW50cnkgc3Bhbltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0sXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5oYWxmLXNpemUtZmllbGQgc3Bhbltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0sXG4gICNQYXltZW50TWV0aG9kX0NSRURJVF9DQVJEIC5hZGRyZXNzRm9ybSBzcGFuW2Zvcj1cImR3ZnJtX3NpbmdsZXNoaXBwaW5nX2JpbGxpbmdBZGRyZXNzX2FkZHJlc3NGaWVsZHNfY291bnRyeVwiXSxcbiAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQgLmFkZHJlc3NGb3JtIC5mb3JtLXJvdy5jb3VudHJ5IHNwYW5bZm9yPVwiZHdmcm1fc2luZ2xlc2hpcHBpbmdfYmlsbGluZ0FkZHJlc3NfYWRkcmVzc0ZpZWxkc19jb3VudHJ5XCJdIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnByaW1hcnktY29udGVudCAuc2VydmljZS1wYWdlcy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLmZhcS1zaWRlYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLmZhcS1zaWRlYmFyIHVsIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5mYXEtc2lkZWJhciB1bCBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweDsgfVxuICAgICAgICAuZmFxLXNpZGViYXIgdWwgbGkgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMTRweCAxMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgICAuZmFxLXNpZGViYXIgdWwgbGkgYS5hY3RpdmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLnNlcnZpY2UtcGFnZXMtY29udGVudCAua2VlcGVyID4gLmNvbnRlbnQtYXNzZXQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mYXEtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLmZhcS1jb250ZW50LmFjdGl2ZSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmZhcS1jb250ZW50IGgyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuZmFxLWNvbnRlbnQgaDIsIC5mYXEtY29udGVudCBoMyB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH1cbiAgICAuZmFxLWNvbnRlbnQgcCwgLmZhcS1jb250ZW50IHVsLCAuZmFxLWNvbnRlbnQgb2wsIC5mYXEtY29udGVudCBsaSwgLmZhcS1jb250ZW50IHRhYmxlLCAuZmFxLWNvbnRlbnQgdGQsIC5mYXEtY29udGVudCBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAuZmFxLWNvbnRlbnQgc21hbGwge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgLmZhcS1jb250ZW50IG9sLCAuZmFxLWNvbnRlbnQgdWwge1xuICAgICAgcGFkZGluZzogMCAyMHB4IDAgMWVtOyB9XG4gIC8qXG4qICNPUkRFUi1MSVNUXG4qL1xuICAub3JkZXItaGlzdG9yeS1saXN0IC5vZGQge1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAub3JkZXItaGlzdG9yeS1saXN0IC5jZWxsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAub3JkZXItaGlzdG9yeS1saXN0IC5jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLm9yZGVyLWhpc3RvcnktbGlzdCAub3JkZXItaGlzdG9yeS1pdGVtIHtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7IH1cbiAgLm9yZGVyLWhpc3RvcnktbGlzdCAubGlua3M6bm90KC5yZXR1cm5MaW5rKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAub3JkZXItaGlzdG9yeS1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWRlZGVkO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAub3JkZXItaGlzdG9yeS1pdGVtIC5tb2JpbGUtaGVhZGVyIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAub3JkZXItaGlzdG9yeS1pdGVtIC5tb2JpbGUtaGVhZGVyIC5jZWxsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogIzczNzM3MzsgfVxuICAvKlxuKiAjT1JERVItU1VNTUFSWVxuKi9cbiAgLnB0X2FjY291bnQgLnByaW1hcnktY29udGVudCBoMSxcbiAgLnB0X29yZGVyIC5wcmltYXJ5LWNvbnRlbnQgaDEge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnB0X29yZGVyIC5pdGVtLWxpc3QsXG4gIC5zaGlwcGluZ2FuZHRvdGFscyxcbiAgLnB0X29yZGVyIGgyLm9yZGVyRGV0YWlsc1RpdGxlLFxuICAucHRfb3JkZXIgLmJhY2tUb09yZGVyc0xpc3QsXG4gIC5vcmRlcnNJbnRybyxcbiAgdWwuc2VhcmNoLXJlc3VsdC1pdGVtcyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLm9yZGVyc0ludHJvIHAge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAvKlxuKiAjUkVUVVJOLVBPUElOXG4qL1xuICBib2R5IC51aS1kaWFsb2cuY3JlYXRlUmV0dXJuIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7IH1cbiAgLnJldHVybi10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAjY3JlYXRlLXJldHVybiB7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gICAgI2NyZWF0ZS1yZXR1cm4gdGJvZHkgdGQge1xuICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgICAgI2NyZWF0ZS1yZXR1cm4gdGJvZHkgdGQ6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAjY3JlYXRlLXJldHVybiB0Ym9keSB0ZC5yZXR1cm4taXRlbS1uYW1lIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAgICNjcmVhdGUtcmV0dXJuIHRib2R5IHRkLnJldHVybi1pdGVtLW5hbWU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgI2NyZWF0ZS1yZXR1cm4gLnJldHVybmZvcm0ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogMTVweCA3MHB4O1xuICAgICAgbWFyZ2luOiA0MHB4IGF1dG8gMjVweDsgfVxuICAgICNjcmVhdGUtcmV0dXJuIHNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIGJvZHkgLnVpLWRpYWxvZy5jcmVhdGVSZXR1cm4gLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgIGJvZHkgLnVpLWRpYWxvZy5jcmVhdGVSZXR1cm4gLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgYm9keSAudWktZGlhbG9nLmNyZWF0ZVJldHVybiAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gc3Bhbi5lcnJvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwOyB9XG4gICNSZWdpc3RyYXRpb25Gb3JtIGxhYmVsW2Zvcj1cInByb2ZpbGVfYmlydGhkYXlcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAjUmVnaXN0cmF0aW9uRm9ybSAuYmlydGhkYXktcm93IHNwYW4uZXJyb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAjUmVnaXN0cmF0aW9uRm9ybSAucmVnaXN0ZXJOZXdzbGV0dGVyIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgI1JlZ2lzdHJhdGlvbkZvcm0gLnJlZ2lzdGVyTmV3c2xldHRlciAuZGlhbG9nLXJlcXVpcmVkIHtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gLmZvcm0tcm93LmZvcm0tcm93LWJ1dHRvbixcbiAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyAuZm9ybS1yb3cuZm9ybS1yb3ctYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgI1JlZ2lzdHJhdGlvbkZvcm0gbGFiZWw6bm90KFtmb3I9XCJkd2ZybV9sb2dpbl9yZW1lbWJlcm1lXCJdKSxcbiAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyBsYWJlbDpub3QoW2Zvcj1cImR3ZnJtX2xvZ2luX3JlbWVtYmVybWVcIl0pIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC53aHlSZWdpc3RlcixcbiAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLndoeVJlZ2lzdGVyIC5tYWluQWR2YW50YWdlcyAudGV4dCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDsgfVxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyxcbiAgLnB0X2FjY291bnQgLmxvZ2luRGF0YXMge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzIGxhYmVsIHNwYW4sXG4gICAgLnB0X2FjY291bnQgLmxvZ2luRGF0YXMgbGFiZWwgc3BhbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICNSZWdpc3RyYXRpb25Gb3JtIHNwYW4uZXJyb3IsXG4gIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzIHNwYW4uZXJyb3IsXG4gIC5wdF9hY2NvdW50IC5sb2dpbkRhdGFzIHNwYW4uZXJyb3Ige1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcy5yZWdpc3RlclBhZ2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSAjUmVnaXN0cmF0aW9uRm9ybSAucGVyc29uYWxEYXRhcyxcbiAgICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSAjUmVnaXN0cmF0aW9uRm9ybSAud2h5UmVnaXN0ZXIsXG4gICAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcy5yZWdpc3RlclBhZ2UgI1JlZ2lzdHJhdGlvbkZvcm0gI2FjY291bnRjcmVhdGlvbi1sb3lhbHR5LWhpZGRlbixcbiAgICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSAjUmVnaXN0cmF0aW9uRm9ybSAubmV3c2xldHRlci13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSAjUmVnaXN0cmF0aW9uRm9ybSAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzMXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICAgIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMucmVnaXN0ZXJQYWdlICNSZWdpc3RyYXRpb25Gb3JtIC5yZWdpc3Rlci1mb3JtLXN1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAgIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMucmVnaXN0ZXJQYWdlICNSZWdpc3RyYXRpb25Gb3JtIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW46IDQwcHggMDsgfVxuICAubS1zdG9yZWxvY2F0b3Ige1xuICAgIHBhZGRpbmc6IDIwcHggMTVweDsgfVxuICAubS1zdG9yZWxvY2F0b3JfX3NsaWRlciBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQgLmMtc3RvcmVsb2NhdG9yX19pbnB1dCxcbiAgLm0tc3RvcmVsb2NhdG9yX19maWVsZHNldCAuYy1zdG9yZWxvY2F0b3JfX2xhcmdlQnV0dG9uLFxuICAubS1zdG9yZWxvY2F0b3JfX2ZpZWxkc2V0IC5tLXN0b3JlbG9jYXRvcl9fY2hlY2tib3gsXG4gIC5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQgbGksXG4gIC5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxZW0gIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIC5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQgLmMtc3RvcmVsb2NhdG9yX19zbWFsbEJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAubS1zdG9yZWxvY2F0b3JfX2ZpZWxkc2V0IC5jLXN0b3JlbG9jYXRvcl9fY2hlY2tib3gge1xuICAgIHdpZHRoOiAyNXB4OyB9XG4gIC5tLXN0b3JlbG9jYXRvcl9fbWFwIC5jLXN0b3JlbG9jYXRvcl9faW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tLXN0b3JlbG9jYXRvcl9fbWFwIC5jLXN0b3JlbG9jYXRvcl9faW1nLS1pc01vYmlsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwIC41ZW0gMCAwOyB9XG4gIC5tLXN0b3JlbG9jYXRvcl9fbWFwIC5jLXN0b3JlbG9jYXRvcl9fdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxZW0gMCAzZW07IH1cbiAgLm0tc3RvcmVsb2NhdG9yX19tYXAgLmMtc3RvcmVsb2NhdG9yX190ZXh0LS1pc1RpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm0tc3RvcmVsb2NhdG9yX19pbmZvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubS1zdG9yZWxvY2F0b3JfX2luZm8gbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDVlbTsgfVxuICAgIC5tLXN0b3JlbG9jYXRvcl9faW5mbyAuYy1zdG9yZWxvY2F0b3JfX3RleHQge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgIC5tLXN0b3JlbG9jYXRvcl9faW5mbyAuYy1zdG9yZWxvY2F0b3JfX2xpbmsge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5pbnB1dC1jaGVja2JveCArIGxhYmVsOmJlZm9yZSxcbiAgLmlucHV0LWNoZWNrYm94ICsgYTpiZWZvcmUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDsgfVxuICAuc3R5bGVkLWNoZWNrYm94ID4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiBsYWJlbDphZnRlciB7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbGVmdDogNXB4OyB9XG4gIC5zdG9yZUhvdXJzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zdG9yZS1saXN0IGxpLnN0b3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCA2ZW07XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5wdF9hY2NvdW50IC5wcmltYXJ5LWNvbnRlbnQgaDEsXG4gIC5wdF9vcmRlciAucHJpbWFyeS1jb250ZW50IGgxIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAzNnB4OyB9XG4gIC5wdF9hY2NvdW50IC5idXR0b24tZmFuY3ktbGFyZ2UsXG4gIC5wdF9hY2NvdW50IGJ1dHRvbi5idXR0b24tZmFuY3ktbGFyZ2UsXG4gIC5wdF9hY2NvdW50IC5idXR0b24tZmFuY3ktbGFyZ2VbdHlwZT1cImJ1dHRvblwiXSxcbiAgLnB0X29yZGVyIC5idXR0b24tZmFuY3ktbGFyZ2UsXG4gIC5wdF9vcmRlciBidXR0b24uYnV0dG9uLWZhbmN5LWxhcmdlLFxuICAucHRfb3JkZXIgLmJ1dHRvbi1mYW5jeS1sYXJnZVt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gIC5sb2dpblBhZ2UuYWNjb3VudExvZ2luUGFnZSB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIG1hcmdpbjogMDsgfVxuICAubG9naW5QYWdlIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnB0X2FjY291bnQuYWNjb3VudExvZ2luUGFnZSB7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5wdF9hY2NvdW50IC5zZWN0aW9uLWhlYWRlcixcbiAgLnB0X2FjY291bnQgI3ByaW1hcnkgLnJlZ2lzdGVyUGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnB0X2FjY291bnQgI3ByaW1hcnkgLnJlZ2lzdGVyUGFnZSBoMSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5wdF9hY2NvdW50IC5jb2wtMSxcbiAgLnB0X2FjY291bnQgLmNvbC0yIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgLnB0X2FjY291bnQgLmNvbC0yIC5sb2dpbi1ib3gtY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmxvZ2luLWJveC1jb250ZW50LFxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyxcbiAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyB7XG4gICAgcGFkZGluZzogMTBweCAwIDA7IH1cbiAgICAubG9naW4tYm94LWNvbnRlbnQgbGFiZWwsXG4gICAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMgbGFiZWwsXG4gICAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmxvZ2luLWJveC1jb250ZW50ICNwYXNzd29yZC1yZXNldCxcbiAgICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyAjcGFzc3dvcmQtcmVzZXQsXG4gICAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyAjcGFzc3dvcmQtcmVzZXQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLmFjY291bnRNZW51IGxpIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmFjY291bnRNZW51IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWRlZGVkOyB9XG4gICAgLmFjY291bnRNZW51IGxpLmN1cnJlbnQgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAuYWNjb3VudE1lbnUgbGkgYSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDsgfVxuICAgICAgLmFjY291bnRNZW51IGxpIGE6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAucHRfYWNjb3VudCAuY3VzdG9tU2VsZWN0QXJlYSxcbiAgLnB0X29yZGVyIC5jdXN0b21TZWxlY3RBcmVhIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucHRfYWNjb3VudCAjcHJpbWFyeSxcbiAgLnB0X29yZGVyICNwcmltYXJ5IHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnB0X2FjY291bnQgI3ByaW1hcnkgLnBhZ2UtdGl0bGUsXG4gICAgLnB0X29yZGVyICNwcmltYXJ5IC5wYWdlLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMjVweCAxOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnB0X2FjY291bnQgLmFkZHJlc3Nlcy1jb250ZW50LFxuICAucHRfb3JkZXIgLmFkZHJlc3Nlcy1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDEwcHggMTBweDsgfVxuICAgIC5wdF9hY2NvdW50IC5hZGRyZXNzZXMtY29udGVudCAuaW5wdXQtY2hlY2tib3ggKyBsYWJlbDpiZWZvcmUsIC5wdF9hY2NvdW50IC5hZGRyZXNzZXMtY29udGVudCAuaW5wdXQtY2hlY2tib3ggKyBhOmJlZm9yZSxcbiAgICAucHRfb3JkZXIgLmFkZHJlc3Nlcy1jb250ZW50IC5pbnB1dC1jaGVja2JveCArIGxhYmVsOmJlZm9yZSxcbiAgICAucHRfb3JkZXIgLmFkZHJlc3Nlcy1jb250ZW50IC5pbnB1dC1jaGVja2JveCArIGE6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgdWwuYWRkcmVzcy1saXN0IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgdWwuYWRkcmVzcy1saXN0IGxpLmRlZmF1bHQgYS5tYWtlZGVmYXVsdDphZnRlciB7XG4gICAgICB0b3A6IDdweDsgfVxuICB1bC5hZGRyZXNzLWxpc3QgYS5tYWtlZGVmYXVsdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgdWwuYWRkcmVzcy1saXN0IGEuZWRpdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgdWwuYWRkcmVzcy1saXN0IC5taW5pLWFkZHJlc3MtdGl0bGUsXG4gIHVsLmFkZHJlc3MtbGlzdCAubWluaS1hZGRyZXNzLW5hbWUsXG4gIHVsLmFkZHJlc3MtbGlzdCAubWluaS1hZGRyZXNzLWxvY2F0aW9uLFxuICB1bC5hZGRyZXNzLWxpc3QgYS5lZGl0LFxuICB1bC5hZGRyZXNzLWxpc3QgYS5tYWtlZGVmYXVsdCB7XG4gICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIHVsLmFkZHJlc3MtbGlzdCBhLmRlbGV0ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOyB9XG4gIGJvZHkgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGJvZHkgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICBib2R5IGlucHV0W3R5cGU9J251bWJlciddLFxuICAubG9naW4tYm94LWNvbnRlbnQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5sb2dpbi1ib3gtY29udGVudCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5sb2dpbi1ib3gtY29udGVudCBpbnB1dFt0eXBlPSdudW1iZXInXSxcbiAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMgaW5wdXRbdHlwZT0nbnVtYmVyJ10sXG4gIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIGlucHV0W3R5cGU9J251bWJlciddLFxuICAubmV3c2xldHRlci1jb250YWluZXIgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAubmV3c2xldHRlci1jb250YWluZXIgLmZvcm0tcm93IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLm5ld3NsZXR0ZXItY29udGFpbmVyIC5mb3JtLXJvdyBpbnB1dFt0eXBlPSdudW1iZXInXSxcbiAgLm5ld3NsZXR0ZXItY29uZmlybSAuZm9ybS1yb3cgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5uZXdzbGV0dGVyLWNvbmZpcm0gLmZvcm0tcm93IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLm5ld3NsZXR0ZXItY29uZmlybSAuZm9ybS1yb3cgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgYm9keSAuY2l2aWxpdHkgbGFiZWwsXG4gIC5sb2dpbi1ib3gtY29udGVudCAuY2l2aWxpdHkgbGFiZWwsXG4gIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzIC5jaXZpbGl0eSBsYWJlbCxcbiAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyAuY2l2aWxpdHkgbGFiZWwsXG4gIC5uZXdzbGV0dGVyLWNvbnRhaW5lciAuZm9ybS1yb3cgLmNpdmlsaXR5IGxhYmVsLFxuICAubmV3c2xldHRlci1jb25maXJtIC5mb3JtLXJvdyAuY2l2aWxpdHkgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAubG9naW4tYm94LWNvbnRlbnQgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sb2dpbi1ib3gtY29udGVudCAucmVtZW1iZXJNZSBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAubG9naW4tYm94LWNvbnRlbnQgLmRpYWxvZy1yZXF1aXJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuYmlydGhkYXktcm93IHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAuYmlyaHRkYXktZXJyb3Ige1xuICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLnB0X2FjY291bnQgLmFjY291bnREYXRhcyAuZm9ybS1yb3ctYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMzBweCBhdXRvIDQwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2Ugc3BhbiB7XG4gICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIC5kaWFsb2ctY29udGVudCBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubW9kaWZ5QWRkcmVzcyBsZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAubW9kaWZ5QWRkcmVzcyAudWktZGlhbG9nLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDMwcHggMTVweDsgfVxuICAubW9kaWZ5QWRkcmVzcyAudWktaWNvbi1jbG9zZXRoaWNrIHtcbiAgICB0b3A6IDA7IH1cbiAgLmRpYWxvZy1jb250ZW50IC5mb3JtLXJvdy1idXR0b24gLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuZGlhbG9nLWNvbnRlbnQgLmZvcm0tcm93LWJ1dHRvbiBidXR0b24gKyAuYnV0dG9uLWZhbmN5LWxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZGlhbG9nLWNvbnRlbnQgLmZvcm0tcm93LWJ1dHRvbiAuZGVsZXRlLFxuICAuZGlhbG9nLWNvbnRlbnQgLmZvcm0tcm93LWJ1dHRvbiAuY2FuY2VsIHtcbiAgICBmb250LXNpemU6IDI4cHg7IH1cbiAgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gIC53aHlSZWdpc3RlcixcbiAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyAuZGlhbG9nLXJlcXVpcmVkLFxuICAucHRfYWNjb3VudCAucmVnaXN0ZXJQYWdlIC5wZXJzb25hbERhdGFzIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLndoeVJlZ2lzdGVyIC5tYWluQWR2YW50YWdlcyAuaXRlbTpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgcmlnaHQ6IC0xMHB4OyB9XG4gIC53aHlSZWdpc3RlciAubWFpbkFkdmFudGFnZXMgLml0ZW0gLnRleHQge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIC5mb3JtLXJvdy5iaXJ0aGRheSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICNkd2ZybV9sb2dpbiBsYWJlbDpub3QoW2Zvcj1cImR3ZnJtX2xvZ2luX3JlbWVtYmVybWVcIl0pIHtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5tZW51LW9wZW4gI3dpZGdldC1wcm9tbyB7XG4gICAgbWFyZ2luLXRvcDogNzJweCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDsgfVxuICAuY29tcGxldGUtdGhlLXNldCAucHJvZHVjdHMtc2V0IC5wcm9kdWN0LXNldCAuY29sb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiAzNnB4OyB9IH1cbiIsIi8qICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBWQVJJQUJMRVNcbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKi9cblxuLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIENPTE9SIFRBQkxFXG5cbiAgICAvL2RlZmF1bHRzXG4gICAgJGNfd2hpdGU6ICAgICAgICAgICAgICAgICNmZmY7XG4gICAgJGNfYmxhY2s6ICAgICAgICAgICAgICAgICMwMDA7XG4gICAgJGNfdHJhbnNwYXJlbnQ6ICAgICAgICAgIHJnYmEoJGNfd2hpdGUsIDAlKTtcblxuICAgIC8vZ3JheXNjYWxlXG4gICAgJG1haW4tY29sb3I6ICAgICAgICAgICAgICMwMTAxMDE7XG4gICAgJGNfdHVuZG9yYTogICAgICAgICAgICAgICM0OTQ5NDk7XG4gICAgJGRhcmstZ3JheTogICAgICAgICAgICAgICM3MzczNzM7XG4gICAgJG1lZGl1bS1ncmF5OiAgICAgICAgICAgICNlNGUzZTM7XG4gICAgJG1lZGl1bS1saWdodC1ncmF5OiAgICAgICM2NjY7XG4gICAgJGNfZ3JheTogICAgICAgICAgICAgICAgICM3ZjdmN2Y7XG4gICAgJGNfZHVzdHk6ICAgICAgICAgICAgICAgICM5NDk0OTQ7XG4gICAgJGJvcmRlcmxpZ2h0OiAgICAgICAgICAgICNhMWExYTE7XG4gICAgJGNfYWx0bzogICAgICAgICAgICAgICAgICNkNWQ1ZDU7XG4gICAgJGNfYWx0by1saWdodDogICAgICAgICAgICNkZmRmZGY7XG4gICAgJGxpZ2h0LWdyYXk6ICAgICAgICAgICAgICNlNWU1ZTU7XG4gICAgJGxpZ2h0ZXItZ3JheTogICAgICAgICAgICNlZGVkZWQ7XG4gICAgJGxpZ2h0ZXItZ3JheTE6ICAgICAgICAgICNmOGY4Zjg7XG4gICAgJGNoYXJjb2FsLWdyYXk6ICAgICAgICAgICM0YzRiNGI7XG4gICAgJGxpZ2h0LXdoaXRlOiAgICAgICAgICAgICNmM2YzZjM7ICAgIFxuICAgICRjX3NlYXNoZWxsOiAgICAgICAgICAgICAjZjFmMWYxO1xuICAgICRjX2FsYWJzdGVyOiAgICAgICAgICAgICAjZmFmYWZhO1xuICAgICRjX2dhbGxlcnk6ICAgICAgICAgICAgICAjZWJlYmViO1xuICAgICRjX3NpbHZlcjogICAgICAgICAgICAgICAjYmFiYWJhO1xuICAgICRjX21lcmN1cnk6ICAgICAgICAgICAgICAjZThlOGU4O1xuICAgICRjX2xpZ2h0OiAgICAgICAgICAgICAgICAjZjlmOWY5O1xuICAgICRjX3JhaXNpbi1ibGFjazogICAgICAgICAjMUYxRTIxO1xuICAgICRjX2dyYXkxOiAgICAgICAgICAgICAgICAjNzA3MDcwO1xuICAgICRibGFja01pbmU6ICAgICAgICAgICAgICAjMjcyNzI3O1xuXG4gICAgLy9yZWRzXG4gICAgJGNfY3JpbXNvbjogICAgICAgICAgICAgICNkOTBmM2I7XG4gICAgJGNfdHVmdDogICAgICAgICAgICAgICAgICNmZmQ4Y2M7XG4gICAgJGNfc3Vuc2V0OiAgICAgICAgICAgICAgICNGRjRFNEU7XG4gICAgJGNfZXJyb3I6ICAgICAgICAgICAgICAgICNGRTMzNEM7XG4gICAgJGNfY3JhaWw6ICAgICAgICAgICAgICAgICNjMjU0NDc7XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBUUkFOU0lUSU9OIFRBQkxFXG5cbiAgICAkdF9mYXN0OiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgJHRfbm9ybWFsOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgJHRfc2xvdzogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgRk9OVFNcblxuICAgICRmX2JvZHk6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICRmX2hlYWRpbmc6IFwiSW50ZXJzdGF0ZVwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICRmX2xpZ2h0OiA0MDA7XG4gICAgJGZ3X2xpZ2h0OiA0MDA7XG4gICAgJGZ3X25vcm1hbDogNTAwO1xuICAgICRmd19ib2xkOiA2MDA7XG4gICAgJGZ3X2JvbGRlcjogNzAwO1xuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgc2l6ZXNcbiAgICAkZGVmYXVsdC1zcGFjaW5nOiAzMHB4O1xuICAgICRndXR0ZXItd2lkdGg6IDEwcHg7XG5cbi8vIGZvbnQtc2l6ZXNcbiRkZWZhdWx0LWZvbnQtc2l6ZTogMTRweDtcbiRtb2JpbGUtZm9udC1zaXplOiAxMnB4O1xuXG4vLyBmb250IG5hbWVzXG4kZi1saWdodDogXCJDYWxpYnJpIExpZ2h0XCIsIENhbGlicmksIHNhbnMtc2VyaWY7XG4kZi1yZWd1bGFyOiBcIlBGIFNxdWFyZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuJGYtbWVkaXVtOiBcIlBGIFNxdWFyZSBTYW5zIFBybyBNZWRpdW1cIiwgc2Fucy1zZXJpZjtcblxuJGRlZmF1bHQtdGV4dC1mb250OiAkZi1saWdodDtcblxuLy8gZXRjXG5cbiRib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuJGJvcmRlci1ibGFjazogMXB4IHNvbGlkICRjX2JsYWNrO1xuJGJvcmRlci1uYXYtbTogMXB4IHNvbGlkICNjY2M7XG5cbiRzaXRlLXdpZHRoOiAxNDQwcHg7XG5cbiRkZWZhdWx0LWxldHRlci1zcGFjaW5nOiAwZW07XG4kZGVmYXVsdC1saW5lLWhlaWdodDoxLjU2O1xuXG4kYnJlYWtwb2ludDogOTYwcHg7XG5cbiRNb2JpbGUgOiBcImFsbCBhbmQgKG1heC13aWR0aDo3NjdweClcIjtcbiROb3RNb2JpbGUgOiBcImFsbCBhbmQgKG1pbi13aWR0aDo3NjhweClcIjtcbiRUYWJsZXQgOiBcImFsbCBhbmQgKG1heC13aWR0aCA6IDEwMjNweClcIjtcbiRUYWJsZXRPbmx5IDogXCJhbGwgYW5kIChtaW4td2lkdGggOiA3NjhweCkgYW5kIChtYXgtd2lkdGggOiAxMDIzcHgpXCI7XG4kTm90RGVza3RvcCA6IFwiKG1heC13aWR0aCA6IDk1OXB4KVwiO1xuJERlc2t0b3AgOiBcIihtaW4td2lkdGggOiA5NjBweClcIjtcbiREZXNrdG9wTWVkaXVtIDogXCIobWluLXdpZHRoIDogMTI0MHB4KVwiO1xuJERlc2t0b3BMYXJnZSA6IFwiKG1pbi13aWR0aCA6IDE0MDBweClcIjtcbiIsIi8vIG1hbmFnZSBjb250YWluZXIgd2lkdGggOlxuXG5AbWVkaWEgI3skTW9iaWxlfXtcblx0LmNvbnRhaW5lcixcblx0JWNvbnRhaW5lciB7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHR3aWR0aDogOTAlO1xuXHR9XG59XG5cbkBtZWRpYSAjeyROb3RNb2JpbGV9e1xuXHQuY29udGFpbmVyLFxuXHQlY29udGFpbmVyIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0bWF4LXdpZHRoIDogMTIwMHB4O1xuXHRcdC8vIHdpZHRoOiA3MCU7XG5cdH1cbn1cblxuXG5AbWl4aW4gY29udGFpbmVyTW9iaWxle1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdHdpZHRoOiA5MCU7XG59XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBDT0xVTU5TIEZPUiBERVNLVE9QXG5cblx0LmQtY29sdW1uLWZ1bGwge1xuXHRcdEBpbmNsdWRlIGNvbHVtbigxKTtcblx0fVxuXHQuZC1jb2x1bW4taGFsZiB7XG5cdFx0QGluY2x1ZGUgY29sdW1uKDEvMik7XG5cdH1cblx0LmQtY29sdW1uLXF1YXJ0ZXIge1xuXHRcdEBpbmNsdWRlIGNvbHVtbigxLzQpO1xuXHR9XG5cdC5kLWNvbHVtbi10aHJlZS1xdWFydGVycyB7XG5cdFx0QGluY2x1ZGUgY29sdW1uKDMvNCk7XG5cdH1cbiIsIkBtaXhpbiBjb2x1bW4oJHJhdGlvczogMSwgJG9mZnNldDogMCwgJGN5Y2xlOiAwLCAkZ3V0dGVyOiBtYXAtZ2V0KCRqZWV0LCAnZ3V0dGVyJyksICRjbGVhcmZpeDogdHJ1ZSwgJG50aDogbWFwLWdldCgkamVldCwgJ250aCcpKSB7XHJcbiAgJHNpZGU6IF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpO1xyXG4gICRvcHBvc2l0ZS1zaWRlOiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKTtcclxuICAkY29sdW1uLXdpZHRoczogX2dldC1jb2x1bW4oJHJhdGlvcywgJGd1dHRlcik7XHJcbiAgJG1hcmdpbi1sYXN0OiAwO1xyXG4gICRtYXJnaW4tbDogJG1hcmdpbi1sYXN0O1xyXG4gICRtYXJnaW4tcjogbnRoKCRjb2x1bW4td2lkdGhzLCAyKTtcclxuICAkbnRoLXNlbGVjdG9yOiBcIm50aC1jaGlsZFwiO1xyXG4gIEBpZiAkbnRoID09IFwidHlwZVwiIHtcclxuICAgICRudGgtc2VsZWN0b3I6IFwibnRoLW9mLXR5cGVcIjtcclxuICB9XHJcblxyXG4gIEBpZiAkb2Zmc2V0ICE9IDAge1xyXG4gICAgQGlmICRvZmZzZXQgPCAwIHtcclxuICAgICAgJG9mZnNldDogJG9mZnNldCAqIC0xO1xyXG4gICAgICAkb2Zmc2V0OiBudGgoX2dldC1jb2x1bW4oJG9mZnNldCwgbnRoKCRjb2x1bW4td2lkdGhzLCAyKSksIDEpO1xyXG4gICAgICAkbWFyZ2luLWxhc3Q6ICRvZmZzZXQgKyBudGgoJGNvbHVtbi13aWR0aHMsIDIpICogMjtcclxuICAgICAgJG1hcmdpbi1yOiAkbWFyZ2luLWxhc3Q7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJG9mZnNldDogbnRoKF9nZXQtY29sdW1uKCRvZmZzZXQsIG50aCgkY29sdW1uLXdpZHRocywgMikpLCAxKTtcclxuICAgICAgJG1hcmdpbi1sOiAkb2Zmc2V0ICsgbnRoKCRjb2x1bW4td2lkdGhzLCAyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkY2xlYXJmaXgge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgfVxyXG5cclxuICBmbG9hdDogJHNpZGU7XHJcbiAgY2xlYXI6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcclxuICB3aWR0aDogbnRoKCRjb2x1bW4td2lkdGhzLCAxKSAqIDElO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgI3skc2lkZX06ICRtYXJnaW4tbCAqIDElO1xyXG4gICAgI3skb3Bwb3NpdGUtc2lkZX06ICRtYXJnaW4tciAqIDElO1xyXG4gIH07XHJcblxyXG4gIEBpZiAkY3ljbGUgIT0gMCB7XHJcbiAgICAmOiN7JG50aC1zZWxlY3Rvcn0obikge1xyXG4gICAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06ICRtYXJnaW4tciAqIDElO1xyXG4gICAgICBmbG9hdDogJHNpZGU7XHJcbiAgICAgIGNsZWFyOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6I3skbnRoLXNlbGVjdG9yfSgjeyRjeWNsZX1uKSB7XHJcbiAgICAgIG1hcmdpbi0je19vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpfTogJG1hcmdpbi1sYXN0ICogMSU7XHJcbiAgICAgIGZsb2F0OiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKTtcclxuICAgIH1cclxuXHJcbiAgICAmOiN7JG50aC1zZWxlY3Rvcn0oI3skY3ljbGV9biArIDEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06ICRtYXJnaW4tbGFzdCAqIDElO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBmdW5jdGlvbiBjb2x1bW4td2lkdGgoJHJhdGlvczogMSwgJGd1dHRlcjogbWFwLWdldCgkamVldCwgJ2d1dHRlcicpKSB7XHJcbiAgQGlmIChtYXAtZ2V0KCRqZWV0LCAncGFyZW50LWZpcnN0JykgIT0gJ3RydWUnKSB7XHJcbiAgICAkcmF0aW9zOiBfcmV2ZXJzZSgkcmF0aW9zKTtcclxuICB9XHJcblxyXG4gICR3OiAxMDA7XHJcblxyXG4gIEBlYWNoICRyYXRpbyBpbiAkcmF0aW9zIHtcclxuICAgICR3OiAxMDAgKiAkcmF0aW8gLSAkZ3V0dGVyICsgJHJhdGlvICogJGd1dHRlcjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gdW5xdW90ZSgkdyArICclJyk7XHJcbn1cclxuXHJcblxyXG5AZnVuY3Rpb24gY29sdW1uLWd1dHRlcigkcmF0aW9zOiAxLCAkZ3V0dGVyOiBtYXAtZ2V0KCRqZWV0LCAnZ3V0dGVyJykpIHtcclxuICBAaWYgKG1hcC1nZXQoJGplZXQsICdwYXJlbnQtZmlyc3QnKSAhPSAndHJ1ZScpIHtcclxuICAgICRyYXRpb3M6IF9yZXZlcnNlKCRyYXRpb3MpO1xyXG4gIH1cclxuXHJcbiAgJHc6IDEwMDtcclxuXHJcbiAgQGVhY2ggJHJhdGlvIGluICRyYXRpb3Mge1xyXG4gICAgJGd1dHRlcjogJGd1dHRlciAvICR3ICogMTAwO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiB1bnF1b3RlKCRndXR0ZXIgKyAnJScpO1xyXG59XHJcblxyXG5cclxuQG1peGluIHNwYW4oJHJhdGlvOiAxLCAkb2Zmc2V0OiAwLCAkY3ljbGU6IDAsICRjbGVhcmZpeDogdHJ1ZSwgJG50aDogbWFwLWdldCgkamVldCwgXCJudGhcIikpIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG4gICRzcGFuLXdpZHRoOiBfZ2V0LXNwYW4oJHJhdGlvKTtcclxuICAkbWFyZ2luLXI6IDA7XHJcbiAgJG1hcmdpbi1sOiAkbWFyZ2luLXI7XHJcbiAgJG50aC1zZWxlY3RvcjogXCJudGgtY2hpbGRcIjtcclxuICBAaWYgJG50aCA9PSBcInR5cGVcIiB7XHJcbiAgICAkbnRoLXNlbGVjdG9yOiBcIm50aC1vZi10eXBlXCI7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9mZnNldCAhPSAwIHtcclxuICAgIEBpZiAkb2Zmc2V0IDwgMCB7XHJcbiAgICAgICRvZmZzZXQ6ICRvZmZzZXQgKiAtMTtcclxuICAgICAgJG1hcmdpbi1yOiBfZ2V0LXNwYW4oJG9mZnNldCk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJG1hcmdpbi1sOiBfZ2V0LXNwYW4oJG9mZnNldCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJGNsZWFyZml4IHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gIH1cclxuXHJcbiAgZmxvYXQ6ICRzaWRlO1xyXG4gIGNsZWFyOiBub25lO1xyXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XHJcbiAgd2lkdGg6ICRzcGFuLXdpZHRoICogMSU7XHJcbiAgbWFyZ2luOiB7XHJcbiAgICAjeyRzaWRlfTogJG1hcmdpbi1sICogMSU7XHJcbiAgICAjeyRvcHBvc2l0ZS1zaWRlfTogJG1hcmdpbi1yICogMSU7XHJcbiAgfTtcclxuXHJcbiAgQGlmICRjeWNsZSAhPSAwIHtcclxuICAgICY6I3skbnRoLXNlbGVjdG9yfShuKSB7XHJcbiAgICAgIGZsb2F0OiAkc2lkZTtcclxuICAgICAgY2xlYXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjojeyRudGgtc2VsZWN0b3J9KCN7JGN5Y2xlfW4pIHtcclxuICAgICAgZmxvYXQ6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6I3skbnRoLXNlbGVjdG9yfSgjeyRjeWNsZX1uICsgMSkge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gbW92ZSgkcmF0aW9zOiAwLCAkY29sLW9yLXNwYW46IGNvbHVtbiwgJGd1dHRlcjogbWFwLWdldCgkamVldCwgJ2d1dHRlcicpKSB7XHJcbiAgJHRyYW5zbGF0ZTogJyc7XHJcbiAgJHNpZGU6IF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpO1xyXG5cclxuICBAaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgJHJhdGlvczogX3JlcGxhY2UtbnRoKCRyYXRpb3MsIDAsIG50aCgkcmF0aW9zLCAxKSAqIC0xKTtcclxuICB9XHJcblxyXG4gIEBpZiBpbmRleChcImNvbHVtblwiIFwiY29sXCIgXCJjXCIsICRjb2wtb3Itc3Bhbikge1xyXG4gICAgJGNvbHVtbi13aWR0aHM6IF9nZXQtY29sdW1uKCRyYXRpb3MsICRndXR0ZXIpO1xyXG4gICAgJHRyYW5zbGF0ZTogbnRoKCRjb2x1bW4td2lkdGhzLCAxKSArIG50aCgkY29sdW1uLXdpZHRocywgMik7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdHJhbnNsYXRlOiBfZ2V0LXNwYW4oJHJhdGlvcyk7XHJcbiAgfVxyXG5cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbGVmdDogJHRyYW5zbGF0ZSAqIDElO1xyXG59XHJcblxyXG5cclxuQG1peGluIHVubW92ZSgpIHtcclxuICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIGxlZnQ6IDA7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gZGVidWcoJGNvbG9yOiBibHVlLCAkaW1wb3J0YW50OiBmYWxzZSkge1xyXG4gIEBpZiAkaW1wb3J0YW50IHtcclxuICAgICoge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjA1KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgKiB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuMDUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBjZW50ZXIoJG1heC13aWR0aDogbWFwLWdldCgkamVldCwgJ21heC13aWR0aCcpLCAkcGFkOiAwKSB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgICBsZWZ0OiAgYXV0bztcclxuICB9O1xyXG4gIHBhZGRpbmc6IHtcclxuICAgIGxlZnQ6ICAkcGFkO1xyXG4gICAgcmlnaHQ6ICRwYWQ7XHJcbiAgfTtcclxufVxyXG5cclxuXHJcbkBtaXhpbiB1bmNlbnRlcigpIHtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG5cclxuQG1peGluIHN0YWNrKCRwYWQ6IDAsICRhbGlnbjogZmFsc2UpIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG5cclxuICBkaXNwbGF5OiBibG9jaztcclxuICBjbGVhcjogYm90aDtcclxuICBmbG9hdDogbm9uZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IHtcclxuICAgIGxlZnQ6ICBhdXRvO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgfTtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tI3skc2lkZX06IGF1dG87XHJcbiAgfVxyXG5cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLXNpZGV9OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQGlmICRwYWQgIT0gMCB7XHJcbiAgICBwYWRkaW5nOiB7XHJcbiAgICAgIGxlZnQ6ICAkcGFkO1xyXG4gICAgICByaWdodDogJHBhZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAoJGFsaWduIGlzIG5vdCBmYWxzZSkge1xyXG4gICAgQGlmIGluZGV4KFwiY2VudGVyXCIgXCJjXCIsICRhbGlnbikge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9IEBlbHNlIGlmIGluZGV4KFwibGVmdFwiIFwibFwiLCAkYWxpZ24pIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH0gQGVsc2UgaWYgaW5kZXgoXCJyaWdodFwiIFwiclwiLCAkYWxpZ24pIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIHVuc3RhY2soKSB7XHJcbiAgJHNpZGU6IF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpO1xyXG4gICRvcHBvc2l0ZS1zaWRlOiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKTtcclxuXHJcbiAgdGV4dC1hbGlnbjogJHNpZGU7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG4gIGNsZWFyOiBub25lO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgbGVmdDogIDA7XHJcbiAgICByaWdodDogMDtcclxuICB9O1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi0jeyRzaWRlfTogMDtcclxuICB9XHJcblxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGFsaWduKCRkaXJlY3Rpb246IGJvdGgpIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuXHJcbiAgQGlmIGluZGV4KFwiaG9yaXpvbnRhbFwiIFwiaFwiLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgfSBAZWxzZSBpZiBpbmRleChcInZlcnRpY2FsXCIgXCJ2XCIsICRkaXJlY3Rpb24pIHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG4iLCIvLyBMaXN0IGZ1bmN0aW9ucyBjb3VydGVzeSBvZiBUZWFtIFNhc3MuXHJcblxyXG4vLyBHZXQgIHBlcmNlbnRhZ2UgZnJvbSBhIGdpdmVuIHJhdGlvLlxyXG5AZnVuY3Rpb24gX2dldC1zcGFuKCRyYXRpbzogMSkge1xyXG4gIEByZXR1cm4gJHJhdGlvICogMTAwO1xyXG59XHJcblxyXG4vLyBXb3JrIG91dCB0aGUgY29sdW1uIHdpZHRocyBiYXNlZCBvbiB0aGUgcmF0aW8gYW5kIGd1dHRlciBzaXplcy5cclxuQGZ1bmN0aW9uIF9nZXQtY29sdW1uKCRyYXRpb3M6IDEsICRndXR0ZXI6IG1hcC1nZXQoJGplZXQsICdndXR0ZXInKSkge1xyXG4gICRyYXRpb3M6IGlmKG5vdCBtYXAtZ2V0KCRqZWV0LCAncGFyZW50LWZpcnN0JyksIF9yZXZlcnNlKCRyYXRpb3MpLCAkcmF0aW9zKTtcclxuICAkd2lkdGg6IDEwMDtcclxuXHJcbiAgQGVhY2ggJHJhdGlvIGluICRyYXRpb3Mge1xyXG4gICAgJGd1dHRlcjogJGd1dHRlciAvICR3aWR0aCAqIDEwMDtcclxuICAgICR3aWR0aDogMTAwICogJHJhdGlvIC0gJGd1dHRlciArICRyYXRpbyAqICRndXR0ZXI7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR3aWR0aCAkZ3V0dGVyO1xyXG59XHJcblxyXG4vLyBHZXQgdGhlIHNldCBsYXlvdXQgZGlyZWN0aW9uIGZvciB0aGUgcHJvamVjdC5cclxuQGZ1bmN0aW9uIF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpIHtcclxuICAkZGlyZWN0aW9uOiBpZihtYXAtZ2V0KCRqZWV0LCAnbGF5b3V0LWRpcmVjdGlvbicpID09ICdSVEwnLCByaWdodCwgbGVmdCk7XHJcblxyXG4gIEByZXR1cm4gJGRpcmVjdGlvbjtcclxufVxyXG5cclxuLy8gUmVwbGFjZSBhIHNwZWNpZmllZCBsaXN0IHZhbHVlIHdpdGggYSBuZXcgdmFsdWUgKHVzZXMgYnVpbHQgaW4gc2V0LW50aCgpIGlmIGF2YWlsYWJsZSlcclxuQGZ1bmN0aW9uIF9yZXBsYWNlLW50aCgkbGlzdCwgJGluZGV4LCAkdmFsdWUpIHtcclxuICAvLyBGYWxsYmFjayBmb3IgU2FzcyAzLjJcclxuICBAaWYgZnVuY3Rpb24tZXhpc3RzKCdzZXQtbnRoJykgIT0gdHJ1ZSB7XHJcbiAgICAkcmVzdWx0OiAoKTtcclxuICAgICRpbmRleDogaWYoJGluZGV4IDwgMCwgbGVuZ3RoKCRsaXN0KSArICRpbmRleCArIDEsICRpbmRleCk7XHJcblxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGxpc3QpIHtcclxuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGlmKCRpID09ICRpbmRleCwgJHZhbHVlLCBudGgoJGxpc3QsICRpKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEByZXR1cm4gJHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8vIFNhc3MgMy4zXHJcbiAgJHJlc3VsdDogc2V0LW50aCgkbGlzdCwgJGluZGV4LCAkdmFsdWUpO1xyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vIFJldmVyc2UgYSBsaXN0IChwcm9ncmVzc2l2ZWx5IGVuaGFuY2VkIGZvciBTYXNzIDMuMylcclxuQGZ1bmN0aW9uIF9yZXZlcnNlKCRsaXN0KSB7XHJcbiAgLy8gU2FzcyAzLjJcclxuICBAaWYgZnVuY3Rpb24tZXhpc3RzKCdzZXQtbnRoJykgIT0gdHJ1ZSB7XHJcbiAgICAkcmVzdWx0OiAoKTtcclxuXHJcbiAgICBAZm9yICRpIGZyb20gbGVuZ3RoKCRsaXN0KSAqIC0xIHRocm91Z2ggLTEge1xyXG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCBhYnMoJGkpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8gU2FzcyAzLjNcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGZsb29yKGxlbmd0aCgkbGlzdCkgLyAyKSArIDEge1xyXG4gICAgJHRtcDogbnRoKCRsaXN0LCAkaSk7XHJcbiAgICAkbGlzdDogc2V0LW50aCgkbGlzdCwgJGksIG50aCgkbGlzdCwgLSRpKSk7XHJcbiAgICAkbGlzdDogc2V0LW50aCgkbGlzdCwgLSRpLCAkdG1wKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGxpc3Q7XHJcbn1cclxuXHJcbi8vIEdldCB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uIHRvIGEgZ2l2ZW4gdmFsdWUuXHJcbkBmdW5jdGlvbiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcclxuICBAaWYgJGRpcmVjdGlvbiA9PSAnbGVmdCcge1xyXG4gICAgQHJldHVybiByaWdodDtcclxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ3JpZ2h0JyB7XHJcbiAgICBAcmV0dXJuIGxlZnQ7XHJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09ICd0b3AnIHtcclxuICAgIEByZXR1cm4gYm90dG9tO1xyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAnYm90dG9tJyB7XHJcbiAgICBAcmV0dXJuIHRvcDtcclxuICB9IEBlbHNlIGlmIGluZGV4KCdsdHInICdMVFInLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBAcmV0dXJuIHJ0bDtcclxuICB9IEBlbHNlIGlmIGluZGV4KCdydGwnICdSVEwnLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBAcmV0dXJuIGx0cjtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuICdgI3skZGlyZWN0aW9ufWAgaXMgbm90IGEgZGlyZWN0aW9uOyBwbGVhc2UgbWFrZSBzdXJlIHlvdXIgZGlyZWN0aW9uIGlzIGFsbCBsb3dlcmNhc2UuJztcclxuICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiIsIi8qICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbiAgICBCVVRUT05TXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICovXG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBERUZBVUxUXG5cbi5idXR0b24tZGVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTZweCAzNXB4O1xuICAgIGJhY2tncm91bmQ6ICRjX2JsYWNrO1xuICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogJHRfZmFzdDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkY19ibGFjaywgOCUpO1xuICAgIH1cbn1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgYm9yZGVyOiAycHggc29saWQgJG1haW4tY29sb3I7XG4gICAgY29sb3I6ICRjX3doaXRlO1xuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICBsaW5lLWhlaWdodDogMS4xMTJlbTtcbiAgICB0cmFuc2l0aW9uOmFsbCAwLjFzO1xuICAgIHBhZGRpbmc6IDE5cHggMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY19jcmltc29uO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjX2NyaW1zb247XG4gICAgfVxuICAgICYuZC1ibG9jayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuJWJ1dHRvbi1mb3JtIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY19ibGFjaztcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjX2JsYWNrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0cmFuc2l0aW9uOiAkdF9mYXN0O1xuICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjX2JsYWNrO1xuICAgICAgICBjb2xvcjogJGNfd2hpdGU7XG4gICAgfVxufVxuXG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBMRUdBQ1lcblxuJW1haW5CdXR0b257XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjokY193aGl0ZTtcbn1cblxuQG1peGluIG1haW5CdXR0b25SZXNwb25zaXZle1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgbWluLWhlaWdodDogYXV0bztcbn1cblxuJW1haW5CdXR0b25SZXNwb25zaXZle1xuICAgIEBpbmNsdWRlIG1haW5CdXR0b25SZXNwb25zaXZlO1xufVxuIiwiJGJhc2VGb250U2l6ZSA6IDE2O1xuQGZ1bmN0aW9uIGZvbnRTaXplKCRwaXhlbHMsICRjb250ZXh0OiAkYmFzZUZvbnRTaXplKSB7XG4gIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcbiAgICAkcGl4ZWxzOiAkcGl4ZWxzICogMXB4O1xuICB9XG5cbiAgQGlmICh1bml0bGVzcygkY29udGV4dCkpIHtcbiAgICAkY29udGV4dDogJGNvbnRleHQgKiAxcHg7XG4gIH1cblxuICBAcmV0dXJuICRwaXhlbHMgLyAkY29udGV4dCAqIDFyZW07XG59XG5cbkBmdW5jdGlvbiByZW1pZnkoJHBpeGVscywgJGNvbnRleHQ6ICRiYXNlRm9udFNpemUpIHtcbiAgQGlmICh1bml0bGVzcygkcGl4ZWxzKSkge1xuICAgICRwaXhlbHM6ICRwaXhlbHMgKiAxcHg7XG4gIH1cblxuICBAaWYgKHVuaXRsZXNzKCRjb250ZXh0KSkge1xuICAgICRjb250ZXh0OiAkY29udGV4dCAqIDFweDtcbiAgfVxuXG4gIEByZXR1cm4gJHBpeGVscyAvICRjb250ZXh0ICogMXJlbTtcbn1cbiIsIlxuLyogYnJlYWRjcnVtYnMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmJyZWFkY3J1bWJ7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gICYtY29udGFpbmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC13aGl0ZTtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgd2lkdGg6YXV0bztcbiAgICAgIGhlaWdodDphdXRvO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gIH1cbiAgLnNlYXJjaC1yZXN1bHQtb3B0aW9ucyAmIHtcbiAgICB3aWR0aDphdXRvO1xuICB9XG59XG5cbi5icmVhZGNydW1iIGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnByb2R1Y3QtZGV0YWlsIC5icmVhZGNydW1ie1xuICBtYXJnaW46MCAwIDAgMTVweDtcbn1cbi5icmVhZGNydW1iIGxpe1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuLmJyZWFkY3J1bWIgbGkgc3Bhbi5sYXN0LFxuLmJyZWFkY3J1bWIgYS5icmVhZGNydW1iLWxhc3R7XG4gIGNvbG9yOiRjX2JsYWNrO1xuICBmb250LXNpemU6IGZvbnRTaXplKDE0KTsgXG59XG4uYnJlYWRjcnVtYiBhLFxuLmJyZWFkY3J1bWIgc3BhbntcbiAgY29sb3I6JGRhcmstZ3JheTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJyZWFkY3J1bWIgc3Bhbi5icmVhZGNydW1iLWxhc3R7XG4gIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xufVxuXG4uYnJlYWRjcnVtYiBzcGFuLmJyZWFkY3J1bWItcmVmaW5lbWVudC1uYW1le1xuICBjb2xvcjokbWFpbi1jb2xvcjtcbn1cblxuLmJyZWFkY3J1bWItcmVmaW5lZC1ieXtcbiAgZGlzcGxheTpub25lO1xufVxuXG4uYnJlYWRjcnVtYiBhe1xuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1MHB4IC0zNjhweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTAxcHggNDYxcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuLmJyZWFkY3J1bWIgYTpob3ZlcntcbiAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbn1cbi5icmVhZGNydW1iIGgxe1xuICBmb250LXNpemU6MWVtO1xuICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgbWFyZ2luOiAyMHB4IDAgMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmJyZWFkY3J1bWIgaDEgLnBhZ2luZy1jdXJyZW50LXBhZ2V7bGVmdDotOTk5ZW07cG9zaXRpb246YWJzb2x1dGU7fVxuLypcbi5icmVhZGNydW1iLXJlZmluZW1lbnQtbmFtZSB7XG4gICAgYmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC1zdHlsZTppdGFsaWM7XG59XG4qL1xuLmJyZWFkY3J1bWItcmVmaW5lbWVudC12YWx1ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuYS5icmVhZGNydW1iLXJlbGF4IHtcbiAgICBiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgcGFkZGluZzowIDVweCAwIDA7XG59XG5cblxuLmJyZWFkY3J1bWItbW9iaWxlIHtcbiAgZGlzcGxheTpub25lO1xufVxuIiwiJWhpZGUtbW9iaWxlIHtcblx0QG1lZGlhICN7JE1vYmlsZX0ge1xuXHRcdGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuJW9ubHktbW9iaWxlIHtcblx0QG1lZGlhICN7JE5vdE1vYmlsZX0ge1xuXHRcdGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7IFxuXHR9XHRcdFxufSBcblxuJWNyb3NzU2VsbFRpdGxlLFxuLmNyb3NzU2VsbFRpdGxle1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRmb250LXNpemU6IGZvbnRTaXplKDMwKTtcblx0cGFkZGluZy1ib3R0b206IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGNfYmxhY2s7XG5cdGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuXHRmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHQmOmJlZm9yZXtcblx0XHQvLyBob21lcGFnZSdzIGhlYXJ0IGljb25cblx0XHRAaW5jbHVkZSBpY28oaGVhcnQtdGl0bGUpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjogMCBhdXRvIDE1cHg7XG5cdH1cblx0QG1lZGlhICN7JE1vYmlsZX17XG5cdFx0Jntcblx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHR9XG5cdH1cbn1cblxuLy9BZGQgdG8gcmlnaHQgY29tcG9uZW50IGNzc1xuLmN1c3RvbVNlbGVjdHtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiA1cHggMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLy8gLmN1c3RvbVNlbGVjdElubmVye1xuLy8gXHR0ZXh0LWFsaWduOiBsZWZ0O1xuLy8gXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuLy8gXHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuLy8gfVxuLmN1c3RvbVNlbGVjdEFycm93e1xuXHRAaW5jbHVkZSBpY28oc2VsZWN0LWFycm93KTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5xdWFudGl0eS1zZWxlY3Rpb25fX2J1dHRvbntcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC1zaXplOiAxNnB4O1xuXHRoZWlnaHQ6IDM3cHg7XG5cdHdpZHRoOiAzN3B4O1xuICB9XG4iLCJAbWl4aW4gaWNvKCRuYW1lKSB7XG4gIGNvbnRlbnQ6XCIgXCI7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTsgXG4gIHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgXG4gIEBpbmNsdWRlIGljb25zKCRuYW1lKTtcblxuICBAbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCAobWluLXJlc29sdXRpb246IDE0NGRwaSkge1xuICAgIEBpbmNsdWRlIGljb25zKCN7JG5hbWV9LTJ4KTtcbiAgfVxufSAiLCJcbkBtaXhpbiBpY29ucygkbmFtZSl7XG5cbiAgQGlmICgkbmFtZSA9PSAnaWNvbicpe1xuXG4gIH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdhcnJvdy1sZWZ0LWdyYXknKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC00MDFweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogOXB4O1xuXHRcdFx0aGVpZ2h0OiAxN3B4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdhcnJvdy1sZWZ0LXNsaWRlcicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzgycHggLTI4M3B4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyOXB4O1xuXHRcdFx0aGVpZ2h0OiA0OHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdhcnJvdy1yaWdodC1zbGlkZXInKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNHB4IC0yMTdweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjlweDtcblx0XHRcdGhlaWdodDogNDhweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWRvd24tY3JpbXNvbicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTM0MnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiAxMHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdidWxsZXQtZG93bi15ZWxsb3cnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0zODFweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdGhlaWdodDogMTBweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWRvd24nKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQyMXB4IC0zMjBweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMTBweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWxlZnQtYmlnZ2VyJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtNjZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTdweDtcblx0XHRcdGhlaWdodDogMjRweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWxlZnQnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQzMnB4IC0xNzZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTBweDtcblx0XHRcdGhlaWdodDogMTRweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LXJpZ2h0LWJpZ2dlcicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDIycHggLTIyNnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0aGVpZ2h0OiAzNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdidWxsZXQtcmlnaHQtc21hbGwnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQyOHB4IC0zNDFweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNnB4O1xuXHRcdFx0aGVpZ2h0OiA5cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2J1bGxldC1yaWdodC15ZWxsb3cnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQzM3B4IC0xNTBweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTBweDtcblx0XHRcdGhlaWdodDogMTVweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LXJpZ2h0Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zNTdweCAtNjJweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjYXJ0Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC00MzNweCAtMTI2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDExcHg7XG5cdFx0XHRoZWlnaHQ6IDE0cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2NoYXQnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0yMzhweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTdweDtcblx0XHRcdGhlaWdodDogMTdweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnY2hlY2snKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQzMnB4IC0yMDBweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogOHB4O1xuXHRcdFx0aGVpZ2h0OiA4cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2NsaWVudCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzgycHggMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiA2MnB4O1xuXHRcdFx0aGVpZ2h0OiA1NXB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjbG9zZScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTMxN3B4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxNnB4O1xuXHRcdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjbG9zZV93aGl0ZScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTI5MXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxNnB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjdXN0b21lci1mcicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg2cHggLTYycHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDE2MXB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjdXN0b21lcicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYycHggLTI5OHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMDRweDtcblx0XHRcdGhlaWdodDogMThweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnZXJyb3I0MDQtZnInKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0xMzRweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjU2cHg7XG5cdFx0XHRoZWlnaHQ6IDMxcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2Vycm9yNDA0Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMTc1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDIxMnB4O1xuXHRcdFx0aGVpZ2h0OiAzMnB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdmLWluc3RhJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zMjVweCAtMzc5cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDIzcHg7XG5cdFx0XHRoZWlnaHQ6IDIzcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2YteXQnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTM1OHB4IC0zNzlweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjNweDtcblx0XHRcdGhlaWdodDogMjNweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnZmlsdGVyLWNoZWNrYm94LXNlbGVjdGVkJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zOTFweCAtMzc5cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDIycHg7XG5cdFx0XHRoZWlnaHQ6IDIycHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2ZpbHRlci1jaGVja2JveCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMnB4O1xuXHRcdFx0aGVpZ2h0OiAyMnB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdoZWFydC1pY29uLWZpbGxlZCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTI2NXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdoZWFydC1pY29uJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtMTg2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDE5cHg7XG5cdFx0XHRoZWlnaHQ6IDE3cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2hlYXJ0LXRpdGxlJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMTRweCAtMzc5cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDI4cHg7XG5cdFx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2ljby1jaGVjaycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjIzcHggLTM3OXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdpY28tdHJhc2gnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NHB4IC0zMnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdsb2NhdGlvbicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzU0cHggLTMyNnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiAyN3B4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtYXAtbWFya2VyLWJsYWNrJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0yMjJweCAtMTc1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItZ3JlZW4nKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MnB4IC0xNzVweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdGhlaWdodDogMzBweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWFwLW1hcmtlci1wZXJpb2RpYycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzAycHggLTE3NXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtYXAtbWFya2VyLXBoYXJtYWN5Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zNDJweCAtMTc1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItcmVkJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0yMzVweCAtMzI2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItd2hpdGUnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTM0OHB4IC0xMzRweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdGhlaWdodDogMjlweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWVudScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTIxM3B4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtaW5pLWNhcnQtaG92ZXInKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MnB4IC0zMjZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjVweDtcblx0XHRcdGhlaWdodDogMzlweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWluaS1jYXJ0LW1vYmlsZScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzgycHggLTIyNnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0aGVpZ2h0OiA0N3B4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtaW5pLWNhcnQnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQyMXB4IC0yODNweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjJweDtcblx0XHRcdGhlaWdodDogMjdweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbmV3c2xldHRlci10aXRsZScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg2cHggLTk2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDEyNnB4O1xuXHRcdFx0aGVpZ2h0OiAxN3B4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICduZXdzbGV0dGVyLXllbGxvdycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTE2MHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMnB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICduZXdzbGV0dGVyJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zODJweCAtMzQxcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDM2cHg7XG5cdFx0XHRoZWlnaHQ6IDI2cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ29mZmVyLWNoZWNrLWFjdGl2ZScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjU3cHggLTM3OXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdvZmZlci1jaGVjay1tb2JpbGUnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MnB4IC02NXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiA1MXB4O1xuXHRcdFx0aGVpZ2h0OiA1MXB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdvZmZlci1jaGVjaycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjkxcHggLTM3OXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdvb3BzJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDE3NnB4O1xuXHRcdFx0aGVpZ2h0OiA1N3B4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdvcHMnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC02N3B4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxNzZweDtcblx0XHRcdGhlaWdodDogNTdweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnb3Vwcycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg2cHggMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxODZweDtcblx0XHRcdGhlaWdodDogNTJweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncGx1cycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTEwMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdyLWd1aWRlLWRlcy1mb3JtZXMnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NnB4IC0xMzRweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMzFweDtcblx0XHRcdGhlaWdodDogMzFweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnci1ndWlkZS1kZXMtdGFpbGxlcycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA3cHggLTEzNHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAzMXB4O1xuXHRcdFx0aGVpZ2h0OiAzMXB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdyLWluc3RhJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zODJweCAtMTc2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3JlYXNzdXJhbmNlLTMwJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDBweCAtMjE3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDcxcHg7XG5cdFx0XHRoZWlnaHQ6IDcxcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3JlYXNzdXJhbmNlLWJvdXRpcXVlJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC04MXB4IC0yMTdweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNzFweDtcblx0XHRcdGhlaWdodDogNzFweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncmVhc3N1cmFuY2UtZGVsaXZlcnknKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MnB4IC0yMTdweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNzFweDtcblx0XHRcdGhlaWdodDogNzFweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncmVhc3N1cmFuY2Utc2VjdXJlJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0yNDNweCAtMjE3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDcxcHg7XG5cdFx0XHRoZWlnaHQ6IDcxcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3JlYXNzdXJhbmNlLXNlcnZpY2UnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IC0yOThweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNzFweDtcblx0XHRcdGhlaWdodDogNzFweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnc2VhcmNoJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zMThweCAtMzI2cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDI2cHg7XG5cdFx0XHRoZWlnaHQ6IDI3cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3NlbGVjdC1hcnJvdycpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU0cHggLTM2MnB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiA5cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3NlcnZpY2UtY2xpZW50Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC04MXB4IC0yOThweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNzFweDtcblx0XHRcdGhlaWdodDogNzBweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnc2hhcmUnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MnB4IC0zNzlweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjVweDtcblx0XHRcdGhlaWdodDogMjVweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnc2xpZGVyLW5leHQtbWluaScpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTM3OXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAyOXB4O1xuXHRcdFx0aGVpZ2h0OiA0OHB4O1xuXHRcdH1cblxuXG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdzbGlkZXItcHJldi1taW5pJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0zOXB4IC0zNzlweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjlweDtcblx0XHRcdGhlaWdodDogNDhweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndG9nZ2xlLW1vYmlsZS1uYXYnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MnB4IC0xMjZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogNDFweDtcblx0XHRcdGhlaWdodDogNDBweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndXNlci1sb2dnZWQnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NXB4IC0zMjZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMzNweDtcblx0XHRcdGhlaWdodDogMjdweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndXNlci1tb2JpbGUnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE5N3B4IC0zMjZweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMjhweDtcblx0XHRcdGhlaWdodDogMzVweDtcblx0XHR9XG5cblxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndXNlcicpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzhweCAtMzc5cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDI2cHg7XG5cdFx0XHRoZWlnaHQ6IDI4cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3dpc2hsaXN0LXdoaXRlJyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC00NTRweCAtMTMwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDIwcHg7XG5cdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3dpc2hsaXN0Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0xODdweCAtMzc5cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDI2cHg7XG5cdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0fVxuXG5cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2Fycm93LWxlZnQtZ3JheS0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgtODAycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgxOHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMzRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2Fycm93LWxlZnQtc2xpZGVyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNzY0cHgvMikgKC01NjZweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg5NnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYXJyb3ctcmlnaHQtc2xpZGVyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNjQ4cHgvMikgKC00MzRweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg5NnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWRvd24tY3JpbXNvbi0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgtNjg0cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzNnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMjBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2J1bGxldC1kb3duLXllbGxvdy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgtNzYycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzMnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMjBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2J1bGxldC1kb3duLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtODQycHgvMikgKC02NDBweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDMwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgyMHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWxlZnQtYmlnZ2VyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC0xMzJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDM0cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg0OHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LWxlZnQtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC04NjRweC8yKSAoLTM1MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMjBweC8yKTtcblx0XHRcdGhlaWdodDogKDI4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdidWxsZXQtcmlnaHQtYmlnZ2VyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtODQ0cHgvMikgKC00NTJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg2OHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LXJpZ2h0LXNtYWxsLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtODU2cHgvMikgKC02ODJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDEycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgxOHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnYnVsbGV0LXJpZ2h0LXllbGxvdy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTg2NnB4LzIpICgtMzAwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgyMHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMzBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2J1bGxldC1yaWdodC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTcxNHB4LzIpICgtMTI0cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgxMHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMjBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2NhcnQtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC04NjZweC8yKSAoLTI1MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMjJweC8yKTtcblx0XHRcdGhlaWdodDogKDI4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjaGF0LTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC00NzZweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDM0cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgzNHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnY2hlY2stMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC04NjRweC8yKSAoLTQwMHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMTZweC8yKTtcblx0XHRcdGhlaWdodDogKDE2cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjbGllbnQtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC03NjRweC8yKSAoMHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMTI0cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgxMTBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2Nsb3NlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC02MzRweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDMycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgzMHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnY2xvc2Vfd2hpdGUtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC05MDhweC8yKSAoLTU4MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMzJweC8yKTtcblx0XHRcdGhlaWdodDogKDMycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjdXN0b21lci1mci0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTM3MnB4LzIpICgtMTI0cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzMjJweC8yKTtcblx0XHRcdGhlaWdodDogKDQ4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdjdXN0b21lci0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTMyNHB4LzIpICgtNTk2cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0MDhweC8yKTtcblx0XHRcdGhlaWdodDogKDM2cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdlcnJvcjQwNC1mci0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoMHB4LzIpICgtMjY4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg1MTJweC8yKTtcblx0XHRcdGhlaWdodDogKDYycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdlcnJvcjQwNC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoMHB4LzIpICgtMzUwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0MjRweC8yKTtcblx0XHRcdGhlaWdodDogKDY0cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdmLWluc3RhLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNjUwcHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQ2cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg0NnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnZi15dC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTcxNnB4LzIpICgtNzU4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0NnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNDZweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2ZpbHRlci1jaGVja2JveC1zZWxlY3RlZC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTc4MnB4LzIpICgtNzU4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0NHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNDRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2ZpbHRlci1jaGVja2JveC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0NHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNDRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2hlYXJ0LWljb24tZmlsbGVkLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC01MzBweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDM2cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgzMnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnaGVhcnQtaWNvbi0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgtMzcycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzOHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMzRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ2hlYXJ0LXRpdGxlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtMjI4cHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU2cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg1MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnaWNvLWNoZWNrLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNDQ2cHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQ4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg0OHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnaWNvLXRyYXNoLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC02NHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNDBweC8yKTtcblx0XHRcdGhlaWdodDogKDQ4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdsb2NhdGlvbi0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTcwOHB4LzIpICgtNjUycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzNnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNTRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItYmxhY2stMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC00NDRweC8yKSAoLTM1MHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNjBweC8yKTtcblx0XHRcdGhlaWdodDogKDYwcHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtYXAtbWFya2VyLWdyZWVuLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNTI0cHgvMikgKC0zNTBweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDYwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg2MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWFwLW1hcmtlci1wZXJpb2RpYy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTYwNHB4LzIpICgtMzUwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg2MHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNjBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItcGhhcm1hY3ktMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC02ODRweC8yKSAoLTM1MHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNjBweC8yKTtcblx0XHRcdGhlaWdodDogKDYwcHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtYXAtbWFya2VyLXJlZC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTQ3MHB4LzIpICgtNjUycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg2MHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNjBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21hcC1tYXJrZXItd2hpdGUtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC02OTZweC8yKSAoLTI2OHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNDBweC8yKTtcblx0XHRcdGhlaWdodDogKDU4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdtZW51LTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC00MjZweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgzMHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWluaS1jYXJ0LWhvdmVyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtMzI0cHgvMikgKC02NTJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDUwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg3OHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbWluaS1jYXJ0LW1vYmlsZS0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTc2NHB4LzIpICgtNDUycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg2MHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoOTRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ21pbmktY2FydC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTg0MnB4LzIpICgtNTY2cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0NHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNTRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ25ld3NsZXR0ZXItdGl0bGUtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC0zNzJweC8yKSAoLTE5MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMjUycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgzNHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnbmV3c2xldHRlci15ZWxsb3ctMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC05MDhweC8yKSAoLTMyMHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNDRweC8yKTtcblx0XHRcdGhlaWdodDogKDMycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICduZXdzbGV0dGVyLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNzY0cHgvMikgKC02ODJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDcycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg1MnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnb2ZmZXItY2hlY2stYWN0aXZlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNTE0cHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQ4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg0OHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnb2ZmZXItY2hlY2stbW9iaWxlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNzY0cHgvMikgKC0xMzBweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDEwMnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMTAycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdvZmZlci1jaGVjay0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTU4MnB4LzIpICgtNzU4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0OHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNDhweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ29vcHMtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKDBweC8yKSAoMHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMzUycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgxMTRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ29wcy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoMHB4LzIpICgtMTM0cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzNTJweC8yKTtcblx0XHRcdGhlaWdodDogKDExNHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnb3Vwcy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTM3MnB4LzIpICgwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgzNzJweC8yKTtcblx0XHRcdGhlaWdodDogKDEwNHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncGx1cy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTkwOHB4LzIpICgtMjAwcHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg0MHB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNDBweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3ItZ3VpZGUtZGVzLWZvcm1lcy0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTUzMnB4LzIpICgtMjY4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg2MnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNjJweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3ItZ3VpZGUtZGVzLXRhaWxsZXMtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC02MTRweC8yKSAoLTI2OHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNjJweC8yKTtcblx0XHRcdGhlaWdodDogKDYycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdyLWluc3RhLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNzY0cHgvMikgKC0zNTJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDgwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg4MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncmVhc3N1cmFuY2UtMzAtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKDBweC8yKSAoLTQzNHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMTQycHgvMik7XG5cdFx0XHRoZWlnaHQ6ICgxNDJweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3JlYXNzdXJhbmNlLWJvdXRpcXVlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtMTYycHgvMikgKC00MzRweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDE0MnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMTQycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdyZWFzc3VyYW5jZS1kZWxpdmVyeS0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTMyNHB4LzIpICgtNDM0cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgxNDJweC8yKTtcblx0XHRcdGhlaWdodDogKDE0MnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAncmVhc3N1cmFuY2Utc2VjdXJlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtNDg2cHgvMikgKC00MzRweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDE0MnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMTQycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdyZWFzc3VyYW5jZS1zZXJ2aWNlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgwcHgvMikgKC01OTZweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDE0MnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoMTQycHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdzZWFyY2gtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC02MzZweC8yKSAoLTY1MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNTJweC8yKTtcblx0XHRcdGhlaWdodDogKDU0cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdzZWxlY3QtYXJyb3ctMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC05MDhweC8yKSAoLTcyNHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoMzZweC8yKTtcblx0XHRcdGhlaWdodDogKDE4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdzZXJ2aWNlLWNsaWVudC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTE2MnB4LzIpICgtNTk2cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICgxNDJweC8yKTtcblx0XHRcdGhlaWdodDogKDE0MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnc2hhcmUtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC0zMDRweC8yKSAoLTc1OHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNTBweC8yKTtcblx0XHRcdGhlaWdodDogKDUwcHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICdzbGlkZXItbmV4dC1taW5pLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgwcHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg5NnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnc2xpZGVyLXByZXYtbWluaS0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTc4cHgvMikgKC03NThweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU4cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg5NnB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndG9nZ2xlLW1vYmlsZS1uYXYtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC03NjRweC8yKSAoLTI1MnB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoODJweC8yKTtcblx0XHRcdGhlaWdodDogKDgwcHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cdFx0QGVsc2UgaWYgKCRuYW1lID09ICd1c2VyLWxvZ2dlZC0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTU1MHB4LzIpICgtNjUycHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg2NnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNTRweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3VzZXItbW9iaWxlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtMzk0cHgvMikgKC02NTJweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDU2cHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg3MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAndXNlci0yeCcpe1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1sb3ZhYmxlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAoLTE1NnB4LzIpICgtNzU4cHgvMik7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6ICg1MnB4LzIpO1xuXHRcdFx0aGVpZ2h0OiAoNTZweCAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAoOTUycHgvMikgKDg1NHB4LzIpO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAoJG5hbWUgPT0gJ3dpc2hsaXN0LXdoaXRlLTJ4Jyl7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tc3ByaXRlLTJ4LWxvdmFibGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgtOTA4cHgvMikgKC0yNjBweC8yKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogKDQwcHgvMik7XG5cdFx0XHRoZWlnaHQ6ICg0MHB4IC8gMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICg5NTJweC8yKSAoODU0cHgvMik7XG5cdFx0fVxuXHRcdEBlbHNlIGlmICgkbmFtZSA9PSAnd2lzaGxpc3QtMngnKXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtbG92YWJsZS5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogKC0zNzRweC8yKSAoLTc1OHB4LzIpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHdpZHRoOiAoNTJweC8yKTtcblx0XHRcdGhlaWdodDogKDQ4cHggLyAyKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogKDk1MnB4LzIpICg4NTRweC8yKTtcblx0XHR9XG5cbn1cbiIsIi8qXG4qIERvdHRlZCBCb3JkZXIgLSBBIFNBU1MgbWl4aW4gdG8gaGVscCB5b3UgaW5jcmVhc2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBkb3RzIG9mIGJvcmRlci1zdHlsZTpkb3R0ZWQuXG4qIEJ5IEBmbG9yYnJhelxuKiBEb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlcyAtIGdpdGh1Yi5jb20vZmxvcmJyYXovRG90dGVkLUJvcmRlci13LWN1c3RvbS1zcGFjaW5nLVNDU1MtTWl4aW5cbiogVjEuMFxuKi9cbkBtaXhpbiBkb3R0ZWRCb3JkZXIoJGNvbG9yOiAjOGY4ZjhmLCAkb3JpZW50YXRpb246IGhvcml6b250YWwsICRwb3NpdGlvbjogdG9wLCAkc3BhY2luZzogNXB4LCAkc2l6ZTogMXB4KSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgQGlmICRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRjb2xvciAkc2l6ZS8kc3BhY2luZywgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkc3BhY2luZyAkc2l6ZTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkY29sb3IgJHNpemUvJHNwYWNpbmcsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHNpemUgJHNwYWNpbmc7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICB9XG4gIC5pZTkgJiB7XG4gICAgYm9yZGVyLSN7JHBvc2l0aW9ufToxcHggZG90dGVkICRjb2xvcjsgICAgICBcbiAgfVxufVxuXG4vKlxuKiBVdGlsaXR5QmVsdCAtIGEgc3RhcnRlciBraXQgZm9yIGFueSBTQVNTIHByb2plY3RcbiogQnkgQGRtdGludG5lciAmIEBoYWNraW5ndWlcbiogRG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXMgLSBoYWNraW5ndWkuY29tL2Zyb250LWVuZC8xMC1iZXN0LXNjc3MtdXRpbGl0aWVzL1xuKiBWMS4xLjBcbiovXG5cblxuLy8gcGxhY2Vob2xkZXIgc3R5bGVcbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxuICAmOi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHtAY29udGVudH1cbiAgJjo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICB7QGNvbnRlbnR9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fSAgXG59XG4vLyB1c2FnZTpcbi8vaW5wdXQgeyBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4vLyAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4vLyAgICBjb2xvcjogcmVkO1xuLy99fVxuXG5cbi8vIHRyYW5zcGFyZW50IEJHIGluY2x1ZGluZyBJRXMgXG5AbWl4aW4gdHJhbnNwYXJlbnQoJGNvbG9yLCAkYWxwaGEpIHtcbiAgJHJnYmE6IHJnYmEoJGNvbG9yLCAkYWxwaGEpOyBcbiAgJGllLWhleC1zdHI6IGllLWhleC1zdHIoJHJnYmEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJnYmE7XG4gIC8vIFNhc3MgdHJhbnNmb3JtZSBsdWktbcOqbWUgbGUgcmdiYSBlbiBoZXhhZMOpY2ltYWwgcG91ciBJRVxuICBmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9I3skaWUtaGV4LXN0cn0sZW5kQ29sb3JzdHI9I3skaWUtaGV4LXN0cn0pOyBcbiAgem9vbTogMTtcbn1cblxuXG4vKlxuIyMgVHJpYW5nbGVcbiogQGluY2x1ZGUgdHJpYW5nbGUgd2l0aGluIGEgcHNldWRvIGVsZW1lbnQgYW5kIGFkZCBwb3NpdGlvbmluZyBwcm9wZXJ0aWVzIChpZS4gdG9wLCBsZWZ0KVxuKiAkZGlyZWN0aW9uOiB1cCwgZG93biwgbGVmdCwgcmlnaHRcbiovXG5AbWl4aW4gdHJpYW5nbGUoJGRpcmVjdGlvbiwgJHNpemU6IDhweCwgJGNvbG9yOiAjMjIyKXtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMDsgd2lkdGg6IDA7XG4gIEBpZiAoJGRpcmVjdGlvbiA9PSAndXAnKXtcbiAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCAkY29sb3I7XG4gICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gJ2Rvd24nKXtcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3I7XG4gICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gJ2xlZnQnKXtcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkICRjb2xvcjtcbiAgfVxuICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSAncmlnaHQnKXtcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgJGNvbG9yO1xuICB9XG59XG5cbi8qXG4qIEN1cnJlbmN5XG4qL1xuJWN1cnJlbmN5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyQnO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG4uVVNEICVjdXJyZW5jeTpiZWZvcmUgeyBjb250ZW50OiAnJCc7IH1cbi5FVVIgJWN1cnJlbmN5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDIwQUMnOyB9IC8vIG11c3QgZXNjYXBlIHRoZSBodG1sIGVudGl0aWVzIGZvciBlYWNoIGN1cnJlbmN5IHN5bWJvbFxuLklMUyAlY3VycmVuY3k6YmVmb3JlIHsgY29udGVudDogJ1xcMjBBQSc7IH1cbi5HQlAgJWN1cnJlbmN5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDAwQTMnOyB9XG5cbi8qXG4qIENsZWFyZml4XG4qL1xuJWNsZWFyZml4IHtcbiAgKnpvb206IDE7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8qXG4qIEdob3N0IFZlcnRpY2FsIEFsaWduXG4qL1xuQG1peGluIGdob3N0VmVydGljYWxBbGlnbigkcHNldWRvRWw6IGJlZm9yZSl7XG4gICY6I3skcHNldWRvRWx9IHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAuMXB4O1xuICB9XG59XG4ldmVydGljYWwtYWxpZ24ge1xuICBAaW5jbHVkZSBnaG9zdFZlcnRpY2FsQWxpZ24oKTtcbn1cblxuLypcbiogVHJ1bmNhdGUgVGV4dFxuKi9cbkBtaXhpbiB0cnVuY2F0ZVRleHQoJG92ZXJmbG93OiBlbGxpcHNpcyl7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6ICRvdmVyZmxvdzsgLy8gdmFsdWVzIGFyZTogY2xpcCwgZWxsaXBzaXMsIG9yIGEgc3RyaW5nXG59XG5cbi8qXG4qIEFuaW1hdGlvblxuKi9cbkBtaXhpbiBhbmltYXRpb24oJG5hbWUsICRkdXJhdGlvbjogMTAwMG1zLCAkaXRlcmF0aW9uczogaW5maW5pdGUsICR0aW1pbmctZnVuY3Rpb246IGVhc2UsICRkZWxheTogMG1zKSB7XG4gIC8vIFRoZXJlIGlzIGEgRkYgYnVnIHRoYXQgcmVxdWlyZXMgYWxsIHRpbWUgdmFsdWVzIHRvIGhhdmUgdW5pdHMsIGV2ZW4gMCAhISEhISFcbiAgLXdlYmtpdC1hbmltYXRpb246ICRuYW1lICRkdXJhdGlvbiAkaXRlcmF0aW9ucyAkdGltaW5nLWZ1bmN0aW9uICRkZWxheTtcbiAgLW1vei1hbmltYXRpb246ICRuYW1lICRkdXJhdGlvbiAkaXRlcmF0aW9ucyAkdGltaW5nLWZ1bmN0aW9uICRkZWxheTtcbiAgLW8tYW5pbWF0aW9uOiAkbmFtZSAkZHVyYXRpb24gJGl0ZXJhdGlvbnMgJHRpbWluZy1mdW5jdGlvbiAkZGVsYXk7XG4gIGFuaW1hdGlvbjogJG5hbWUgJGR1cmF0aW9uICRpdGVyYXRpb25zICR0aW1pbmctZnVuY3Rpb24gJGRlbGF5O1xufVxuXG5cbi8qXG4qIFJlc2l6ZSBTcHJpdGUgLSBmb3IgcmVzaXppbmcgb25seSBhIHNpbmdsZSBpbWFnZSBmcm9tIGEgc3ByaXRlXG4qXG4qIHBhcmFtczogJG1hcCA9ICQ8bmFtZT4tc3ByaXRlcyAoZXguICRpY29uLXNwcml0ZXMpXG4qICAgICAgICAgJHNwcml0ZSA9IGZpbGUgbmFtZSB3L28gZmlsZSB0eXBlIGVuZGluZyAoZXguIGdsb2JlKVxuICAgICAgICAgICRwZXJjZW50ID0gbnVtYmVyIChleC4gNTApXG4qXG4qIChpZiBjb21wYXNzIENTUzMgbWl4aW5zIG5vdCBpbmNsdWRlZCwgdW5jb21tZW50IHRoZSBiYWNrZ3JvdW5kLXNpemUgcm93IGFuZCBjb21tZW50IHRoZSBAaW5jbHVkZSB2ZXJzaW9uKVxuKi9cbkBtaXhpbiByZXNpemUtc3ByaXRlKCRtYXAsICRzcHJpdGUsICRwZXJjZW50KSB7XG4gICRzcHJpdGVQYXRoOiAgICBzcHJpdGUtcGF0aCgkbWFwKTtcbiAgJHNwcml0ZVdpZHRoOiAgIGltYWdlLXdpZHRoKCRzcHJpdGVQYXRoKTtcbiAgJHNwcml0ZUhlaWdodDogIGltYWdlLWhlaWdodCgkc3ByaXRlUGF0aCk7XG4gICR3aWR0aDogaW1hZ2Utd2lkdGgoc3ByaXRlLWZpbGUoJG1hcCwgJHNwcml0ZSkpO1xuICAkaGVpZ2h0OiBpbWFnZS1oZWlnaHQoc3ByaXRlLWZpbGUoJG1hcCwgJHNwcml0ZSkpO1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXNpemUoY2VpbCgkc3ByaXRlV2lkdGggKiAoJHBlcmNlbnQvMTAwKSkgY2VpbCgkc3ByaXRlSGVpZ2h0ICogKCRwZXJjZW50LzEwMCkpKTtcbiAgLy8gIGJhY2tncm91bmQtc2l6ZTogJHNwcml0ZVdpZHRoICogKCRwZXJjZW50LzEwMCkpICRzcHJpdGVIZWlnaHQgKiAoJHBlcmNlbnQvMTAwKTtcbiAgd2lkdGg6IGNlaWwoJHdpZHRoKigkcGVyY2VudC8xMDApKTtcbiAgaGVpZ2h0OiBjZWlsKCRoZWlnaHQqKCRwZXJjZW50LzEwMCkpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGZsb29yKG50aChzcHJpdGUtcG9zaXRpb24oJG1hcCwgJHNwcml0ZSksIDIpICAqICgkcGVyY2VudC8xMDApICk7XG59XG4vKlxuKiBSZXNpemVzIGFsbCBpbWFnZXMgaW4gYSBnaXZlbiBzcHJpdGVcbiogbWl4aW4gY291cnRlc3kgb2YgV2lsa2VyIEzDumNpbyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS93aWxrZXJsdWNpby82NDQyMzA5XG4qIHBhcmFtczogJG9ubHkgPSBpZiB5b3Ugd2FudCB0byBsaXN0IHNwZWNpZmljIGZpbGVzIGluc3RlYWQgb2YgcmVnZW5lcmF0aW5nIGV2ZXJ5IGltYWdlIChleC4gZ2xvYmUsIGNoZWNrbWFyaylcbiovXG5AbWl4aW4gcmVzaXplLXNwcml0ZS1zZXQoJG1hcCwgJHBlcmNlbnQsICRvbmx5Li4uKSB7XG4gICRuYW1lOiBzcHJpdGVfbWFwX25hbWUoJG1hcCk7XG5cbiAgQGVhY2ggJHNwcml0ZSBpbiBzcHJpdGVfbmFtZXMoJG1hcCkge1xuICAgIEBpZiBsZW5ndGgoJG9ubHkpID09IDAgb3IgaW5kZXgoJG9ubHksICRzcHJpdGUpICE9IGZhbHNlIHtcbiAgICAgIC4jeyRuYW1lfS0jeyRzcHJpdGV9IHtcbiAgICAgICAgQGluY2x1ZGUgcmVzaXplLXNwcml0ZSgkbWFwLCAkc3ByaXRlLCAkcGVyY2VudCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qXG4qIEhVSSBUb29sdGlwc1xuKi9cbkBtaXhpbiBodWlfdG9vbHRpcCgkY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApLCAkZGlyZWN0aW9uOiB0b3ApIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB6LWluZGV4OiA5ODtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICAmOmFmdGVyIHsgLy8gZm9yIHRleHQgYnViYmxlXG4gICAgICBjb250ZW50OiAkY29udGVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4ICMwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgIH1cbiAgICBAaWYgKCRkaXJlY3Rpb24gPT0gJ3RvcCcpe1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShkb3duLCA2cHgsICMyMjIpO1xuICAgICAgICB0b3A6IC0ycHg7IG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGxlZnQ6IDQ3JTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB0b3A6IC0yOHB4O1xuICAgICAgICBsZWZ0OiA0NyU7IG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gJ2JvdHRvbScpe1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZSh1cCwgNnB4LCAjMjIyKTtcbiAgICAgICAgdG9wOiBhdXRvOyBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgIGxlZnQ6IDQ3JTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3R0b206IC0yOHB4O1xuICAgICAgICBsZWZ0OiA0NyU7IG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vKlxuIyMgVGV4dC1hbGlnbiBqdXN0aWZ5XG5Gb3IgcGVyZmVjdGx5IGFsaWduZWQgZ3JpZHMgdGhhdCBkb24ndCByZWx5IG9uIGZsb2F0aW5nIGVsZW1lbnRzIGFuZCBkaWZmaWN1bHQgY2FsY3VsYXRpb25zXG5cbi0gaHR0cDovL3d3dy5iYXJyZWxueS5jb20vYmxvZy90ZXh0LWFsaWduLWp1c3RpZnktYW5kLXJ3ZC8gKi9cbiVqdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgJjphZnRlciB7IC8vIGFkZHMgYSBmYWxzZSBsYXN0IGxpbmUgdG8gdGhlIGNvbnRlbnQgc28ganVzdGlmeSBpcyBhcHBsaWVkXG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBiYWNrZ3JvdW5kLWltYWdlKCRpbWFnZS1uYW1lKSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzLyN7JGltYWdlLW5hbWV9Jyk7XG59XG5cblxuXG5cblxuIiwiLm1vYmlsZS1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2h7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yKTtcbiAgICAmLnN3aXBlci1hY3RpdmUtc3dpdGNoe1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNik7XG4gICAgfVxufSIsIi50b29sdGlwIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cbi50b29sdGlwOmhvdmVyIC50b29sdGlwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgb3BhY2l0eToxO1xuICAgIG92ZXJmbG93OnZpc2libGU7XG4gICAgdmlzaWJpbGl0eTp2aXNpYmxlO1xufVxuLmpzIC50b29sdGlwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xufVxuLnRvb2x0aXAgLnRvb2x0aXAtY29udGVudCxcbiN0b29sdGlwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTNlMztcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzMDAwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG1heC13aWR0aDogMjQwcHg7XG59XG4jdG9vbHRpcCAuYXJyb3cge1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHdpZHRoOjE1cHg7XG4gICAgYmFja2dyb3VuZDpyZWQ7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDotMTVweDtcbn1cbiN0b29sdGlwIC5yZWNvbW1lbmRhdGlvbi10b29sdGlwLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICNDQ0NDQ0M7XG4gICAgZm9udC1zaXplOjEuMmVtO1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgcGFkZGluZzoxMHB4O1xuXG4gICAgLnByb2R1Y3QtcHJpY2UgLnByaWNlLXN0YW5kYXJkIHtcbiAgICAgICAgY29sb3I6Izk5OTk5OTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDtcbiAgICB9XG59XG4jdG9vbHRpcCAucmVjb21tZW5kYXRpb24tdG9vbHRpcC1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzoxMHB4O1xufVxuI3Rvb2x0aXAgLnJlY29tbWVuZGF0aW9uLXRvb2x0aXAtYXR0cmlidXRlcyB7XG4gICAgcGFkZGluZzoxMHB4O1xufVxuIiwiLnNlbGVjdC1jc3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWRlZGVkO1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xuICAgICAgICBib3JkZXItY29sb3I6JGxpZ2h0ZXItZ3JheTE7XG4gICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0ZXItZ3JheTE7XG4gICAgICAgIGhlaWdodDo3MHB4O1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAmLmN1c3RvbS1hcnJvdyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljby9idWxsZXQtZG93bi1jcmltc29uLnBuZykgJGxpZ2h0ZXItZ3JheTEgY2FsYygxMDAlIC0gNXB4KSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAtby1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zZWxlY3QtY3NzLmxveWFsdHktcmVnaXN0cmF0aSB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufSIsIiRicmVha3BvaW50OiA5NjBweDtcblxuQG1peGluIG1xKCRkZXZpY2U6IGZhbHNlLCAkZnJvbTogZmFsc2UsICR1bnRpbDogZmFsc2UpIHtcbiAgICAkbWluLXdpZHRoOiAwO1xuICAgICRtYXgtd2lkdGg6IDA7XG5cbiAgICBAaWYgJGZyb20ge1xuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6ICRmcm9tO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6ICRicmVha3BvaW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICR1bnRpbCB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6ICR1bnRpbDtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiAkYnJlYWtwb2ludCAtIDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG1heC13aWR0aCAhPSAwIGFuZCAkbWluLXdpZHRoICE9IDAge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXdpZHRoKSBhbmQgKG1heC13aWR0aDogJG1heC13aWR0aCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRtaW4td2lkdGggIT0gMCBhbmQgJG1heC13aWR0aCA9IDAge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXdpZHRoKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJG1heC13aWR0aCAhPSAwIGFuZCAkbWluLXdpZHRoID0gMCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSB7XG5cbiAgICAgICAgQGlmICRkZXZpY2UgPT0gbW9iaWxlIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50IC0gMSkge1xuICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIGlmICRkZXZpY2UgPT0gZGVza3RvcCB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIlxuLyoqXG4qIEJhemFhclZvaWNlIFNwZWNpZmljIEN1c3RvbWl6YXRpb25zXG4qL1xuXG4vKiBCYXphYXJ2b2ljZSBpbmxpbmUgcmF0aW5ncyBjZW50ZXJlZCAqL1xuW2lkKj1CVlJSSW5saW5lUmF0aW5nLV0ge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wZHAtbWFpbiAuZGVza3RvcC1vbmx5LXdyYXBwZXIgI0JWUlJTdW1tYXJ5Q29udGFpbmVyID4gLmJ2LWNsZWFuc2xhdGUuYnYtY3YyLWNsZWFuc2xhdGUgPiAuYnYtc2hhcmVkW2NsYXNzKj1cImJ2LWNvcmUtY29udGFpbmVyLVwiXSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnRcbn1cblxuLmJ2LWN2Mi1jbGVhbnNsYXRlIFtjbGFzcyo9YnYtY29yZS1jb250YWluZXItXSAuYnYtaW5saW5lLXJhdGluZy1jb250YWluZXIgLmJ2LXN0YXJzLWNvbnRhaW5lciBkZCwgLmJ2LWN2Mi1jbGVhbnNsYXRlIFtjbGFzcyo9YnYtY29yZS1jb250YWluZXItXSAuYnYtaW5saW5lLXJhdGluZy1jb250YWluZXIgLmJ2LXN0YXJzLWNvbnRhaW5lciBkdCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG5cbi5wZHAtbWFpbiAjQlZSUlN1bW1hcnlDb250YWluZXIgPiAuYnYtY2xlYW5zbGF0ZS5idi1jdjItY2xlYW5zbGF0ZSA+IC5idi1zaGFyZWRbY2xhc3MqPVwiYnYtY29yZS1jb250YWluZXItXCJdID4gLmJ2LWNvbXBhdCA+IC5idi1wcnMtY29udGFpbmVyID4gLmJ2LXByaW1hcnlTdW1tYXJ5LXJhdGluZy1jb250YWluZXIgPiAuYnYtc3VtbWFyeS1iYXIgPiAuYnYtYWN0aW9uLWJhciwgXG4ucGRwLW1haW4gI0JWUlJTdW1tYXJ5Q29udGFpbmVyID4gLmJ2LWNsZWFuc2xhdGUuYnYtY3YyLWNsZWFuc2xhdGUgPiAuYnYtc2hhcmVkW2NsYXNzKj1cImJ2LWNvcmUtY29udGFpbmVyLVwiXSA+IC5idi1jb21wYXQgPiAuYnYtcHJzLWNvbnRhaW5lciA+IC5idi1wcmltYXJ5U3VtbWFyeS1yYXRpbmctY29udGFpbmVyID4gLmJ2LXN1bW1hcnktYmFyID4gLmJ2LWRldGFpbHMtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59IiwiXG5AaW1wb3J0ICdub2RlX21vZHVsZXMvamVldC9zY3NzL2luZGV4JztcblxuQGltcG9ydCAnX2hlbHBlcnMvY29tbW9uJztcblxuLy8gQmF6YWFyVm9pY2UgY3VzdG9taXphdGlvbnNcbkBpbXBvcnQgJ2JhemFhcnZvaWNlJztcblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo5NTlweCl7XG4gICAgQGltcG9ydCAnaGVhZGVyLXJlc3BvbnNpdmUnO1xuICAgIEBpbXBvcnQgJ2Zvb3Rlci1yZXNwb25zaXZlJztcblxuICAgIEBpbXBvcnQgJ2dlbmVyYWwtc3R5bGVzLXJlc3BvbnNpdmUnO1xuICAgIEBpbXBvcnQgJ3Byb2R1Y3QtcGFnZS1yZXNwb25zaXZlJztcbiAgICBAaW1wb3J0ICdjYXRlZ29yeS1wYWdlLXJlc3BvbnNpdmUnO1xuICAgIEBpbXBvcnQgJ25ld3NsZXR0ZXItcGFnZS1yZXNwb25zaXZlJztcbiAgICBAaW1wb3J0ICdob21lLXJlc3BvbnNpdmUnO1xuICAgIEBpbXBvcnQgJ2xveWFsdHktcmVzcG9uc2l2ZSc7XG5cbiAgICAuY2FydC1jb3Vwb24tY29kZSBsYWJlbCB7d2lkdGg6NDUlO31cblxuICAgIC8vcGFnZXNcbiAgICBAaW1wb3J0ICdwYWdlcy9wLTQwNC1yZXNwb25zaXZlJztcbiAgICBAaW1wb3J0ICdwYWdlcy93aXNobGlzdC1yZXNwb25zaXZlJztcbiAgICBAaW1wb3J0ICdwYWdlcy9wLWNhcnQtcmVzcG9uc2l2ZSc7XG4gICAgQGltcG9ydCAncGFnZXMvcC1jYXJ0LXBheW1lbnQtcmVzcG9uc2l2ZSc7XG4gICAgQGltcG9ydCAncGFnZXMvcC1jYXJ0LWFkZHJlc3MtcmVzcG9uc2l2ZSc7XG4gICAgQGltcG9ydCAncGFnZXMvcC1mYXEtcmVzcG9uc2l2ZSc7XG4gICAgQGltcG9ydCAncGFnZXMvb3JkZXJzLXJlc3BvbnNpdmUnO1xuICAgIEBpbXBvcnQgJ3BhZ2VzL19wLWFjY291bnQtY3JlYXRpb24tcmVzcG9uc2l2ZSc7XG4gICAgQGltcG9ydCAncGFnZXMvX3Atc3RvcmVsb2NhdG9yLXJlc3BvbnNpdmUnO1xuXG4gIC5wdF9hY2NvdW50LFxuICAucHRfb3JkZXIge1xuICAgIC5wcmltYXJ5LWNvbnRlbnQgaDEge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgIH1cbiAgICAuYnV0dG9uLWZhbmN5LWxhcmdlLFxuICAgIGJ1dHRvbi5idXR0b24tZmFuY3ktbGFyZ2UsXG4gICAgLmJ1dHRvbi1mYW5jeS1sYXJnZVt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5sb2dpblBhZ2Uge1xuICAgICYuYWNjb3VudExvZ2luUGFnZSB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wdF9hY2NvdW50IHtcbiAgICAmLmFjY291bnRMb2dpblBhZ2Uge1xuICAgICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gICAgICBtYXJnaW46MDtcbiAgICB9XG4gICAgLnNlY3Rpb24taGVhZGVyLFxuICAgICNwcmltYXJ5IC5yZWdpc3RlclBhZ2UgaDEge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgI3ByaW1hcnkgLnJlZ2lzdGVyUGFnZSBoMSB7IFxuICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgIH1cbiAgICAuY29sLTEsXG4gICAgLmNvbC0yIHtcbiAgICAgIHBhZGRpbmc6MTBweCAwO1xuICAgIH1cbiAgICAuY29sLTIge1xuICAgICAgLmxvZ2luLWJveC1jb250ZW50IHtcbiAgICAgICAgbWluLWhlaWdodDoxcHg7XG4gICAgICAgIHBhZGRpbmc6MTBweCAwO1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9naW4tYm94LWNvbnRlbnQsXG4gIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzLFxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIHtcbiAgICBwYWRkaW5nOjEwcHggMCAwO1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICNwYXNzd29yZC1yZXNldCB7XG4gICAgICBtYXJnaW46MDtcbiAgICAgIGZsb2F0Om5vbmU7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgfVxuICB9XG5cbiAgLmFjY291bnRNZW51IHtcbiAgICBsaSB7XG4gICAgICBoZWlnaHQ6NjBweDtcbiAgICAgIGJvcmRlci1sZWZ0OjA7XG4gICAgICBib3JkZXItcmlnaHQ6MDtcbiAgICAgIGJvcmRlci10b3A6MDtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGxpZ2h0ZXItZ3JheTtcbiAgICAgIH1cbiAgICAgICYuY3VycmVudCB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6JGNfYmxhY2s7XG4gICAgICAgICAgY29sb3I6JGNfd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6NjBweDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnB0X2FjY291bnQsXG4gIC5wdF9vcmRlciAge1xuICAgIC5jdXN0b21TZWxlY3RBcmVhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjBcbiAgICB9XG4gICAgI3ByaW1hcnkge1xuICAgICAgcGFkZGluZzowO1xuICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBtYXJnaW46MjVweCAxOHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmFkZHJlc3Nlcy1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6MCAxMHB4IDEwcHg7XG4gICAgICAuaW5wdXQtY2hlY2tib3ggKyBsYWJlbDpiZWZvcmUsIC5pbnB1dC1jaGVja2JveCArIGE6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXRvcDotM3B4O1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICB1bC5hZGRyZXNzLWxpc3Qge1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAmLmRlZmF1bHQge1xuICAgICAgICBhLm1ha2VkZWZhdWx0IHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAgIGEubWFrZWRlZmF1bHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICAgIGEuZWRpdCB7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHRvcDowO1xuICAgICAgbWFyZ2luLXRvcDoyMHB4O1xuICAgIH1cbiAgICAubWluaS1hZGRyZXNzLXRpdGxlLFxuICAgIC5taW5pLWFkZHJlc3MtbmFtZSxcbiAgICAubWluaS1hZGRyZXNzLWxvY2F0aW9uLFxuICAgIGEuZWRpdCxcbiAgICBhLm1ha2VkZWZhdWx0IHtcbiAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgIH1cbiAgICBhLmRlbGV0ZSB7XG4gICAgICB0cmFuc2Zvcm06c2NhbGUoMS4zKTtcbiAgICB9XG4gIH1cblxuXG4gIGJvZHksIFxuICAubG9naW4tYm94LWNvbnRlbnQsXG4gIC5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzLFxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLFxuICAubmV3c2xldHRlci1jb250YWluZXIgLmZvcm0tcm93LFxuICAubmV3c2xldHRlci1jb25maXJtIC5mb3JtLXJvdyB7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgaGVpZ2h0OjYwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgICAvLyBzZWxlY3Qge1xuICAgIC8vICAgZm9udC1zaXplOjIwcHg7XG4gICAgLy8gICBib3JkZXI6MDtcbiAgICAvLyAgIGJhY2tncm91bmQ6JGxpZ2h0ZXItZ3JheTtcbiAgICAvLyAgIHBhZGRpbmc6MTBweDtcbiAgICAvLyB9XG4gICAgLmNpdmlsaXR5IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgIH1cbiAgICAvLyAuYmlydGhkYXkge1xuICAgIC8vICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAvLyAgIGxhYmVsIHtcbiAgICAvLyAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgLy8gICAgIG1hcmdpbi1yaWdodDo1cHg7XG4gICAgLy8gICAgICY6Zmlyc3QtY2hpbGQge1xuICAgIC8vICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgLy8gICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgLy8gICAgIH1cbiAgICAvLyAgIH1cbiAgICAvLyAgIHNlbGVjdCB7XG4gICAgLy8gICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX2JsYWNrO1xuICAgIC8vICAgICB3aWR0aDogMzAlICFpbXBvcnRhbnQ7XG4gICAgLy8gICAgIGhlaWdodDogYXV0bztcbiAgICAvLyAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQlIC8gMykgIWltcG9ydGFudDtcbiAgICAvLyAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgIC8vICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC8vICAgICBiYWNrZ3JvdW5kOiAkY193aGl0ZSB1cmwoLi4vaW1hZ2VzL2ljby9zZWxlY3QtYXJyb3cucG5nKSBjYWxjKDEwMCUgLSAxMHB4KSA1MCUgbm8tcmVwZWF0O1xuICAgIC8vICAgICAmLmlucHV0LXNlbGVjdC1tb250aCB7XG4gICAgLy8gICAgICAgd2lkdGg6IDM2JSAhaW1wb3J0YW50O1xuICAgIC8vICAgICB9XG4gICAgLy8gICB9XG4gICAgLy8gfVxuICB9XG5cbiAgLmxvZ2luLWJveC1jb250ZW50IHtcbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgLnJlbWVtYmVyTWUgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cbiAgICAuZGlhbG9nLXJlcXVpcmVkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDsgICAgfVxuICB9XG5cbiAgLmJpcnRoZGF5LXJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAuYmlyaHRkYXktZXJyb3Ige1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxuXG4gIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMge1xuICAgIHBhZGRpbmc6MCAxNXB4O1xuICAgIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5mb3JtLXJvdy1idXR0b24ge1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gNDBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSBzcGFuIHtcbiAgICBmb250LXNpemU6MjBweDtcbiAgfVxuXG4gIC5kaWFsb2ctY29udGVudCB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH0gXG5cbiAgLm1vZGlmeUFkZHJlc3Mge1xuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6MjBweDtcbiAgICB9ICAgIFxuICAgIC51aS1kaWFsb2ctY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgfVxuICAgIC51aS1pY29uLWNsb3NldGhpY2sge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxuICAuZGlhbG9nLWNvbnRlbnQgLmZvcm0tcm93LWJ1dHRvbiAuYnV0dG9uLWZhbmN5LWxhcmdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgLmRpYWxvZy1jb250ZW50IC5mb3JtLXJvdy1idXR0b24gYnV0dG9uICsgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZGlhbG9nLWNvbnRlbnQgLmZvcm0tcm93LWJ1dHRvbiAuZGVsZXRlLCBcbiAgLmRpYWxvZy1jb250ZW50IC5mb3JtLXJvdy1idXR0b24gLmNhbmNlbCB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG5cbiAgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgYmFja2dyb3VuZDogJGNfYmxhY2s7XG4gICAgY29sb3I6ICRjX3doaXRlO1xuICB9XG4gIFxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG5cbiAgLndoeVJlZ2lzdGVyLFxuICAucHRfYWNjb3VudCAucGVyc29uYWxEYXRhcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMgLmRpYWxvZy1yZXF1aXJlZCwgXG4gIC5wdF9hY2NvdW50IC5yZWdpc3RlclBhZ2UgLnBlcnNvbmFsRGF0YXMgLmRpYWxvZy1yZXF1aXJlZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC53aHlSZWdpc3RlciAubWFpbkFkdmFudGFnZXMgLml0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgcmlnaHQ6IC0xMHB4OyBcbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wdF9hY2NvdW50IC5hY2NvdW50RGF0YXMgLmZvcm0tcm93LmJpcnRoZGF5IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIFxuICAucHRfYWNjb3VudCAuYWNjb3VudERhdGFzLnJlZ2lzdGVyUGFnZSBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgI2R3ZnJtX2xvZ2luIHtcbiAgICBsYWJlbDpub3QoW2Zvcj1cImR3ZnJtX2xvZ2luX3JlbWVtYmVybWVcIl0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLm1lbnUtb3BlbiAjd2lkZ2V0LXByb21vIHtcbiAgICAgIG1hcmdpbi10b3A6IDcycHggIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb21wbGV0ZS10aGUtc2V0IC5wcm9kdWN0cy1zZXQgLnByb2R1Y3Qtc2V0IC5jb2xvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDoyMDBweDtcbiAgICAgIGhlaWdodDozNnB4O1xuICB9XG5cbn1cbiIsIi5sZXZlbC0yIHtcbiAgICAuaHRtbC1zbG90LWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubGV2ZWwyX19pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uaXRlbVN1YmxldmVsX19pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCJAaW1wb3J0IFwiZHJpbGxkb3duLXJlc3BvbnNpdmVcIjtcblxuLm1lbnUtb2ZmZXItYWNjb3VudCB7XG4gICAgYmFja2dyb3VuZDogJGNfc3Vuc2V0O1xufVxuXG4ubWVudS1vcGVuICNoZWFkZXIgLm1lbnUtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtb3BlbiAjbmF2aWdhdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuXG4gICAgJi53aWRnZXQtcHJvbW8ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMTFweDtcbiAgICB9XG5cbiAgICAmLnByb21vLWNsb3NlZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEzMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jbmF2aWdhdGlvbiB1bC5sZXZlbC0xe1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuLm1lbnUtY2F0ZWdvcnkge1xuICAgIC8vIEhhY2s6IHdoZW4gdGhlIG1lbnUgaXMgb3BlbiBhbmQgdGhlIHNjcmVlbiBpcyBzY3JvbGxlZCxcbiAgICAvLyB0aGUgbWVudSBjbG9zZXMsIGJ1dCBpdCBrZWVwcyB0aGUgb3ZlcmxheVxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5tZW51LW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAjbmF2aWdhdGlvbiB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDE3MXB4KTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB9XG5cbiAgICAuaGVhZGVyLXNlYXJjaCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1ib3R0b20ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY193aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAkYm9yZGVyLW5hdi1tO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItbmF2LW07XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50LWFzc2V0IHAge1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVudS1hY2NvdW50IGxpLm1lbnUtbXktYWNjb3VudC51c2VyLWxvZ2dlZCA+IGE6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdXNlcl9sb2dnZWRfbW9iaWxlLnBuZykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgdG9wOiAtNnB4O1xufVxuXG4ubWVudS1hY2NvdW50IGxpLm1lbnUtbXktYWNjb3VudC51c2VyLWxvZ2dlZCB7XG4gICAgPiBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy91c2VyX2xvZ2dlZF9tb2JpbGUucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB9XG59XG5cbi5tZW51LWFjY291bnQgLm1lbnUtYWNjb3VudF9saXN0ID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5tZW51LWFjY291bnQgLm1lbnUtYWNjb3VudF9saXN0IC5tZW51LW5ld3NsZXR0ZXIsXG4ubWVudS1hY2NvdW50IC5tZW51LWFjY291bnRfbGlzdCAubWVudS13aXNobGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50IGE6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdXNlcl9tb2Iuc3ZnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA3NSU7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIG1hcmdpbi10b3A6IDNweDtcbn1cblxuLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50IGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLm1lbnUtYWNjb3VudCAubWVudS1teS1hY2NvdW50ID4gYSA+IHAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWFjY291bnQgLm1lbnUtbXktYWNjb3VudDpob3ZlciAuc3VibWVudS1teS1hY2NvdW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWVudS1hY2NvdW50IGxpIGEgc3Bhbixcbi5tZW51LWFjY291bnQgbGkgYSAubW9iaWxlLW15LWFjY291bnQtdGl0bGUsXG4ubWVudS1hY2NvdW50IGxpIGEgLm1pbmktY2FydC1sYWJlbCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubWVudS1hY2NvdW50IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICAgICAgLy8gYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgLy8gdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAvLyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAvLyBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIC8vIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAvLyBjb2xvcjogJGNfYmxhY2s7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAvLyBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgJi5pc3JlZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYubWVudS13aXNobGlzdCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvKHdpc2hsaXN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1lbnUtd2lzaGxpc3QtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5tZW51LXN0b3JlbG9jYXRvciB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljbyhsb2NhdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYubWVudS11c2VyLWFjY291bnQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY28odXNlcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5tZW51LW15LWFjY291bnQge1xuICAgICAgICAubW9iaWxlLW15LWFjY291bnQtdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICA+IGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICYuY2xpY2tlZDphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY28vdXNlci1hY2MtaG92ZXIuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnVzZXItbG9nZ2VkIHtcbiAgICAgICAgICAgID4gYS5jbGlja2VkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3VzZXJfbG9nZ2VkX2hvdmVyX21vYmlsZS5wbmcpIG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdWJtZW51LW15LWFjY291bnQge1xuICAgICAgICAgICAgY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX3doaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC03NXB4O1xuICAgICAgICAgICAgcGFkZGluZzogNjBweCAxMHB4IDE1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgJjpob3ZlciBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNfYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLmJyYW5kLXNlYXJjaC1jYXJ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE2MTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgLmxvZ28td3JhcHBlciB7XG4gICAgICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXNlYXJjaCB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICAgICAgQGluY2x1ZGUgbXEobW9iaWxlKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI21pbmktY2FydCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcblxuICAgICYuY2FydC1ub3QtZW1wdHkge1xuICAgICAgICAubWluaS1jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgIC5taW5pLWNhcnQtbGluayB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvL2NhcnRfZmlsbGVkLnN2Zyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5taW5pLWNhcnQtdG90YWwge1xuICAgIC5taW5pLWNhcnQtbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvL2NhcnQuc3ZnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgbGVmdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICAgICAmLm1pbmktY2FydC1xdHkge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmMtdGV4dC1jcmltc29uIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbn1cbn1cblxuLmNhcnQtbm90LWVtcHR5OmhvdmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTtcbn1cblxuLm1pbmktY2FydC1saW5rIHtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvKFwibWluaS1jYXJ0XCIpO1xuICAgIH1cbiAgICAuY2FydC1xdHktbSxcbiAgICAubWluaS1jYXJ0LWVtcHR5IHtcbiAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbn1cbiNoZWFkZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWFkZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgLm1haW4taGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIC5sb2dvLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIC5wcmltYXJ5LWxvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJl9fc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5tYWluLWhlYWRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjbWluaS1jYXJ0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMjUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wcmltYXJ5LWxvZ28ge1xuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4uaGVhZGVyLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcmlnaHQ6IDEzMHB4O1xuICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICNzdWdnZXN0aW9ucyB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtMnB4IHJnYmEoJGNfYmxhY2ssIDAuMik7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAuanMgJiBkaXYge1xuICAgICAgICAgICAgc3Bhbi5oaXRzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2LnN1Z2dlc3Rpb250ZXJtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICAgIFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDg1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljbyhzZWFyY2gpO1xuICAgICAgICAgICAgei1pbmRleDogMjAxO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xuICAgICAgICB9XG4gICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNob3cuaGVhZGVyLXNlYXJjaCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICRjX3doaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1OXB4O1xuICAgIGhlaWdodDogNzNweDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcblxuICAgIGZvcm0ge1xuICAgICAgICBtYXJnaW46IDEwcHggMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U3RThFOTtcblxuICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U3RThFOTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDExcHggMTFweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNjbGVhci1zZWFyY2gtZmlsdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGVmdDogOTBweDtcbiAgICAgICAgICAgIHRvcDogMjNweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDIwMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljbyhjbG9zZSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5uby1zZWFyY2gge1xuICAgICAgICAgICAgdG9wOjE3cHg7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY28oc2VhcmNoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuLndpZGdldC1wcm9tbyB7XG4gICAgJi51bmRlci1uYXYge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgICAgIHotaW5kZXg6IDIxO1xuICAgICAgICAmLnRvcC1zcGFjZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjcycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LW9wZW4ge1xuICAgICNzdWdnZXN0aW9ucyB7XG4gICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICB9XG5cbiAgICAud2lkZ2V0LXByb21vIHtcbiAgICAgICAgei1pbmRleDogMTUxICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubWVudS1vcGVuIC5uYXZpZ2F0aW9uLWhlYWRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXZfY3Jvc3Muc3ZnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDI3cHg7XG4gICAgd2lkdGg6IDI3cHg7XG4gICAgaGVpZ2h0OiAyN3B4O1xufVxuXG4ubmF2aWdhdGlvbi1oZWFkZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0b3A6IDE3cHg7XG4gICAgei1pbmRleDogMTAwMDtcbn1cblxuLm5hdmlnYXRpb24taGVhZGVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2J1cmdlcl9tZW51LnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCAyN3B4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogMjdweDtcbn1cblxuLm5hdmlnYXRpb24ge1xuICAgICYtY3VzdG9tZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNuYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuI25hdmlnYXRpb24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgJi5zdGlja3kge1xuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgIHRvcDogNTlweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubmF2LW9wZW4ge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBtYXJnaW4tdG9wOiA3MXB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICA+IG5hdiB7XG4gICAgICAgIC5sZXZlbC0xIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgID4gbGk6aG92ZXIge1xuICAgICAgICAgICAgICAgID4gYTphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaSxcbiAgICAgICAgICAgID4gW2NsYXNzXj1cIm1lbnVsaW5rXCJdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICA+IGRpdi5sZXZlbC0yIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggNDBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7IC8vIGEgbG90IG9mICFpbXBvcnRhbnRzIGFzIHdlIG5lZWQgdG8gbWFrZSB0aGUgbWVudSBhcHBlYXIgbm9ybWFsIGluIG1vYmlsZSwgZXZlbiB3aGVuIHRoZXkgaGF2ZSBkaWZmZXJlbnQgc3R5bGluZyBpbiBkZXNrdG9wXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjX3doaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNfYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLnRvZ2dsZS1jYXRlZ29yeSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnRvZ2dsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDM1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19saWdodDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaS5uby1zdWJjYXQge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U3RThFOTtcblxuICAgICAgICAgICAgICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhLmxldmVsLTIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5sZXZlbC0yIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX2xpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYubWVudS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnN1YmxldmVsLTEge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5tZW51LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwubGV2ZWwtMiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaTpob3ZlciB7XG4gICAgICAgICAgICAgICAgZGl2LmxldmVsLTIgLm1lbnUtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljbyhidWxsZXQtcmlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGV2ZWwtMyB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgID4gdWwge1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIC8vc2Nzcy1saW50OmRpc2FibGUgU2VsZWN0b3JEZXB0aFxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAvL3Njc3MtbGludDpkaXNhYmxlIFNlbGVjdG9yRGVwdGhcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm5vdCgudG9nZ2xlLWNhdGVnb3J5KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubGV2ZWwyX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi50b2dnbGUtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYuaGFzLXN1Ym1lbnV7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL3Njc3MtbGludDpkaXNhYmxlIFNlbGVjdG9yRGVwdGhcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZGl2LmxldmVsLTIgdWwubGV2ZWwtMiA+IGxpIC5tZW51LWNvbHVtbiA+IGEge1xuICAgIC8vc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgcGFkZGluZzogMjBweCAyNnB4O1xufVxuZGl2LmxldmVsLTMgdWwubGV2ZWwtMyB7XG4gICAgLy9zY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG59XG4uc3VibGV2ZWwtMSAubWVudS1jb2x1bW4gdWwgPiBsaSA+IC5sZXZlbC0zIGEge1xuICAgIC8vc2Nzcy1saW50OmRpc2FibGUgU2VsZWN0b3JEZXB0aFxuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxudWwubGV2ZWwtMSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgc3BhbiB7XG4gICAgICAgIC8vc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG59XG5cbi5taW5pLWNhcnQtcXR5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAtNXB4O1xufVxuXG4uZmlsdGVyLW1vYmlsZS1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5tYWluLXdyYXBwZXIsXG4gICAgI2Zvb3RlciB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLm1lbnUtb3ZlcmxheSB7XG4gICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OjExO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGlzYWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAxMDB2aDtcbn1cblxuLmxldmVsLTIgPiBsaSAubWVudS1jb2x1bW4gPiB1bCA+IGxpID4gYS5oYXMtc3VibWVudS5hY3RpdmUgfiAubGV2ZWwtMyAubGV2ZWwtMyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlcjpub3QoLmNvbnRhaW5lcikuc3RpY2t5IHtcbiAgICAmLnNjcm9sbGVkLWRvd24ge1xuICAgICAgICB0b3A6IC01OXB4O1xuICAgIH1cbiAgICBcbiAgICAmLnNlYXJjaC1hY3RpdmUge1xuICAgICAgICB0b3A6IC0xMzJweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuI3dpZGdldC1wcm9tbyB7XG4gICAgJi51bmRlci1uYXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICYuc3RpY2t5IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIH1cbiAgICAgICAgJi5zdGlja3ktaGVhZGVyIHtcbiAgICAgICAgICAgIHRvcDogNTlweDtcbiAgICAgICAgfVxuICAgICAgICAmLnN0aWNreS1oZWFkZXItc2VhcmNoIHtcbiAgICAgICAgICAgIHRvcDogMTMycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZm9vdGVyLWZlYXR1cmVzIHtcbiAgICBhcnRpY2xlIHtcbiAgICAgICAgcGFkZGluZzogODBweCAyMHB4IDA7XG4gICAgICAgIGg0LFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLmZvb3Rlci1jb250YWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UoJ3NlcnZpY2UtY2xpZW50LmpwZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIC5oMyB7XG4gICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICB9XG4gICAgaDMsXG4gICAgLmgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2hlYWRpbmc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgIH1cbiAgICAuZm9vdGVyLXNlcnZpY2UtY2xpZW50IHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkY193aGl0ZSwgMC43KTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgaWNvKCdzZXJ2aWNlLWNsaWVudCcpO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4uZm9vdGVyLXNvY2lhbCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgLmZvb3Rlci1zZXJ2aWNlcyAmIC5jb250ZW50LWFzc2V0IC5mLXNvY2lhbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICAuZi1zb2NpYWwgbmF2IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cbiNmb3JtdWxhaXJlLWNvbnRhY3Qge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIC5mb3JtLWNvbnRhY3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG59XG4uZi1pbnN0YWdyYW06YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGljbyhyLWluc3RhKTtcbn1cbi50cmltYW4ge1xuXHRwLFxuXHRpbWcge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBGT09URVIgUkVBU1NVUkFOQ0UgU0VDVElPTlxuXG4gICAgLm0tc2VjdGlvbi1yZWFzc3VyYW5jZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC5jLWxpbmstaW1hZ2Uge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jLWxpbmstaW1hZ2VfX3RleHQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItZmluZC1zdG9yZS1yb3csXG4gICAgLmZvb3Rlci1uZXdzbGV0dGVyIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgRk9PVEVSIE5FV1NMRVRURVJcbiAgICAuZm9vdGVyLW5ld3NsZXR0ZXItcm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC5mb290ZXItbmV3c2xldHRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAua2VlcGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICAgICAgICBtYXJnaW46IC0yMnB4IDAgMTNweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBGT09URVIgTkFWSUdBVElPTlxuXG4gICAgI2Zvb3RlciBmb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICAuZm9vdGVyLWZpbmQtc3RvcmUtcm93IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcGFkZGluZzogMzVweCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5zdG9yZWxvY2F0b3ItaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyLWZpbmQtc3RvcmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLW1vYmlsZS1zb2NpYWwge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICAgICAgLmg0LFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgICAuYy1saXN0LWhvcml6b250YWwsIC5jb250ZW50LWFzc2V0IHVsLmMtbGlzdC1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNWVtO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjX3JhaXNpbi1ibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMCAxMHB4O1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC44ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlci1tb2JpbGUtY3VzdG9tZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY19hbHRvO1xuICAgICAgICBwYWRkaW5nOiA0ZW0gMTVweDtcbiAgICAgICAgLmg0LFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIHAge2ZvbnQtc2l6ZTogMTNweDt9XG4gICAgICAgIC5oNSxcbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luOiAyZW0gMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHNwYW4sYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlci1tb2JpbGUtcGF5bWVudC1kZWxpdmVyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG4gICAgICAgIHBhZGRpbmc6IDJlbSAxNXB4IDIuNWVtIDE1cHg7XG4gICAgICAgIC5oNCxcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luOiAxLjMzZW0gMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLXNlcnZpY2VzIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjX2FsdG87XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjX2FsdG87XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAzMHB4IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNfdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY190cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZm9vdGVyLWljb25zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNfdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGEge3BhZGRpbmctbGVmdDogMDt9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgRk9PVEVSIFNFTyBBTkQgQ09QWVJJR0hUIFNFQ1RJT05cbiAgICAuZm9vdGVyLXNlbyB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY19hbHRvO1xuICAgICAgICBAaW5jbHVkZSBkb3R0ZWRCb3JkZXIoJGNvbG9yOiM4ZjhmOGYsICRwb3NpdGlvbjp0b3ApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19zZWFzaGVsbDtcbiAgICB9XG5cbiAgICAuZm9vdGVyX19zZW8tdGV4dCxcbiAgICAuY29udGVudC1hc3NldCBkaXYuZm9vdGVyX19zZW8tdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNWVtO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbm9ybWFsO1xuICAgICAgICAuaDMsXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIH1cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tLWZvb3Rlci1jb3B5cmlnaHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIEZPT1RFUiBMQU5HVUFHRSBTRUxFQ1RJT05cblxuICAgIC5mb290ZXJfX2xhbmctc2VsZWN0aW9uIHtcbiAgICAgICAgbGkgaW1nIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tYmFjay10b3AgYSB7XG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICB0b3A6IDQ3JTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1iYWNrLXRvcCB7XG4gICAgICAgICYucGRwLXNoaWZ0IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3QtYWRkZWQge1xuICAgICAgICAgICAgYm90dG9tOiAxODVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaGlkZS1iZWhpbmQtb3ZlcmxheSB7XG4gICAgICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICB9XG4gICAgfVxuIiwiYm9keSB7XG4gICAgY29sb3I6JGNfYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC13ZWlnaHQ6ICRmd19ub3JtYWw7XG59XG5cbi5tb2RhbC1vcGVuIHtcbiAgICBvdmVyZmxvdzogaW5pdGlhbDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAudWktZGlhbG9nLCAudWktd2lkZ2V0LW92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxufVxuXG4ubS1vbmx5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG5odG1sIGJvZHkgLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJyZWFkY3J1bWItbW9iaWxlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICBmb250LXNpemU6MjBweDtcbiAgICBhIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgaWNvKGJ1bGxldC1sZWZ0LWJpZ2dlcik7XG4gICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNtZXMtY291cHMge1xuXHQubm8tcmVzdWx0cyB7XG5cdFx0cGFkZGluZzogMCAxNXB4O1xuXHR9XG5cblx0LmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG5cdFx0bWluLWhlaWdodDogMDtcblx0fVxuXG59XG4uYnV0dG9uLWZhbmN5LWxhcmdlLFxuYnV0dG9uLmJ1dHRvbi1mYW5jeS1sYXJnZSxcbi5idXR0b24tZmFuY3ktbGFyZ2VbdHlwZT1cImJ1dHRvblwiXSxcbi5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cuZm9ybS1yb3ctYnV0dG9uIC5idXR0b24tZmFuY3ktbGFyZ2Uge1xuICAgZm9udC1zaXplOiAyOHB4O1xuICAgaGVpZ2h0OiBhdXRvO1xuICAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbi5idXR0b24tZmFuY3ktbGFyZ2UsXG4uYnV0dG9uLWZhbmN5LWxhcmdlI2FkZC10by1jYXJ0IHtcbiAgICAvLyBib3JkZXItcmFkaXVzOiA1MXB4O1xuICAgIC8vIHBhZGRpbmc6IDE2cHggNTdweCAxNnB4IDM2cHg7XG4gICAgLy8gZm9udC1zaXplOiAyOHB4O1xuICAgIC8vIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbn1cbi5jaGVja291dEhlbHA6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY28oY2xpZW50KTtcbn1cbi5uby1oaXRzLWJhbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuLmhlYWRlci1uby1oaXRzIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4ubm90LWZvdW5kLW1zZy5lcnJvci1tc2cge1xuXHRmb250LXNpemU6IDIwcHg7XG59XG4ubm8taGl0cy1iYW5uZXItYmcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0ID4gLm5vLWhpdHMtYmFubmVyIHtcbiAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvd29uZGVyYnJhLW5vLWhpdHMtbW9iaWxlLmpwZyk7XG4gICAgICAgICBwYWRkaW5nLXRvcDogMzAwcHg7XG4gICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgfVxuICAgIC5oZWFkZXItbm8taGl0c3tcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLm5vdC1mb3VuZC1tc2d7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG4gIH1cbi5uby1oaXRzLXNlYXJjaCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGFiZWwge1xuICAgIFx0Zm9udC1zaXplOiAyOHB4O1xuICAgIH1cbn1cbi5uby1oaXRzLWhlbHAge1xuXHRwYWRkaW5nOiAwO1xuXHQudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDMwcHg7XG4gICAgfVxuICAgIGxpe1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX3RpcC1udW1iZXJ7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4uc2VhcmNoLW5vdC1mb3VuZCBsaSB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ubm90LWZvdW5kLW1zZyB7XG5cdGZvbnQtc2l6ZTogMjNweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xufVxuLm5vLWhpdHMtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblx0JjpiZWZvcmUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS42KTtcbiAgICB9XG4gICAgJi5uby1oaXRzLW5ld3NsZXR0ZXItY29udGFpbmVye1xuICAgICAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIH1cbiAgICAmLm5vLWhpdHMtbmV3c2xldHRlci1jb250YWluZXIsXG4gICAgJi5uby1oaXRzLWNvbnRhY3R7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgICYubm8taGl0cy1uZXdzbGV0dGVyLWNvbnRhaW5lcntcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgaDIubm8taGl0cy1mb290ZXJfdGl0bGU6YmVmb3Jle1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY28vbmV3c2xldHRlci15ZWxsb3dAMngucG5nKTtcbiAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgICYubm8taGl0cy1jb250YWN0e1xuICAgICAgICBoMjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGUtNDA0X25vUmVzdWx0QDJ4LnBuZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDN7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cdHAge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XG5cdH1cblx0aW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNTQlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblx0fVxuXHRidXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE4cHggMjVweCAxOHB4IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgICAgICBtYXgtd2lkdGg6IDQwJTtcblx0fVxuXHRhIHtcblx0XHRmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgICYgJl90aXRsZXtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgJl9jdXN0b21lci1zZXJ2aWNlc3tcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGUtNDA0X25vUmVzdWx0QDJ4LnBuZyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjJweCAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKTphZnRlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjBweCAtMjRweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKTphZnRlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOThweCAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLnBhZ2Utbm90LWZvdW5ke1xuICAgIC5uby1oaXRzLWJhbm5lci1iZ3tcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIC5uby1oaXRzLWJhbm5lcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvV09OREVSQlJBLTQwNC1iZy1tb2JpbGUuanBnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZXJyb3ItaGVhZGVye1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGgye1xuICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgLm5vdC1mb3VuZC1tc2d7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVycm9yLXJlZGlyZWN0e1xuICAgICAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAubGlua3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuLmRpc2NvdmVyLXByb2R1Y3Rze1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMjBweCAzMHB4O1xuICAgICZfaGVhZGVye1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRpdmlzb3J7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfaXRlbXN7XG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ucHJpbWFyeS1jb250ZW50IHtcbiAgICBoMS5vdXBzIHsgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgICAgICAgQGluY2x1ZGUgaWNvKCdvdXBzJyk7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweCFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGgxLm9vcHMgeyAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICAgICAgICBAaW5jbHVkZSBpY28oJ29vcHMnKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4IWltcG9ydGFudDtcbiAgICB9XG4gICAgLmVycm9yLTQwNCB7XG4gICAgICAgICYuY3VzdG9tZXItZnIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uby1oaXRzLWJhbm5lciB7XG5cdC5iYWNrZ3JvdW5kLTQwNC1iYW5uZXIge2Rpc3BsYXk6IG5vbmV9XG5cblx0LmhlYWRlci1uby1oaXRzIC5uby1oaXRzLWNvbnRlbnQge1xuXHRcdC5ub3QtZm91bmQtbXNnIHtcblx0XHRcdCYubm90LWZvdW5kLW1zZy1ib3JkZXIsXG5cdFx0XHQmLmVycm9yLW1zZyB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnBheW1lbnQtY2FyZC1pbmZvIHtcblx0LmZvcm0tcm93IHtcblx0XHQuY2FyZC10eXBlLW9wdGlvbnMgaW5wdXRbdHlwZT1cInJhZGlvXCJde1xuICBcdFx0XHR0b3A6LTNweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0fVxuXHRcdCYuZm9ybS1yb3ctYnV0dG9uIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0XHQuY2FyZC10eXBlLW9wdGlvbnMgPiBsYWJlbCBpbWcge1xuXHRcdFx0bWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0fVxuXG4gICAgICAgICYucm93LXBheW1lbnQtc2VsZWN0LWdvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbi5wZHAtbWFpbiAuYXR0cmlidXRlIC5zaXplLWNoYXJ0LWxpbmsge1xuXHRtYXJnaW46IDIwcHggLTIycHggLTIwcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuICAgXHRhIHtcbiAgICBcdGZvbnQtc2l6ZTogMjBweDtcbiAgXHR9XG59XG5cbi5zZXQtbmV3LXBhc3N3b3JkIHtcbiAgICB3aWR0aDogaW5pdGlhbDtcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbiNtZXMtY291cHMgLmxpc3QtdGFibGUtaGVhZGVyIC5idXR0b24jc2VuZC10by1mcmllbmQge1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xufVxuXG4ucGF5bWVudC1jYXJkLWluZm8gLmZvcm0tcm93LmZvcm0tcm93LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2hvcnQtaW5wdXRmaWVsZC5leHBpcmVzLWRhdGUtZHJvcGRvd24ge1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5wYXltZW50LWNhcmQtaW5mbyB7XG4gICAgLmN2biBpbnB1dCB7d2lkdGg6IDE0MHB4fVxuXG4gICAgLmRpYWxvZy1yZXF1aXJlZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgLnJlcXVpcmVkLWluZGljYXRvciBlbSB7Zm9udC1zaXplOiAyMXB4fVxuICAgIH1cbn1cblxuLmNoZWNrb3V0LXNoaXBwaW5nLmFkZHJlc3Mge1xuXHQuZm9ybS1yb3cuZm9ybS1yb3ctYnV0dG9uIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRidXR0b24ge3dpZHRoOiA0MjBweH1cblx0fVxufVxuXG4jbWVzLWNvdXBzIC53aXNobGlzdC1uYXYge1xuXHQjc2VuZC10by1mcmllbmQsXG5cdCNwcmludC1pdCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZzogMTVweCAyNHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuXG4jUGFzc3dvcmRSZXNldEZvcm0gLmJ1dHRvbi1mYW5jeS1sYXJnZSB7bWluLXdpZHRoOiAxNzVweH1cblxuLmlucHV0LWNoZWNrYm94IHtcbiAgICArIGxhYmVsLFxuICAgICsgYSAge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjA7IFxuICAgICAgICB9XG4gICAgfVxuICAgIC8vICsgbGFiZWwge1xuICAgIC8vICAgICBmb250LXNpemU6MjBweDtcbiAgICAvLyB9XG4gICAgLy8gJjpjaGVja2VkIHtcbiAgICAvLyAgICAgKyBsYWJlbCB7XG4gICAgLy8gICAgICAgICAmOmFmdGVyIHtcbiAgICAvLyAgICAgICAgICAgICBtYXJnaW4tdG9wOjZweDtcbiAgICAvLyAgICAgICAgIH1cbiAgICAvLyAgICAgfVxuICAgIC8vIH1cbn1cblxuLmxvZ2luUGFnZSAjZHdmcm1fbG9naW4gLmZvcm0tcm93LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMTlweCA1MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG59XG4ubG9naW5QYWdlIC5mb3JtLXJvdy1idXR0b24gLmJ0bi1wcmltYXJ5IHtmbG9hdDpub25lO31cblxuLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcsXG4jZWRpdC1hZGRyZXNzLWZvcm0sXG4jUmVnaXN0cmF0aW9uRm9ybSxcbiNSZWdpc3RyYXRpb25Gb3JtQ3JlZGVudGlhbCB7XG4gICAgLmZvcm0tcm93IHtcbiAgICAgICAgLmNpdmlsaXR5IHtcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjX3JhaXNpbi1ibGFjaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jb3VudHJ5IHtcbiAgICAgICAgICAgIHNlbGVjdDpub3QoLmhhc0N1c3RvbVNlbGVjdCksXG4gICAgICAgICAgICAuY3VzdG9tU2VsZWN0QXJlYSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0O1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY3VzdG9tU2VsZWN0IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY3VzdG9tU2VsZWN0SW5uZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyAvLyAhaW1wb3J0YW50IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGluaGVyaXRlZCBzdHlsZXNcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmNoZWNrYm94TGluZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgJiArIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMTVweCAyMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1NXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAmLm5vLXBhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICAucmVxdWlyZWQtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWxpZ2h0LWdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWxpZ2h0LWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRleHQtY2VudGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLm1hcmdpbi1zdGlja3ktZmlsdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxMDhweDtcbn1cblxuI2VkaXQtYWRkcmVzcy1mb3JtIC5hZGRyZXNzLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvKkNvbnRhaW5lciBwYWRkaW5nIHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIHNvbWV0aGluZyBiZXR0ZXIgYXNhcCovXG4ucGRwWm9vbVBvcGluT3BlbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDcwdmg7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIC53aWRnZXQtcHJvbW8udW5kZXItbmF2IHtcbiAgICB6LWluZGV4OiAzMDAwO1xuICB9XG59XG4ucGRwLW1haW4gLnByb2R1Y3QtdmFyaWF0aW9uc3tcbiAgbWFyZ2luOiAyMHB4IDAgMDtcbn1cblxuLnB0X3Byb2R1Y3QtZGV0YWlscyB7XG4gIC5icmVhZGNydW1iLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogJGNfd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5icmVhZGNydW1iLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyOHB4O1xuICAgICAgbGVmdDogMTFweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA5MSU7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgMTVweDtcbiAgICAgIG1hcmdpbjogLjVlbSAwIC41ZW0gMi41ZW07XG4gICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgbGkge1xuICAgICAgICBzcGFuLCBhIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zMXB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5wZHAtbWFpbiB7XG4gIG1hcmdpbjogMDtcbiAgLnpvb20tbW9iaWxle1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnJlY29tbWVuZGF0aW9ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAubW9iaWxlLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLnByb2R1Y3QtY29sLTEge1xuICAgIC5wcm9kdWN0LXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgfVxuICAgIC5wcm9kdWN0LWRlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgLm1vYmlsZS1vbmx5LXdyYXBwZXIge1xuICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgIC5wcm9kdWN0LXJldmlld3N1bW1hcnkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmdyb3VwLXRpdGxlLXJlZiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICAucHJvZHVjdC1zYWxlcy1wcmljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgyNCk7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlLXNhbGVzIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMjQpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZGVyO1xuICAgICAgICAgIGNvbG9yOiAkY19jcmltc29uO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5wcmljZS1zdGFuZGFyZCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAxM3B4IDE1cHggMCAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMjQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1kZXNjLWJsb2NrIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgc3BhbjphZnRlciB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgIHRvcDogNDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuLCBhIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMjEpO1xuICAgICAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2l6ZS1jaGFydC1saW5rIHNwYW46YWZ0ZXJ7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvKHBsdXMpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIC5zaXplLWNoYXJ0LWxpbmsuYWN0aXZlIHNwYW46YWZ0ZXJ7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1kZXNjcmlwdGlvbi1pbm5lciB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgxOCk7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwLCBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtYWRkLXdpc2hsaXN0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS45KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvZHVjdC1pbWFnZXMtbW9iaWxlIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgJi5tLW9ubHkge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAucHJpY2Utc2FsZXMsXG4gICAgICAgIC5wcmljZS1zdGFuZGFyZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6ICRjX2NyaW1zb247XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlLXN0YW5kYXJkIHtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuICAgICAgICAucHJpY2Utc2FsZXMge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWFkZC10by1jYXJ0IHtcbiAgICAgIC5pbnZlbnRvcnl7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAuaW52ZW50b3J5LnVuYXZhaWxhYmxlLXByb2R1Y3R7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgLnF1YW50aXR5OmFmdGVye1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnBkcC1hZGQtdG8tY2FydF9maXhlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX3doaXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDJweCByZ2JhKCRjX2JsYWNrLCAwLjIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvZHVjdC1uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMzIpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIHBhZGRpbmc6IDE1cHggMCAwO1xuICB9XG4gIC5wcm9kdWN0LWNvbC0zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICYubW9iaWxlLW9ubHktd3JhcHBlcntcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAucHJvZHVjdC1wcmljZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAucHJvZHVjdC1zYWxlcy1wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMzIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LW91dC1vZi1zdG9jay1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjX3doaXRlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDJweCByZ2JhKCRjX2JsYWNrLCAwLjIpO1xuXG4gICAgLm91dC1vZi1zdG9jay1idXR0b24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1heC13aWR0aDogNzAlO1xuICAgIH1cblxuICAgIC5vdXQtb2Ytc3RvY2tfX2Vycm9ycyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0zNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtYWRkLXRvLWNhcnQsXG4gIC5wcm9kdWN0LW91dC1vZi1zdG9jay1tb2JpbGUge1xuICAgIGJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBtYWluQnV0dG9uUmVzcG9uc2l2ZTtcbiAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTYpO1xuICAgICAgbWF4LXdpZHRoOiA1MyU7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBib3JkZXI6ICRib3JkZXItYmxhY2s7XG4gICAgICBtYXJnaW46IDAgMTZweCAwIDA7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfYmxhY2s7XG4gICAgICB9XG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvZHVjdC12YXJpYXRpb25zIHtcbiAgICAuYXR0cmlidXRlLXNpemUge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIC5hdmFpbGFibGUtc2l6ZSxcbiAgICAgIC52YWx1ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICB9XG4gICAgLmxpc3Qtc2l6ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc2l6ZS1jaGFydC1saW5rIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogNDBweCAwIDA7XG4gICAgfVxuICB9XG4gIC5hdHRyaWJ1dGUgLmxhYmVsLFxuICAuaW52ZW50b3J5IC5xdWFudGl0eSBzZWxlY3QjUXVhbnRpdHksXG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIHF1YWxpZnlpbmdlbGVtZW50IC5wcm9kdWN0LWRlc2MtYmxvY2sgPiBsaSA+IHNwYW4sXG4gIC5xdWFudGl0eSBzZWxlY3Qge1xuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMjEpO1xuICAgIGNvbG9yOiAkY19ibGFjaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5hdHRyaWJ1dGUge1xuICBcdGJhY2tncm91bmQ6IG5vbmU7XG5cdCAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAubW9iaWxlLWN1cnJlbnQtc2l6ZTpub3QoOmVtcHR5KSB7XG4gICAgICBib3JkZXI6ICRib3JkZXI7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBjb2xvcjogJGNfYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hdHRyaWJ1dGUuc2l6ZXtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IDE2cHg7XG4gICAgYm90dG9tOiAxNnB4O1xuICAgIHdpZHRoOiAzMCU7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHdpZHRoOiBjYWxjKDI0JSAtIDE2cHgpO1xuICAgIGJvcmRlcjogJGJvcmRlci1ibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY193aGl0ZTtcblx0ICAmOmFmdGVye1xuICAgICAgY29udGVudDogJyc7XG5cdFx0ICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3JlZF9hcnJvd19kb3duLnN2Zykgbm8tcmVwZWF0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICByaWdodDogMTBweDtcblx0XHQgIHRvcDogMzglO1xuXHRcdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdCAgfVxuICB9XG4gIC5pbnZlbnRvcnkge1xuICAgIHdpZHRoOiAxNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjUlO1xuICAgIGJvcmRlcjogJGJvcmRlci1ibGFjaztcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgLnF1YW50aXR5IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cdCAgYmFja2dyb3VuZDogbm9uZTtcblx0ICAmOjphZnRlcntcblx0XHQgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvcmVkX2Fycm93X2Rvd24uc3ZnKSBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjhweDtcblx0XHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgIHJpZ2h0OiAxMHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuXHRcdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdCAgfVxuICAgIH1cbiAgfVxuICAuaW52ZW50b3J5IC5xdWFudGl0eSBzZWxlY3QjUXVhbnRpdHkge1xuICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTgpO1xuICAgIGhlaWdodDogNThweDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG5cdCAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG5cdCAgd2lkdGg6IDEwMCU7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1hY3Rpb25zIHtcbiAgICAucHJvZHVjdC1hZGQtd2lzaGxpc3Qge1xuICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgyNSk7XG4gICAgfVxuICAgIC5wcm9kdWN0LXNoYXJlIHtcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIGNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTYpO1xuICAgICAgfVxuICAgICAgLmFkZHRoaXNfYnV0dG9uX3BpbnRlcmVzdCxcbiAgICAgIC5hZGR0aGlzX2J1dHRvbl9nb29nbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmFkZHRoaXNfdG9vbGJveCBhOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb21wbGV0ZS10aGUtc2V0IHtcbiAgICAuYWRkLXRvLWNhcnQgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMjUpO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xN3B4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYXR0cmlidXRlLnNpemUgLmF2YWlsYWJsZS1zaXplIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgICAuYXR0cmlidXRlIHtcbiAgICAgIC5tb2JpbGUtY3VycmVudC1zaXplOm5vdCg6ZW1wdHkpIHtcbiAgICAgICAgY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN3YXRjaGVzLXNpemUtbW9iaWxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY193aGl0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCA0MHB4IDAgMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgIC5zaXplLXVuYXZhaWxhYmxlIHtcbiAgICAgIGNvbG9yOiBsaWdodGdyZXk7XG4gICAgfVxuICB9XG4gICYgLmF0dHJpYnV0ZSAubGFiZWwgKyB1bCxcbiAgJiAuYXR0cmlidXRlIC5sYWJlbCArIGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnN3YXRjaGVzLkNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGNvbG9ySWNvKCRzaXplOiAzNnB4KTtcbiAgICAgICYuc2VsZWN0ZWQtdmFsdWV7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGRwLW1haW4gLnByb2R1Y3QtdmFyaWF0aW9ucyAuYXR0cmlidXRlLnNpemV7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmNvbnRlbnQtYXNzZXQgLnByb2R1Y3Qtb2ZmZXJzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICB1bCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTkpO1xuICAgICAgcGFkZGluZzogNHB4IDEwcHggMTBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAmLmljb24teWVsbG93LFxuICAgICAgJi5pY29uIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGljbyhvZmZlci1jaGVjay1tb2JpbGUpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KSB0cmFuc2xhdGUoMTBweCwgMCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAub25lLWxpbmUtZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXdyYXBwZXJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIC5hdHRyaWJ1dGUuc2l6ZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLmNvbXBsZXRlLXRoZS1zZXQge1xuICAmOmFmdGVye1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5wcm9kdWN0cy1zZXQge1xuICAgIC5wcm9kdWN0LXNldCB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCksXG4gICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoZXZlbil7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgIC5jb2x1bW57XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgICAgJi5hdHRyaWJ1dGUuc2l6ZSxcbiAgICAgICAgJi5xdWFudGl0eXtcbiAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgLmQtb25seXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hdHRyaWJ1dGUuc2l6ZXtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgLmxhYmVse1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYucXVhbnRpdHl7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbG9ye1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIC8vIGxpe1xuICAgICAgICAvLyAgIGF7XG4gICAgICAgIC8vICAgICAvLyB3aWR0aDogMTVweDtcbiAgICAgICAgLy8gICAgIC8vIGhlaWdodDogMTVweDtcbiAgICAgICAgLy8gICAgIC8vIHBhZGRpbmc6IDA7XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyAgICYuc2VsZWN0ZWR7XG4gICAgICAgIC8vICAgICAuc3dhdGNoYW5jaG9ye1xuICAgICAgICAvLyAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgLy8gICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAvLyAgICAgICAmOmFmdGVye1xuICAgICAgICAvLyAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgLy8gICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgLy8gICAgICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgICAgLy8gICAgICAgfVxuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyAgIH1cbiAgICAgICAgLy8gfVxuICAgICAgfVxuICAgICAgLnByaWNlLW5hbWV7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAmLmNvbHVtbntcbiAgICAgICAgICBtYXJnaW46IDE1cHggYXV0bztcbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTYpO1xuICAgICAgICAgIGhlaWdodDogNTZweDtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1zYWxlcy1wcmljZSxcbiAgICAgICAgLnByb2R1Y3Qtc3RhbmRhcmQtcHJpY2UsXG4gICAgICAgIC5wcmljZS1zYWxlcyB7XG4gICAgICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgxNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LXN0YW5kYXJkLXByaWNlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hZGQtdG8tY2FydHtcbiAgICAgICAgJi5jb2x1bW4gYnV0dG9ue1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hZGQtdG8tY2FydCBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xN3B4O1xuICAgIH1cbiAgfVxuICAuYXR0cmlidXRlLnNpemUge1xuICAgIC52YWx1ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIEBpbmNsdWRlIGljbyhzZWxlY3QtYXJyb3cpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgICAuYXZhaWxhYmxlLXNpemUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8qd2lkdGg6IGF1dG87Ki9cbiAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICBmb250LXNpemU6IGZvbnRTaXplKDEwKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuY29sdW1uLnF1YW50aXR5IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgaWNvKHNlbGVjdC1hcnJvdyk7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTApO1xuICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucGRwLW1haW4gYnV0dG9uI2FkZC10by1jYXJ0W2Rpc2FibGVkXTpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5wcm9kdWN0LWNvbG9ycyB7XG4gIC5pdGVtLWNvbG9yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuICAuaXRlbS1jb2xvciAuc3dhdGNoYW5jaG9yIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cbn1cbiN1bmF2YWlsYWJsZS1kaWFsb2cudWktZGlhbG9nLWNvbnRlbnQge1xuICBwYWRkaW5nOiA0MHB4IDQwcHggODBweDtcbn1cbi5kaWFsb2dQcm9kdWN0IHtcbiAgJi51aS1kaWFsb2cge1xuICAgIG1hcmdpbjogMCA1JTtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgfVxuICAuZm9ybS1iYWNraW5zdG9jayBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDI2MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAucHJvZHVjdC1pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAyMTVweDtcbiAgICB9XG4gIH1cblxuICAuZXJyb3Ige1xuICAgIGZsb2F0OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAubmV3c2xldHRlci1nZW5kZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLmJpc19lbWFpbCB7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIH1cbiAgLmJ1dHRvbi5iaXNfbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuLnRpdGxlLWJhY2tpbnN0b2NrIHtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuXG4udGV4dC1iYWNraW5zdG9jayB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLmRpYWxvZ1Byb2R1Y3QgLmZvcm0tYmFja2luc3RvY2sge1xuICBpbnB1dCxcbiAgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5uZXdzbGV0dGVyLWdlbmRlciB7XG4gICAgbWFyZ2luOiAyNXB4IDA7XG4gIH1cblxuICAuYmlzX3N1Ym1pdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgIGJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnBkcC1tYWluIC5hdHRyaWJ1dGUgLnNpemUtY2hhcnQtbGluayBhLmF0dHJpYnV0ZWNvbnRlbnRsaW5rLnVuYXZhaWxhYmxlbGluayB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmRpYWxvZ1Byb2R1Y3QgLmZvcm0tYmFja2luc3RvY2sge1xuICAuZHdmcm1fYmFja2luc3RvY2tfbmV3c2xldHRlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFhO1xuICB9XG5cbiAgLmxhYmVsX2NoZWNrIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7XG4gIH1cbn1cbi5mb3JtLWJhY2tpbnN0b2NrIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJvZHVjdC1hZGQtdG8tY2FydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHJvZHVjdC12YXJpYXRpb25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5zaXplIHtcbiAgICB6LWluZGV4OiAxMDE7XG4gIH1cbn1cblxuLm1vYmlsZS1vbmx5LXdyYXBwZXIge1xuICAubS1vbmx5IHtcbiAgICAuZXJyb3Itc2l6ZSxcbiAgICAuZXJyb3ItdW5hdmFpbGFibGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfY3JpbXNvbjtcbiAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogOTJweDtcbiAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxNXB4IHNvbGlkICRjX2NyaW1zb247XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMTNweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXJyb3Itc2l6ZSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDExJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXJyb3ItdW5hdmFpbGFibGUge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAzMyU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tLW9ubHkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc2VsZWN0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5wcm9kdWN0LWxpc3RpbmctMXg0IHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZXtcbiAgbWFyZ2luOiAwIDEwcHg7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICBwYWRkaW5nOiAwO1xuICAmOm50aC1jaGlsZChvZGQpe1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgJjpudGgtY2hpbGQoZXZlbil7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDBcbiAgfVxuICAmOm50aC1jaGlsZChuKzMpe1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3QtaW1hZ2VzLW1vYmlsZXtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4gXG4ucHJvZHVjdC1saXN0aW5ne1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucmVjb21tZW5kYXRpb25zIHtcbiAgLmdyaWQtdGlsZSB7XG4gICAgLnByb2R1Y3QtdGlsZSB7XG4gICAgICAubS1pY29uLXdpc2hsaXN0IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuYy1pY29uLXdpc2hsaXN0LCBcbiAgICAgICAgLmMtaWNvbi13aXNobGlzdC0tZmlsbGVkIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LXRpbGU6aG92ZXIgLmMtaWNvbi13aXNobGlzdCxcbi5wcm9kdWN0LXRpbGU6aG92ZXIgLmMtaWNvbi13aXNobGlzdC0tZmlsbGVkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubS1uYXZpZ2F0aW9ue1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbn1cblxuLm0tbmF2aWdhdGlvbl9pdGVte1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGF7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubS1uYXZpZ2F0aW9uX2l0ZW0tLWlzLXJpZ2h0e1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gIC5jLWxpbmsgeyBcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgfVxuICAuYy1zcGFuX2Fycm93LS1pcy1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC5jLXNwYW5fYXJyb3ctLWlzLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbn1cblxuLm0tbmF2aWdhdGlvbl9pdGVtIC5jLXNwYW5fYXJyb3ctLWlzLWxlZnQ6YWZ0ZXIsXG4ubS1uYXZpZ2F0aW9uX2l0ZW0gLmMtc3Bhbl9hcnJvdy0taXMtcmlnaHQ6YWZ0ZXJ7XG4gIEBpbmNsdWRlIGljbyhhcnJvdy1sZWZ0LWdyYXkpO1xufVxuXG4ubS1uYXZpZ2F0aW9uX2l0ZW0tLWlzLWxlZnQgLmMtc3Bhbl9hcnJvdy0taXMtbGVmdDphZnRlcntcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xufVxuXG4ubS1uYXZpZ2F0aW9uX2l0ZW0gLmMtc3Bhbl9hcnJvdy0taXMtcmlnaHQ6YWZ0ZXJ7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5tLW5hdmlnYXRpb24gLmMtc3Bhbl9hcnJvdy0taXMtbGVmdHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4ubS1uYXZpZ2F0aW9uIC5jLXNwYW5fYXJyb3ctLWlzLXJpZ2h0e1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLm0tYmxvY2tfbWV0aW1lIC5tb2JpbGUtb25seS13cmFwcGVyIC5tb2JpbGUtcGFnaW5hdGlvbntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDMwcHggMDtcbn1cblxuLyoqXG4gKiBUaGUgY29kZSBiZWxvdyBvdmVycmlkZSBhIHN0eWxlIHRoYXQgY29tZXMgZnJvbSBBQlRhc3R5XG4gKi9cbiBcbiNwZHBNYWluID4gRElWLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLnByb2R1Y3QtY29sLTEge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ubG92YWJsZS1wcm9kdWN0LWFkZGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwMjtcbiAgcGFkZGluZzogMjRweCAxNnB4IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjX3doaXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggMnB4IHJnYmEoJGNfYmxhY2ssIDAuMik7XG5cbiAgLmNsb3NlLWNvbnRpbnVlLXNob3BwaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25fX2Nsb3NlLnBuZyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICB0b3A6IDVweDtcbiAgICByaWdodDogN3B4O1xuICB9XG5cbiAgLmNvbnRpbnVlLXNob3BwaW5nLFxuICAudmlldy1iYWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjX2JsYWNrO1xuICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNvbnRpbnVlLXNob3BwaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG59XG5cbiNndWlkZS1kZXMtdGFpbGxlcyAuYWNjb3JkZW9uIC5zb3VzLW1lbnUge1xuICAudGFibGUtd3JhcCAudGFibGUtY29udGVudC1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLnRhYmxlLXJvdyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxuICAjYnVzdGUgLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiA2MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICB9XG59XG4iLCJAbWl4aW4gY29sb3JJY28oJHNpemU6IDMwcHgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICAgIHRyYW5zaXRpb246ICR0X2Zhc3Q7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBtYXJnaW46IDAgM3B4O1xuICAgICZbZGF0YS1jb2xvcj1cIkJpYW5jb1wiXSB7XG4gICAgICAgICYuc2VsZWN0ZWQsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgICAgICAuc3dhdGNoYW5jaG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5zd2F0Y2hhbmNob3IgeyBcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIGhlaWdodDogKCRzaXplIC0gOHB4KTtcbiAgICAgICAgICAgIHdpZHRoOiAoJHNpemUgLSA4cHgpO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGhlaWdodDogKCRzaXplICsgMnB4KTtcbiAgICAgICAgd2lkdGg6ICgkc2l6ZSArIDJweCk7XG4gICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICRjX3doaXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRfZmFzdDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgIH1cbiAgICAmLnNlbGVjdGVkLCAmOmhvdmVyIHtcbiAgICAgICAgYS5zd2F0Y2hhbmNob3Ige1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJGNfd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6ICgkc2l6ZSAtIDJweCk7XG4gICAgICAgICAgICB3aWR0aDogKCRzaXplIC0gMnB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgIH1cbiAgICBzcGFuLnN3YXRjaGFuY2hvcntcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX3doaXRlO1xuICAgIH1cbiAgICBhLnN3YXRjaGFuY2hvcntcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogMDsgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXI6MDtcbiAgICB9XG59XG4iLCIucmVmaW5lbWVudC1oZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiAkZl9oZWFkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICBmb250LXNpemU6IDM2cHg7XG59XG4ucHRfcHJvZHVjdC1zZWFyY2gtcmVzdWx0IHtcbiAgICAjc2Vjb25kYXJ5IHtcbiAgICAgICAgei1pbmRleDogMTU7XG4gICAgfVxufVxuI3NlY29uZGFyeSB7XG4gICAgLmZpbHRlci1zb3J0LW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcblxuICAgICAgICAmLnNjcm9sbC1zdGlja3kge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgPmRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgPmRpdjpudGgtY2hpbGQoMik6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9yaWdodC1hcnJvdy5wbmcpIDAgMCBuby1yZXBlYXQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICA+IGRpdixcbiAgICAgICAgPiBkaXYgc2VsZWN0IHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHNlbGVjdCB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlcmluZzphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ZpbHRlci1tb2JpbGUucG5nKSAwIDAgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICBoZWlnaHQ6IDczcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAxM3B4KTtcbiAgICAgICAgfVxuICAgICAgICAuc29ydC1ieSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDczcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDEzcHgpO1xuXG4gICAgICAgICAgICAjZ3JpZC1zb3J0LWhlYWRlciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zb3J0LWJ5IGZvcm0ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXJpbmcuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICRjX3doaXRlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY19ibGFjayB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAxNXB4O1xuICAgICAgICBtYXJnaW46IDAuNWVtO1xuICAgICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiA5NyU7XG4gICAgICAgIHNwYW4sIGEge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zMXB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5yZWZpbmVtZW50IHtcbiAgICAmLlRhaWxsZXMsXG4gICAgJi5TaXplcyxcbiAgICAmLlRhZ2xpZSB7XG4gICAgICAgICYuaW5mby1yZWZpbmVtZW50IHVsIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgICAgICAgd2lkdGg6IDY2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlci1ndWlkZS1saW5rIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY28oJ3ItZ3VpZGUtZGVzLXRhaWxsZXMnKTtcbiAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3RlZCBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICB9XG4gICAgICAgIC50b2dnbGUtY29udGVudCB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyggKDEwMCUgLyA2KSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuRm9ybWVzIC5maWx0ZXItZ3VpZGUtbGluayB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljbygnci1ndWlkZS1kZXMtZm9ybWVzJyk7XG4gICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZpbHRlci1ndWlkZS1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICBoZWlnaHQ6IDQxcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgIH1cbiAgICAudG9nZ2xlLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJi5jbGVhci1maWx0ZXItbW9iaWxlIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZfYm9keTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50b2dnbGUgc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG59XG4ucmVmaW5lbWVudHMge1xuICAgIC5pbmZvLXJlZmluZW1lbnQge1xuICAgICAgICB1bCA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvKCdmaWx0ZXItY2hlY2tib3gnKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnNlbGVjdGVkOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvKCdmaWx0ZXItY2hlY2tib3gtc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNsZWFyLWZpbHRlci1tb2JpbGUge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHggMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuQ29sb3JzLmluZm8tcmVmaW5lbWVudCB7XG4gICAgICAgIHVsID4gbGkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4uZmlsdGVyLW9wZW4gLmNsZWFyLWFsbC1maWx0ZXJzIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDIwcHggMThweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNfd2hpdGU7XG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLnByb2R1Y3QtdGlsZSB7XG4gICAgLnByb2R1Y3QtcHJpY2luZyA+IC5wcm9kdWN0LWRpc2NvdW50ZWQtcHJpY2Uge1xuICAgICAgICAucHJvZHVjdC1zdGFuZGFyZC1wcmljZSxcbiAgICAgICAgLnByb2R1Y3Qtc2FsZXMtcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgxOCk7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1zYWxlcy1wcmljZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtcHJpY2luZ3tcbiAgICAgICAgLnByb2R1Y3Qtc2FsZXMtcHJpY2V7XG4gICAgICAgICAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLmNhdGFsb2d1ZS1wcm9kdWN0LWl0ZW0ge1xuICAgICAgICAuc3dpcGVyLXdyYXBwZXIsIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnVsLnNlYXJjaC1yZXN1bHQtaXRlbXMge1xuICAgIC5sb2FkZWRTd2lwZXIge1xuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXRpbGUgLnByb2R1Y3QtbmFtZXtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5yZWNvbW1lbmRhdGlvbnMge1xuICAgIC5zaXplLWhvdmVyLWFyZWEtcGVyc29uYWxpemVkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICAgICAgLnByb2R1Y3QtY29sb3JzIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmVjb21tZW5kYXRpb25zIHAsXG4ucGRwLW1haW4gLmNvbXBsZXRlLXRoZS1zZXQgaDMsXG4ucGRwLW1haW4gLmNvbXBsZXRlLXRoZS1zZXQgLmgzIHtcbiAgICBmb250LXNpemU6IGZvbnRTaXplKDIyKTtcbn1cblxuLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIFBST0RVQ1QgTElTVCBGT1JDRUZVTCBPVkVSUklESU5HXG5cbnVsLnNlYXJjaC1yZXN1bHQtaXRlbXMge1xuICAgIG1hcmdpbjogMDtcbn1cbnVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIycHggKTtcbiAgICBtYXJnaW46IDAgNXB4IDI1cHggNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAuc3dpcGVyLWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTRweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgJi5zd2lwZXItcHJldiB7XG4gICAgICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9zd2lwZXIvc2xpZGVyLXByZXYtbWluaUAyeC5wbmdcIikgMCAwIG5vLXJlcGVhdCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc3dpcGVyLW5leHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3N3aXBlci9zbGlkZXItbmV4dC1taW5pQDJ4LnBuZ1wiKSAwIDAgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxudWwuc2VhcmNoLXJlc3VsdC1pdGVtcyAuZ3JpZC10aWxlOm50aC1jaGlsZCgzbiswKSB7XG4gICAgY2xlYXI6IG5vbmU7XG59XG4uc2VhcmNoLXJlc3VsdC1jb250ZW50Om5vdCguY29sdW1zLTIpIHVsLnNlYXJjaC1yZXN1bHQtaXRlbXMgLmdyaWQtdGlsZTpudGgtY2hpbGQoM24rMCkge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xufVxuLnByb2R1Y3QtY29sb3JzIHtkaXNwbGF5OiBibG9jazt9XG4uZmlsdGVyLXNvcnQtbW9iaWxlIHtcbiAgICBib3JkZXI6ICRib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlIC5maWx0ZXJpbmcuYWN0aXZlOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ZpbHRlcl9ibGFjay5zdmcpIG5vLXJlcGVhdDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG59XG4ucmVmaW5lbWVudCBwLnRvZ2dsZS5leHBhbmRlZDphZnRlciwgLnJlZmluZW1lbnQgaDMudG9nZ2xlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1zcHJpdGUtMngtZGltLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNXB4IC0xOTNweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM3MXB4IDM0NnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxODBkZWcpO1xuICAgIHRvcDogMjNweDtcbn1cbiNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSA+IGRpdiwgI3NlY29uZGFyeSAuZmlsdGVyLXNvcnQtbW9iaWxlID4gZGl2IHNlbGVjdCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNzZWNvbmRhcnkgLmZpbHRlci1zb3J0LW1vYmlsZSB7XG4gICAgbWFyZ2luOiAwIDAgMCAtNXB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG4jc2Vjb25kYXJ5IC5maWx0ZXItc29ydC1tb2JpbGUgLmZpbHRlcmluZy5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRjX2JsYWNrO1xuICAgIGJvcmRlcjogJGJvcmRlci1ibGFjaztcbiAgICAmOmJlZm9yZSB7ZGlzcGxheTogbm9uZTt9XG59XG4ubW9iaWxlLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLXN3aXRjaCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkY19ibGFjaywgMC4yKTtcbiAgICBib3JkZXI6MDtcbiAgICAmLnN3aXBlci1hY3RpdmUtc3dpdGNoIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY19ibGFjaywgMSk7XG4gICAgfVxufVxuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgTU9CSUxFIEZJTFRFUiBNRU5VIEZPUkNFRlVMIE9WRVJSSURJTkdcblxuLnJlZmluZW1lbnQgLnRvZ2dsZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLmZpbHRlci1vcGVuIC5yZWZpbmVtZW50Om50aC1jaGlsZCg0KSAudG9nZ2xlLFxuLnJlZmluZW1lbnQ6bnRoLWNoaWxkKDQpIC50b2dnbGUge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uZmlsdGVyLXNvcnQtbW9iaWxlIHtcbiAgICAuZmlsdGVyaW5nIHtcbiAgICAgICAgLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGNfd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ucmVmaW5lbWVudHMgLmRpYWxvZ2lmeS5maWx0ZXItZ3VpZGUtbGluay5hdHRyaWJ1dGVjb250ZW50bGluayB7XG4gICAgdG9wOiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG59XG4ucmVmaW5lbWVudC5UYWlsbGVzLmluZm8tcmVmaW5lbWVudCB1bCBhLFxuLnJlZmluZW1lbnQuVGFnbGllLmluZm8tcmVmaW5lbWVudCB1bCBhLFxuLnJlZmluZW1lbnQuU2l6ZXMuaW5mby1yZWZpbmVtZW50IHVsIGEge1xuICAgIGhlaWdodDogNDZweDtcbiAgICBmb250LXNpemU6IDEuMDVyZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnJlZmluZW1lbnQgcC50b2dnbGU6YWZ0ZXIsXG4ucmVmaW5lbWVudCBoMy50b2dnbGU6YWZ0ZXIsXG4ucmVmaW5lbWVudCBwLnRvZ2dsZS5leHBhbmRlZDphZnRlcixcbi5yZWZpbmVtZW50IGgzLnRvZ2dsZS5leHBhbmRlZDphZnRlciB7XG4gICAgcmlnaHQ6IDEwcHg7XG59XG4ucmVmaW5lbWVudC5UYWlsbGVzIHVsIGxpLFxuLnJlZmluZW1lbnQuVGFnbGllIHVsIGxpIHtcbiAgICB3aWR0aDogY2FsYyggMjUlIC0gMTBweCApO1xuICAgIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbn1cbi5yZWZpbmVtZW50LlRhaWxsZXMuaW5mby1yZWZpbmVtZW50IHVsIGEsXG4ucmVmaW5lbWVudC5UYWdsaWUuaW5mby1yZWZpbmVtZW50IHVsIGEge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLmluZm8tcmVmaW5lbWVudCAudG9nZ2xlLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xufVxuLmZpbHRlci1pbm5lciB7XG4gICAgYmFja2dyb3VuZDogJGNfd2hpdGU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgLnJlZmluZW1lbnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBtYXJnaW46IDAgLTVweDtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuXG4gICAgJi5zdGlja3ktZmlsdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDk2cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAgICAgLnJlZmluZW1lbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfd2hpdGU7XG4gICAgICAgICAgICAudG9nZ2xlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5maWx0ZXItb3BlbiAuY2xlYXItYWxsLWZpbHRlcnMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1zaXplOiAyMHB4O1xufVxuLmNsZWFyLWFsbC1maWx0ZXJzIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICBmb250LXdlaWdodDogJGZ3X2JvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDU1cHggIWltcG9ydGFudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiA1MDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX2JsYWNrO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25fX2Nsb3NlLnBuZ1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgfVxufVxuLnJlZmluZW1lbnQgdWwge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xufVxuLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaS5jbGVhci1maWx0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ucmVmaW5lbWVudHMgLkNvbG9yaSB1bCBsaTpub3QoLmNsZWFyLWZpbHRlcik6bm90KC5jbGVhci1maWx0ZXItbW9iaWxlKSB7XG4gICAgaGVpZ2h0OiA0NnB4O1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRyYW5zaXRpb246ICR0X2Zhc3Q7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjX3RyYW5zcGFyZW50O1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBib3JkZXI6IDVweCBzb2xpZCAkY193aGl0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHRyYW5zaXRpb246ICR0X2Zhc3Q7XG4gICAgfVxuICAgICYuc2VsZWN0ZWQsICY6aG92ZXIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgd2lkdGg6IDQzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG4gICAgJi5jbGVhci1maWx0ZXIge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpub3QoLmNsZWFyLWZpbHRlcikgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogMDtsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gICAgJi5zZWFyY2hDb2xvcklEcy0yeyAvL3doaXRlIHN3YXRjaCBoYXMgYW4gZXh0cmEgYm9yZGVyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6I2ZmZjtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY190cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2NjY2NjYztcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdF9mYXN0O1xuICAgICAgICB9XG4gICAgICAgICYuc2VsZWN0ZWQsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNjY2NjY2M7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnJlZmluZW1lbnQuQ29sb3JpIHVsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpIGEge1xuICAgIG1hcmdpbjogMCAwIDI1cHggMjBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIHBhZGRpbmctdG9wOiAycHg7XG59XG4ucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpLnNlbGVjdGVkIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnJlZmluZW1lbnQgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSxcbi5yZWZpbmVtZW50LlRhaWxsZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSxcbi5yZWZpbmVtZW50LlRhZ2xpZSB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlLFxuLnJlZmluZW1lbnQuU2l6ZXMgdWwgbGkuY2xlYXItZmlsdGVyLW1vYmlsZSxcbi5yZWZpbmVtZW50LkNvbG9ycyB1bCBsaS5jbGVhci1maWx0ZXItbW9iaWxlLFxuLnJlZmluZW1lbnQgLnRvZ2dsZS1jb250ZW50IHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgICAgICB6LWluZGV4OiA1MDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX2JsYWNrO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25fX2Nsb3NlLnBuZ1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIC5yZWZpbmVtZW50cyAuQ29sb3JpIHVsIGxpLmNsZWFyLWZpbHRlci1tb2JpbGUge1xuLy8gICAgIGhlaWdodDogaW5oZXJpdDtcbi8vICAgICBhIHtcbi8vICAgICAgICAgd2lkdGg6IGF1dG87XG4vLyAgICAgfVxuLy8gfVxuXG4ucmVmaW5lbWVudCBoMy50b2dnbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLXNwcml0ZS0yeC1kaW0ucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjMzcHggLTE4OHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzcxcHggMzQ2cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDApO1xuICAgIHRvcDogMjNweDtcbn1cblxuLmZpbHRlci1pbm5lciB7XG4gICAgLnJlZmluZW1lbnQgcC50b2dnbGUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICB0b3A6IDMwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgXG4gICAgICAgICYuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIHRvcDogNTUlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZWZpbmVtZW50IHAudG9nZ2xlLmV4cGFuZGVkOmFmdGVyLCAucmVmaW5lbWVudCBoMy50b2dnbGUuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDE4MGRlZyk7XG59XG5cbi5zZWFyY2gtcmVzdWx0LW9wdGlvbnMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5yZWZpbmVtZW50LWhlYWRlci5oaWRlIHtkaXNwbGF5OiBub25lO31cbi5zZWFyY2gtcmVzdWx0LW9wdGlvbnMge2Rpc3BsYXk6IG5vbmU7fVxuXG4ucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4ucmVmaW5lbWVudHMgLmluZm8tcmVmaW5lbWVudCB1bCA+IGxpOm5vdCguY2xlYXItZmlsdGVyLW1vYmlsZSk6YmVmb3JlLFxuLnJlZmluZW1lbnRzIC5pbmZvLXJlZmluZW1lbnQgdWwgPiBsaTpub3QoLmNsZWFyLWZpbHRlci1tb2JpbGUpLnNlbGVjdGVkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtaGVhZGVyLWNvdW50LWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcblxuICAgIC5wcm9kdWN0LXNlYXJjaC1jb3VudC1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDsgXG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgfVxuXG4gICAgLmdyaWQtZGlzcGxheS1tb2JpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgXG4gICAgICAgIGEjdG9nZ2xlLXNtYWxsLWdyaWQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIGEjdG9nZ2xlLWxhcmdlLWdyaWQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgYSN0b2dnbGUtc21hbGwtZ3JpZCxcbiAgICAgICAgI3RvZ2dsZS1sYXJnZS1ncmlkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0IxQjJCMztcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNfYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmVmaW5lbWVudC1yZXN1bHRzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1mYW1pbHk6ICRmd19ib2xkO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjI0cHg7XG4gICAgY29sb3I6IHJlZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZmxvYXQ6cmlnaHQ7XG4gICAgQGluY2x1ZGUgbXEobW9iaWxlKSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgIH1cbn1cblxuLmNhdGVnb3J5LWJvdHRvbS1kZXNrdG9wIHtcbiAgICAucHJvZHVjdC1zZWFyY2gtY291bnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnJlZmluZW1lbnRzLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC50b2dnbGUge1xuICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWRlZGVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRvZ2dsZS1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG5cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtZGlzcGxheSxcbiAgICAuc29ydC1ieSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiI21haW4ubmV3c2xldHRlcntcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5iYW5uZXItbmV3c2xldHRlcntcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIGltZ3tcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbn1cblxuLm5ld3NsZXR0ZXItY29udGFpbmVyLCBcbi5uZXdzbGV0dGVyLWNvbmZpcm0ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLmZvcm0tcm93e1xuICAgICAgICBzcGFuLmVycm9yLFxuICAgICAgICAubWVzc2FnZS1lcnJvci53b25kZXJicmEge1xuICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgICYuZ2VuZGVyLXNlbGVjdCB7XG4gICAgICAgICAgICAubWVzc2FnZS1lcnJvci53b25kZXJicmEge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl17XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC8vICYuYmlydGhkYXkge1xuICAgICAgICAvLyAgICAgc2VsZWN0LFxuICAgICAgICAvLyAgICAgLmlucHV0LXNlbGVjdF9kYXksXG4gICAgICAgIC8vICAgICAuaW5wdXQtc2VsZWN0LW1vbnRoLFxuICAgICAgICAvLyAgICAgLmlucHV0LXNlbGVjdF95ZWFyIHtcbiAgICAgICAgLy8gICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAvLyAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX2JsYWNrO1xuICAgICAgICAvLyAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgLy8gICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIC8vICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQlIC8gMykgIWltcG9ydGFudDtcbiAgICAgICAgLy8gICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgIC8vICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIC8vICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgLy8gICAgICAgICBiYWNrZ3JvdW5kOiAkY193aGl0ZSB1cmwoLi4vaW1hZ2VzL2ljby9zZWxlY3QtYXJyb3cucG5nKSBjYWxjKDEwMCUgLSAxMHB4KSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyAgICAgLmlucHV0LXNlbGVjdC1tb250aCB7XG4gICAgICAgIC8vICAgICAgICAgd2lkdGg6IDM2JSAhaW1wb3J0YW50O1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyAgICAgJjphZnRlciB7XG4gICAgICAgIC8vICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICAgICAgLy8gLnByb2ZpbGVfYmlydGhkYXl7XG4gICAgICAgIC8vICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy8gICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyB9XG4gICAgICAgIC5uZXdzbGV0dGVyLWJ1dHRvbntcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tLXJhZGlvLWdlbmRlciB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5ld3NsZXR0ZXItYnV0dG9uIHtcbiAgICAgICAgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY19ibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkY193aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuZC1vbmx5e1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tLW9ubHl7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmhvbWVwYWdlLXNsb3R7XG4gICAgLm0tc2VjdGlvbi1zbG90e1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLmMtc2VjdGlvbi1saW5rX2ltYWdle1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyLXdpZHRoO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGd1dHRlci13aWR0aDtcbiAgICAgICAgfVxuICAgICAgICAmLS1mdWxse1xuICAgICAgICAgICAgLmMtc2VjdGlvbi1saW5rX2ltYWdle1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubS1zZWN0aW9uLXNsb3R7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLmMtc2VjdGlvbi1saW5rX2ltYWdle1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmMtc2VjdGlvbi10ZXh0e1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICAmX2ltYWdlLFxuICAgICZfdGV4dHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uaG9tZXBhZ2Utc2xvdCAubS1zZWN0aW9uLXNsb3QtLWZsZXgge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ubS1zZWN0aW9uLXNsb3RfaW1hZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBvcmRlcjowO1xufVxuLm0tc2VjdGlvbi1zbG90X3RleHQge1xuICAgIG9yZGVyOiAyO1xufVxuXG4uZGlhcnktc2xvdCB7XG4gICAgLy8gdGhpcyBpcyBhIGhhY2sgdG8gZml4IG92ZXJsYXlzIHdoZW4gbWVudSBpcyBvcGVuXG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7IFxufVxuXG4uaG9tZS1ib3R0b20tYmFubmVycyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAuYmFubmVyLWxlZnQsXG4gICAgLmJhbm5lci1yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgLmJhbm5lci1yaWdodCB7XG4gICAgICAgIC5uZXdzbGV0dGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgICAgICAgICBidXR0b24sXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc2JTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMlICFpbXBvcnRhbnQ7IC8vc2Nzcy1saW50OmRpc2FibGUgSW1wb3J0YW50UnVsZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLndvbmRlcmJyYS1zd2lwZXItY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIFx0fVxuICAgIH1cbiAgICAud29uZGVyYnJhLXN3aXBlci1idXR0b24tY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5kZXNrdG9wLWltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLm1vYmlsZS1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ubm8taGl0cy1iYW5uZXItYmcgPiAubm8taGl0cy1iYW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIC8vIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5jLXNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIEhPTUUgUEFHRSBTV0lQRVJcblxuIC5ob21lcGFnZS1zbG90IC5ob21lcGFnZS1zd2lwZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZV9fY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHAgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEuNXB4IHNvbGlkICRjX2JsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA5MDA7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbGVmdDogMTFweDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2gge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRfZmFzdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICAgICYgKyAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIH1cbiAgICAgICAgJi5zd2lwZXItYWN0aXZlLXN3aXRjaCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgSE9NRSBESUFSWSBTTElERVJcblxuLmhvbWVwYWdlLXNsb3QuZGlhcnktc2xvdCAuc3dpcGVyLXNsaWRlIHtcbiAgICBtYXJnaW46IDA7XG59XG4uaG9tZXBhZ2Utc2xvdC5kaWFyeS1zbG90IC5jLXNlY3Rpb24tbGlua190ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi5kaWFyeS1zbG90IC5tb2JpbGUtcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xufVxuLmRpYXJ5LXNsb3QgLm1vYmlsZS1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2guc3dpcGVyLWFjdGl2ZS1zd2l0Y2gge1xuICAgIGJhY2tncm91bmQ6ICRjX2dyYXkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cbiIsIlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTG95YWx0eSBQcmVzZW50YXRpb25cblxuICAgICNsb3lhbHR5LWNvbnRlbnQge1xuICAgICAgICAub25seS1kZXNrdG9wIHtkaXNwbGF5OiBub25lO31cbiAgICAgICAgLm9ubHktbW9iaWxlIHtkaXNwbGF5OiBibG9jazt9XG4gICAgfVxuICAgIFxuICAgIC8vUHJlc2VudGF0aW9uIGJhbm5lclxuICAgICNsb3lhbHR5LXByZXNlbnRhdGlvbi1iYW5uZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGltZyB7IFxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHsgXG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICB0b3A6IDI1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9QYWdlIGNvbnRlbnRcbiAgICAjbG95YWx0eS1jb250ZW50IHtcbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLndpZGUgeyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDsgXG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIHNwYW4geyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnByb21vIHtcbiAgICAgICAgICAgICAgICBoMyB7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCB7IH1cbiAgICAgICAgICAgICAgICAubGVnYWwge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubG95YWx0eV9ydWxlc19saW5rIHsgfVxuICAgICAgICBcbiAgICAgICAgLmhvd19pdF93b3JrcyB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAuaWNvbl9oZWFydCB7IFxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWRlX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxlZ2FsIHsgfVxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7IH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2gge1xuICAgICAgICAgICAgICAgICYuc3dpcGVyLWFjdGl2ZS1zd2l0Y2ggeyBcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zd2lwZXItYXJyb3dzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICYuc3dpcGVyLXByZXYgeyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjbG95YWx0eS1yZWdpc3RlcmZvcm0tbGluayxcbiAgICAgICAgI2xveWFsdHktbGlua2luZ2Zvcm0tbGluayB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7ICAgICAgICBcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgKyBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDM1cHggMCAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY19ibGFjaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBDbHViIExvdmFibGVcblxuICAgICAgICAjbG95YWx0eS1jb250ZW50IHsgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgXG4gICAgICAgIC5sb3lhbHR5LWFjY291bnQtcG9pbnRzLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICNsb3lhbHR5LWFjY291bnQtaW5mbyB7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICAgICAgJi5jb2wtaGFsZiB7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpmaXJzdC1jaGlsZCB7IFxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5jb2wtd2lkZSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAgICBcbiAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgLmFjY291bnRJbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDY1cHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbi1mYW5jeS1sYXJnZSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgI2xveWFsdHktcG9pbnRzIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAucG9pbnQtdmFsdWVzIHsgfVxuICAgICAgICAgICAgLnBvaW50LXZhbHVlcy0td3JhcCB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICNjb252ZXJ0LXBvaW50cyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuXG4gICAgICAgIC5sb3lhbHR5LXByb21vcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgJjphZnRlciB7IH1cbiAgICAgICAgICAgIC5zd2lwZXItY29udGFpbmVyIHsgXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaWNvbl9oZWFydCB7IH1cbiAgICAgICAgICAgIC5zbGlkZV9pbWFnZSB7IH1cbiAgICAgICAgICAgIGgyIHsgfVxuICAgICAgICAgICAgcCB7IH1cbiAgICAgICAgICAgIC5sZWdhbCB7IH1cbiAgICAgICAgICAgIC5wcm9tby1jb2wge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGltZyB7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcm9tby1kdWVkYXRlIHsgfVxuICAgICAgICAgICAgLnByb21vLXRpdGxlIHsgfVxuICAgICAgICAgICAgLnByb21vLWxpbmsgeyB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLXN3aXRjaCB7XG4gICAgICAgICAgICAgICAgJi5zd2lwZXItYWN0aXZlLXN3aXRjaCB7IG9wYWNpdHk6IDAuNzsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN3aXBlci1hcnJvd3Mge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgJi5zd2lwZXItcHJldiB7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTG95YWx0eSBOZXdzbGV0dGVyIG9wdC1pbnNcblxuI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zIC5mb3JtLXJvdyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ub3B0aW5FeHBsYW5hdGlvbl9fdG9nZ2xlOmNoZWNrZWQgKyBsYWJlbCArIC5vcHRpbkV4cGxhbmF0aW9uX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuI1JlZ2lzdHJhdGlvbkZvcm0gLm5ld3NsZXR0ZXItb3B0aW5zLFxuI2xlZ2FsLWNvbnNlbnRzIHtcbiAgICAuZm9ybS1yb3cge1xuXG4gICAgICAgICYubGluay1vbmx5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIH1cblxuICAgICAgICAub3B0aW5FeHBsYW5hdGlvbl9fdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcHRpbkV4cGxhbmF0aW9uX19jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgXG4gICAgICAgICAgICAmICsgbGFiZWwuZXJyb3IgKyBsYWJlbCxcbiAgICAgICAgICAgICYgKyBzcGFuLmVycm9yICsgbGFiZWwsXG4gICAgICAgICAgICAmICsgbGFiZWw6bm90KC5lcnJvcik6bm90KC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA2MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgIFxuICAgICAgICAgICAgICAgIC5vcHRpbkV4cGxhbmF0aW9uX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ub3JtYWw7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbC5lcnJvciArIGxhYmVsLFxuICAgICAgICAgICAgJjpjaGVja2VkICsgc3Bhbi5lcnJvciArIGxhYmVsLFxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWw6bm90KC5lcnJvcikge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICB9XG4gICAgXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG5cbiAgICAgICAgICAgICYub3B0aW5FeHBsYW5hdGlvbl9fdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvKCdidWxsZXQtcmlnaHQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTJweCAwIDAgM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgLyogT25seSBmb3IgSU9TIERldmljZSAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC0xMXB4IDAgMCAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljbygnYnVsbGV0LXJpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGVaKDkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxhYmVsIHtcblxuICAgICAgICAgICAgICAgIC5vcHRpbkV4cGxhbmF0aW9uX19sYWJlbCxcbiAgICAgICAgICAgICAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWxpZ2h0LWdyYXk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGluay1vbmx5IHtcbiAgICAgICAgICAgICNtb3JlUHJpdmFjeVBvbGljeSB7XG4gICAgICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY28oJ2J1bGxldC1yaWdodCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljbygnYnVsbGV0LXJpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNykgdHJhbnNsYXRlWSgwcHgpIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGVaKDkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiAgICBcbiAgICAjbGVnYWwtY29uc2VudHMge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMzBweCAyMHB4O1xuICAgICAgICAjbGVnYWwtY29uc2VudHMge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICAuaW5wdXQtY2hlY2tib3ggKyBsYWJlbCxcbiAgICAgICAgLmZvcm0tcm93Lmxpbmstb25seSAucHJpdmFjeVBvbGljeSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExveWFsdHkgUG9wLWluIEZvcm0gc3RydWN0dXJlIFxuXG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCB7XG4gICAgICAgICNsb3lhbHR5X3JlZ2lzdGVyZm9ybV9tb2RhbCB7IH1cbiAgICAgICAgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gICAgICAgICAgICBzcGFuIHsgfVxuICAgICAgICB9XG4gICAgICAgIC5sb3ZhYmxlTW9kYWxfX2hlYWRlciB7XG4gICAgICAgICAgICBoNCB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgICAgIHAgeyB9XG4gICAgICAgIH1cbiAgICAgICAgLmxvdmFibGVNb2RhbF9fbm90aWNlIHsgfVxuICAgICAgICAubG92YWJsZU1vZGFsX19mb290ZXJPcHRpb25zLS1pbmxpbmUge1xuICAgICAgICAgICAgYnV0dG9uLFxuICAgICAgICAgICAgYnV0dG9uW3R5cGU9J3N1Ym1pdCddIHsgfVxuICAgICAgICB9XG4gICAgfSAgICBcblxuICAgIFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2x1YiBMb3ZhYmxlIHByb21vdGlvbiBtb2RhbFxuXG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCB7XG4gICAgICAgIC5sb3lhbHR5UHJvbW8geyB9XG4gICAgICAgIC5sb3lhbHR5UHJvbW9fX2JvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoMSB7IFxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7IH1cbiAgICAgICAgICAgIC5yaWdodCwgLmxlZnQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWZ0IHsgXG4gICAgICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLndpZGUge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUgeyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb3Vwb25jb2RlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnV0dG9uLWZhbmN5LWxhcmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWxlcnQge31cbiAgICAgICAgICAgIC5sZWdhbCB7fVxuICAgICAgICB9XG4gICAgICAgIC52ZXJ0aWNhbEFsaWduX193cmFwIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudmVydGljYWxBbGlnbl9fYm9keSB7fVxuICAgIH1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTG95YWx0eSBSZWdpc3RyYXRpb24gZm9ybXMgXG5cbiNhY2NvdW50Y3JlYXRpb24tam9pbi1sb3lhbHR5IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItZ3JheTE7XG4gICAgcGFkZGluZzogNTBweCAyMHB4O1xuICAgICY+cDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgfVxuICAgIC5jdXN0b20tY2hlY2tib3gge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNHB4O1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRtZWRpdW0tbGlnaHQtZ3JheTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjX2dyYXkxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0OmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjX3doaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5qb2luTG95YWx0eV9fbm90aWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICB9XG4gICAgLmpvaW5Mb3lhbHR5X19jb2xzLS1sZWZ0LFxuICAgIC5qb2luTG95YWx0eV9fY29scy0tcmlnaHQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB9XG4gICAgLmpvaW5Mb3lhbHR5X19jb2xzLS1sZWZ0IHtcbiAgICAgICAgY29sb3I6ICRtZWRpdW0tbGlnaHQtZ3JheTtcbiAgICB9XG4gICAgLmpvaW5Mb3lhbHR5X19jb2xzLS1yaWdodCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufVxuXG4jUmVnaXN0cmF0aW9uRm9ybSB7XG4gICAgLmJpcnRoZGF5IHtcbiAgICAgICAgc2VsZWN0IHsgICAgICAgXG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXItZ3JheTE7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sYWJlbC1uby1wbGFjZWhvbGRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuXG4gICAgYm9keSAudWktZGlhbG9nLmxveWFsdHlNb2RhbCB7XG4gICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgJlthcmlhLWxhYmVsbGVkYnk9J3VpLWRpYWxvZy10aXRsZS1jb252ZXJ0LXBvaW50cy1tb2RhbCddLFxuICAgICAgICAmW2FyaWEtbGFiZWxsZWRieT0ndWktZGlhbG9nLXRpdGxlLTEnXSxcbiAgICAgICAgJlthcmlhLWxhYmVsbGVkYnk9J3VpLWRpYWxvZy10aXRsZS1sb3lhbHR5LXdlbGNvbWViYWNrLWJvbnVzLXBvcGluJ10ge1xuICAgICAgICAgICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG4gICAgICAgIC5mb3JtLXJvdyB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICNwcm9maWxlX2JpcnRoZGF5X2RheS5pbnB1dC1zZWxlY3RfZGF5LFxuICAgICAgICAgICAgI3Byb2ZpbGVfYmlydGhkYXlfbW9udGguaW5wdXQtc2VsZWN0LW1vbnRoLFxuICAgICAgICAgICAgI3Byb2ZpbGVfYmlydGhkYXlfeWVhci5pbnB1dC1zZWxlY3RfeWVhciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjM3LCAyMzcsIDIzNyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY19ncmF5O1xuXG4gICAgICAgICAgICAgICAgJi5lcnJvciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRjAwMDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjcHJvZmlsZV9iaXJ0aGRheV9kYXlfZnJpZW5kLmlucHV0LXNlbGVjdF9kYXksXG4gICAgICAgICAgICAjcHJvZmlsZV9iaXJ0aGRheV9tb250aF9mcmllbmQuaW5wdXQtc2VsZWN0LW1vbnRoLFxuICAgICAgICAgICAgI3Byb2ZpbGVfYmlydGhkYXlfeWVhcl9mcmllbmQuaW5wdXQtc2VsZWN0X3llYXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQlIC8gMykgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNfZ3JheTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjcHJvZmlsZV9iaXJ0aGRheV9tb250aF9mcmllbmQuaW5wdXQtc2VsZWN0LW1vbnRoIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuNSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgI3Byb2ZpbGVfYmlydGhkYXlfbW9udGguaW5wdXQtc2VsZWN0LW1vbnRoIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuNSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0Lm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSB7XG4gICAgICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUgeyB9XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIgeyB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7IH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwgKyAub3B0aW5FeHBsYW5hdGlvbl9fY29udGVudCB7IH1cbiAgICAgICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCArIC5vcHRpbkV4cGxhbmF0aW9uX19jb250ZW50IHsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5saW5rLW9ubHkge1xuICAgICAgICAgICAgICAgIC5wcml2YWN5UG9saWN5IHsgfVxuICAgICAgICAgICAgICAgIGlucHV0Lm9wdGluRXhwbGFuYXRpb25fX3RvZ2dsZSArIGxhYmVsOmFmdGVyIHsgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sb3ZhYmxlTW9kYWxfX3Jvdy0tc2V4LFxuICAgICAgICAubG92YWJsZU1vZGFsX19yb3ctLWRhdGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmID4gc3BhbiB7IH1cbiAgICAgICAgfVxuICAgICAgICAubG92YWJsZU1vZGFsX19yb3ctLXNleCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgLTUwcHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb3JtLXJvdyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbnB1dC1yYWRpbyB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHsgfVxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7IH1cbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCArIGxhYmVsIHsgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sb3ZhYmxlTW9kYWxfX3Jvdy0tZGF0ZSB7IH1cbiAgICAgICAgLmxvdmFibGVNb2RhbF9fcHJvdmluY2Uge1xuICAgICAgICAgICAgLmN1c3RvbVNlbGVjdEFyZWEgeyB9XG4gICAgICAgICAgICAuY3VzdG9tU2VsZWN0IHsgfVxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNfZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubG92YWJsZU1vZGFsX19vcHRJbnMgeyB9XG4gICAgICAgIC5kaWFsb2ctcmVxdWlyZWQgeyB9XG4gICAgICAgIGJ1dHRvblt0eXBlPSdzdWJtaXQnXSB7IH1cbiAgICAgICAgLnN3aXBlci1jb250YWluZXIgeyB9XG4gICAgICAgIC5pY29uX2hlYXJ0IHsgfVxuICAgICAgICAuc2xpZGVfaW1hZ2UgeyB9XG4gICAgICAgIGgyIHsgfVxuICAgICAgICBwIHsgfVxuICAgICAgICAubGVnYWwgeyB9XG4gICAgICAgIC5wcm9tby1jb2wge1xuICAgICAgICAgICAgaW1nIHsgfVxuICAgICAgICB9XG4gICAgICAgIC5wcm9tby1kdWVkYXRlIHsgfVxuICAgICAgICAucHJvbW8tdGl0bGUgeyB9XG4gICAgICAgIC5wcm9tby1saW5rIHsgfVxuICAgICAgICBcbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHsgfVxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tc3dpdGNoIHtcbiAgICAgICAgICAgICYuc3dpcGVyLWFjdGl2ZS1zd2l0Y2ggeyB9XG4gICAgICAgIH1cbiAgICAgICAgLnN3aXBlci1hcnJvd3Mge1xuICAgICAgICAgICAgJi5zd2lwZXItcHJldiB7IH1cbiAgICAgICAgfVxuICAgIH1cblxuIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAvLyBQRFA6IHBvaW50cyByZWNlaXZlZFxuXG4gICAgIC5sb3lhbHR5LXBvaW50cyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgfVxuICAgICB9XG4iLCIvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgTk9UIEZPVU5EXG4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICovXG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBERUZBVUxUU1xuXG4gICAgLmtlZXBlci5wLTQwNCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogODBweCAxNXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAucC00MDQgLm5vaGl0cy1iYWNrZ3JvdW5kIHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucC00MDQgLm5vaGl0cy1zZWFyY2hmb3JtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTcwcHg7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoLWljb24tLXdyYXAge1xuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IGF1dG8gMTVweCBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaW50ZXJmYWNlLzQwNF9faWNvbi0tc2VhcmNoLnBuZ1wiKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNTA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSwgdGV4dGFyZWEge1xuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxZW0gMWVtIDFlbSA0ZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNWVtKTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgJjo6d2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY19kdXN0eTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cbiIsIiNtZXMtY291cHMge1xuICAgIHRke1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAmLml0ZW0tcHJpY2UsXG4gICAgICAgICYuaXRlbS1hdmFpbGFiaWxpdHl7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICYuaXRlbS1jb2xvcntcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRkLml0ZW0tYWN0aW9ucyAuYnV0dG9uLWZhbmN5LWxhcmdlIHtcbiAgICAgICAgY29sb3I6ICRjX2JsYWNrO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZl9ib2R5O1xuICAgICAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNfYmxhY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIHRhYmxlLml0ZW0tbGlzdCB0cntcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgPiBwe1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubGlzdC10YWJsZS1oZWFkZXJ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuZGVsZXRlLWl0ZW17XG4gICAgICAgIEBpbmNsdWRlIGljbyhpY28tdHJhc2gpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxufVxuXG4ubGlzdC10YWJsZS1oZWFkZXJ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbn1cblxuLndpc2hsaXN0LW5hdntcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLnNlbmQtdG8tZnJpZW5ke1xuICAgIG1hcmdpbi1yaWdodDogNzBweDtcbn0iLCIvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgQ0FSVCBQQUdFIFJFU1BPTlNJVkVcbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKi9cbkBpbXBvcnQgXCIuL2NoZWNrb3V0LXN0ZXBwZXJcIjtcblxuLm1haW4td3JhcHBlci1jYXJ0IHtcbiAgICAuY29udGFpbmVyLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIC5jYXJ0LWhlYWRpbmcsIC5jYXJ0LWxlZnQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FydC1iYW5uZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uY2FydC13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgQ0FSVCBUQUJMRVxuXG4gICAgLmNhcnQtdGFibGUuaXRlbS1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAuc2VjdGlvbi1saW5lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJi5pdGVtLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNTBweCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgLmRpc3BsYXktciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pdGVtLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLml0ZW0tdG90YWwge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICAgICAgICAgICAgICAgICAgLnByaWNlLXByb21vdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcmljZS1zYWxlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLnByaWNlLXN0YW5kYXJkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZHluYW1pYy1kaXNjb3VudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWxveWFsdHktcG9pbnRzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNpemUge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygoOTUlIC0gMTUwcHgpIC8gMik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNpemUtc2VsZWN0LCAucXVhbnRpdHktc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLml0ZW0tcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCg5NSUgLSAxNTBweCkgLyAyKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tcXVhbnRpdHktYXJlYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5xdWFudGl0eS1zZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5yZW1vdmUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBDQVJUIFNJREVCQVJcblxuICAgIC5jYXJ0LXRhYmxlLmRpc2NvdW50LXRhYmxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5jYXJ0LXNpZGViYXIge1xuICAgICAgICAuY2FydC1zdGlja3ktc2lkZWJhciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgbGFiZWwsXG4gICAgICAgIC5jb3Vwb24tdGV4dCxcbiAgICAgICAgI2FkZC1jb3Vwb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jYXJ0LXN1YnRvdGFsLFxuICAgICAgICAuY2FydC1vcmRlci10b3RhbHMge1xuICAgICAgICAgICAgLmxhYmVsLCAudmFsdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2hpcHBpbmdNZXRob2RzIHtcbiAgICAgICAgICAgIC50aXRsZSxcbiAgICAgICAgICAgIC5zaGlwcGluZ01zZyxcbiAgICAgICAgICAgIC5zaGlwcGluZ01ldGhvZHNMaXN0QXJlYSxcbiAgICAgICAgICAgIC5zaGlwcGluZ01ldGhvZHNMaXN0U3ViVG90YWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGlzY291bnQtdGFibGUgLnNlY3Rpb24tbGluZSB7XG4gICAgICAgICAgICA+IGRpdiwgLnRpdGxlLCAuZGVzYywgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1jb3Vwb24tY29kZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXBvbi10ZXh0IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNoaXBwaW5nYW5kdG90YWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNoaXBwaW5nLW1ldGhvZHMge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgLnNoaXBwaW5nTWV0aG9kc0xpc3RBcmVhIGxpIHtcbiAgICAgICAgICAgICAgICAuc2hpcHBpbmctcmFkaW8tc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc2hpcHBpbmctdGV4dC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIC5zdGFuZGFyZC1zaGlwcGluZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJlbWFpbiwgLnNoaXBwaW5nLXRpbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY2FydC1sb3lhbHR5LXBvaW50cyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbi8vICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vICBDQVJUIEFDVElPTlNcblxuICAgIC5jYXJ0LWFjdGlvbnMge1xuXG4gICAgICAgIC50ZXJtcyAuZm9ybS1yb3cge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcnQtYWN0aW9uLWNoZWNrb3V0IGZpZWxkc2V0IHtcbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHRfY2FydCB7XG4gICAgICAgIC5jYXJ0LXJlY29wcm9kdWN0LWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5jb21wbGV0ZS10aGUtc2V0IC5jb2x1bW4uY29sb3Ige1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbG9ySWNvKCRzaXplOiAzNnB4KTtcbiAgICAgICAgICAgICAgICAmLnNlbGVjdGVkLXZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhLnN3YXRjaGFuY2hvciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIENPTkZJUk1BVElPTiBQQUdFICAgIFxuICAgIFxuICAgIC5jb25maXJtYXRpb25QYWdlIHtcbiAgICAgICAgcGFkZGluZzogMTMwcHggNTBweDtcbiAgICB9XG4iLCIuY2hlY2tvdXRTdGVwcGVyIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDUwcHggMCAwO1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDYwcHg7XG4gICAgLnRleHQge1xuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQzcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBhLFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQxcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNfd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjX3doaXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VycmVudCxcbiAgICAgICAgJi5wcmV2aW91cyB7XG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjX2NyaW1zb247XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VycmVudCBzcGFuIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNfY3JpbXNvbjtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTNweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgKyAyMnB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldmlvdXMge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogLTYycHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTQzcHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNfd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCguLi9pbWFnZXMvc3RlcHBlci1jaGVjay5zdmcpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY193aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNfY3JpbXNvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNfd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjX2NyaW1zb247XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY19jcmltc29uO1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNfY3JpbXNvbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgKyAyNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIxXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5wcmV2aW91cyB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIxXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIjFcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIyXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5wcmV2aW91cyB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIyXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIjJcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgYSxcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIjNcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnByZXZpb3VzIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIjNcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiM1wiICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgYSxcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMjVweCk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIjRcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jaGVja291dC1oZWFkZXIge1xuICAgIC5jaGVja291dFN0ZXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICB9XG59XG4iLCIvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgQ0FSVCBQQVlNRU5UIFBBR0UgUkVTUE9OU0lWRVxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAqL1xuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgQ0FSVCBUQUJMRVxuXG4ucGF5bWVudC1wYWdlIHtcbiAgICAubWluaS1jYXJ0LWF0dHJpYnV0ZXMge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gICAgfVxuICAgIC5taW5pLWNhcnQtcHJpY2luZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgLnByaWNlLXByb21vdGlvbiB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIC5wcmljZS1zYWxlcywgLnByaWNlLXN0YW5kYXJkIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYXltZW50LWNhcmQtaW5mbyB7XG4gICAgcGFkZGluZzogMzBweCAxNXB4IDA7XG59XG4ucGF5bWVudC1tZXRob2QtY3JlZGl0Y2FyZCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5mb3JtLXJvdyA+IGlucHV0I2R3ZnJtX2JpbGxpbmdfcGF5bWVudE1ldGhvZHNfY3JlZGl0Q2FyZF9udW1iZXIge3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7fVxuLnBheW1lbnQtbWV0aG9kLWNyZWRpdGNhcmQgLmZvcm0tcm93IC5zY2FkZW56YS1sYWJlbCB7bWFyZ2luLXRvcDogLTIwcHg7fVxuLnBheW1lbnQtY2FyZC1pbmZvIC5mb3JtLXJvdyAuY2FyZC10eXBlLW9wdGlvbnMgPiBsYWJlbCBpbWcge1xuICAgIGhlaWdodDogNDVweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IGF1dG87XG59XG5cbi8vIERFU0tUT1AgT1ZFUlJJREVcblxuLnBheW1lbnQtY2FyZC1pbmZvIHtcbiAgICAuZm9ybS1yb3cge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBzcGFuLFxuICAgICAgICAgICAgc3Bhbi5yZXF1aXJlZC1pbmRpY2F0b3Ige1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0I2R3ZnJtX2JpbGxpbmdfcGF5bWVudE1ldGhvZHNfY3JlZGl0Q2FyZF8ge1xuICAgICAgICAgICAgJm51bWJlciwgJm93bmVyLCAmY3ZuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5leHBpcmVzLWRhdGUtZHJvcGRvd24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi8vICBTVFJVQ1RVUkVcbi5wYXltZW50LW1ldGhvZHMtYmxvY2sge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLnNob3ctbGFiZWwge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wYXltZW50LWNhcmQtZm9ybSB7XG4gICAgICAgIGxlZ2VuZCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5wbWYtUEFZUEFMIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICAjUGF5bWVudE1ldGhvZF9DUkVESVRfQ0FSRCB7XG4gICAgICAgICAgICAuZXhwaXJlcy1kYXRlLWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNjYWRlbnphLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGlhbG9nLXJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgJi5uby1wYWRkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnJlcXVpcmVkLWluZGljYXRvciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWxpZ2h0LWdyYXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1lZGl1bS1saWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvdXRlLXNlY3VyaXRlIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5yZWNhcGl0dWxhdGlmLWNvbW1hbmRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLnBheW1lbnQtdG90YWwtcHJpY2luZyB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAucHRwLWxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICAmLnB0cC1wcml4dG90YWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJjLXRpdGxlIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweCAyNXB4O1xuICAgICAgICAmID4gcC5iaWxsaW5nLXN1bW1hcnkge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWluaS1jYXJ0LW5hbWUge1xuICAgICAgICBoNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJjLXByb2R1Y3RzIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG4gICAgLmxpdnJhaXNvbi1pbmZvIHtcbiAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgICAgICAubGktdGl0bGUge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgfVxuICAgICAgICAucmMtbW9kaWZpZXIge1xuICAgICAgICAgICAgdG9wOiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5yYy1tb2RpZmllciB7XG4gICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgIH1cbn0iLCIvKiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gICAgQ0FSVCBBRERSRVNTIFBBR0UgREVTS1RPUFxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAqL1xuXG4vLyAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyAgTUFJTiBBRERSRVNTIEZPUk1cblxuICAgIC5jaGVja291dC1zaGlwcGluZyBsZWdlbmQge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDVweCAwIDVweDtcbiAgICB9XG4gICAgLmNoZWNrb3V0LXNoaXBwaW5nLFxuICAgIC5wYXltZW50LWNhcmQtZm9ybSB7XG4gICAgICAgIGxlZ2VuZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNoZWNrb3V0LXNoaXBwaW5nIC5zZWxlY3QtYWRkcmVzcyBzZWxlY3Qge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXItZ3JheTE7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGxpZ2h0ZXItZ3JheTE7XG4gICAgfVxuICAgIC5zaGlwcGluZ0FkZHJlc3Mge3BhZGRpbmc6IDAgMTVweDt9XG4gICAgLmNoZWNrb3V0LXNoaXBwaW5nIC5mb3JtLWNhcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgIGNvbG9yOiAkbWVkaXVtLWxpZ2h0LWdyYXk7XG4gICAgfVxuICAgIFxuICAgIC5jaGVja291dC1zaGlwcGluZyAuY2hlY2tib3hMaW5lLmZvcm0taW5kZW50IHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC5jaGVja291dC1zaGlwcGluZyAuc2hpcHBpbmdNZXRob2RzTGlzdEFyZWEgdWwgbGkgLmljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY190cmFuc3BhcmVudDtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgICYgPiBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2hlY2tvdXQtc2hpcHBpbmcgZGl2I3NoaXBwaW5nLW1ldGhvZC1saXN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLmNoZWNrb3V0LXNoaXBwaW5nIC5zaGlwcGluZ01ldGhvZHNMaXN0U3ViVG90YWwtYmxvY2sge1xuICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICB9XG4gICAgXG4gICAgLmNoZWNrb3V0LXNoaXBwaW5nLmFkZHJlc3MgLmZvcm0tcm93LmZvcm0tcm93LWJ1dHRvbiBidXR0b24ge1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jaGVja291dC1zaGlwcGluZyAuZm9ybS1yb3cuY291bnRyeSBzZWxlY3Qge1xuICAgICAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBERVNLVE9QIE9WRVJSSURFXG4gICAgLnB0X2NoZWNrb3V0ICNkd2ZybV9zaW5nbGVzaGlwcGluZ19zaGlwcGluZ0FkZHJlc3MuY2hlY2tvdXQtc2hpcHBpbmcgLnNoaXBwaW5nQWRkcmVzcyxcbiAgICAucHRfY2hlY2tvdXQgI2R3ZnJtX3NpbmdsZXNoaXBwaW5nX3NoaXBwaW5nQWRkcmVzcy5jaGVja291dC1zaGlwcGluZyAuYmlsbGluZ0FkZHJlc3MsXG4gICAgI1BheW1lbnRNZXRob2RfQ1JFRElUX0NBUkQge1xuICAgICAgICAuc2FsdXRhdGlvbi1sYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZvcm0tcm93IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAyMXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucmVxdWlyZWQtaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjX2NyaW1zb247XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X25vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19hZGRyZXNzTGlzdFwiXSxcbiAgICAgICAgICAgICAgICAmW2Zvcj1cImR3ZnJtX3NpbmdsZXNoaXBwaW5nX2JpbGxpbmdBZGRyZXNzX2FkZHJlc3NMaXN0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jaXZpbGl0eSB7XG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjYmlsbGluZ0FkZHJlc3Mge1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDE1cHggMzBweCAxNXB4O1xuICAgICAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jaGVja2JveExpbmUuZm9ybS1pbmRlbnQsXG4gICAgICAgICAgICAuZGlhbG9nLXJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmhhbGYtc2l6ZS1maWVsZCB7XG4gICAgICAgICAgICAuZm9ybS1yb3cge1xuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDAlIC0gMzBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5oYWxmLXNpemUtZmllbGQsXG4gICAgICAgIC5hZGRyZXNzRm9ybSxcbiAgICAgICAgLmFkZHJlc3NGb3JtIC5mb3JtLXJvdy5jb3VudHJ5IHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltmb3I9XCJkd2ZybV9zaW5nbGVzaGlwcGluZ19iaWxsaW5nQWRkcmVzc19hZGRyZXNzRmllbGRzX2NvdW50cnlcIl0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuIiwiLy8gICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gIEZBUVxuXG4gICAgLnByaW1hcnktY29udGVudCAuc2VydmljZS1wYWdlcy10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICAgIC5mYXEtc2lkZWJhciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAtMjBweDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19ib2xkO1xuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjX3doaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNfYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5mYXEtc2lkZWJhci1sYXN0IHsgfVxuICAgIC5zZXJ2aWNlLXBhZ2VzLWNvbnRlbnQgLmtlZXBlciA+IC5jb250ZW50LWFzc2V0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5mYXEtY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgaDIsIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgfVxuICAgICAgICBwLCB1bCwgb2wsIGxpLCB0YWJsZSwgdGQsIHNtYWxsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgb2wsIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDFlbTtcbiAgICAgICAgfVxuICAgIH1cbiIsIi8qXG4qICNPUkRFUi1MSVNUXG4qL1xuLm9yZGVyLWhpc3RvcnktbGlzdCB7XG4gICAgLm9kZHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItZ3JheTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm9yZGVyLWhpc3RvcnktaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICB9XG4gICAgLmxpbmtzOm5vdCgucmV0dXJuTGluaykge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG59XG5cbi5vcmRlci1oaXN0b3J5LWl0ZW0ge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAubW9iaWxlLWhlYWRlciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAuY2VsbCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qXG4qICNPUkRFUi1TVU1NQVJZXG4qL1xuXG4ucHRfYWNjb3VudCAucHJpbWFyeS1jb250ZW50IGgxLCBcbi5wdF9vcmRlciAucHJpbWFyeS1jb250ZW50IGgxIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHRfb3JkZXIgLml0ZW0tbGlzdCxcbi5zaGlwcGluZ2FuZHRvdGFscyxcbi5wdF9vcmRlciBoMi5vcmRlckRldGFpbHNUaXRsZSxcbi5wdF9vcmRlciAuYmFja1RvT3JkZXJzTGlzdCxcbi5vcmRlcnNJbnRybyxcbnVsLnNlYXJjaC1yZXN1bHQtaXRlbXMge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4ub3JkZXJzSW50cm8ge1xuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxufVxuXG4vKlxuKiAjUkVUVVJOLVBPUElOXG4qL1xuXG5ib2R5IC51aS1kaWFsb2cuY3JlYXRlUmV0dXJuIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG59XG5cbi5yZXR1cm4tdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZndfbm9ybWFsO1xufVxuXG4jY3JlYXRlLXJldHVybiB7XG4gICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgdGJvZHkge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjppbmhlcml0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmX2JvZHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJldHVybi1pdGVtLW5hbWUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucmV0dXJuZm9ybSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY19ibGFjaztcbiAgICAgICAgY29sb3I6ICRjX3doaXRlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDcwcHg7XG4gICAgICAgIG1hcmdpbjogNDBweCBhdXRvIDI1cHg7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNfd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjX2JsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbn1cblxuYm9keSAudWktZGlhbG9nLmNyZWF0ZVJldHVybiAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG59IiwiI1JlZ2lzdHJhdGlvbkZvcm0ge1xuICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgbGFiZWxbZm9yPVwicHJvZmlsZV9iaXJ0aGRheVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIH1cbiAgICAuYmlydGhkYXktcm93IHtcbiAgICAgICAgc3Bhbi5lcnJvciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC5kaWFsb2ctcmVxdWlyZWQge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI1JlZ2lzdHJhdGlvbkZvcm0sXG4ucHRfYWNjb3VudCAuYWNjb3VudERhdGFzIHtcbiAgICAuZm9ybS1yb3cge1xuICAgICAgICAmLmZvcm0tcm93LWJ1dHRvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBsYWJlbDpub3QoW2Zvcj1cImR3ZnJtX2xvZ2luX3JlbWVtYmVybWVcIl0pIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ud2h5UmVnaXN0ZXIsIFxuLnB0X2FjY291bnQgLnBlcnNvbmFsRGF0YXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi53aHlSZWdpc3RlciB7XG4gICAgLm1haW5BZHZhbnRhZ2VzIHtcbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzLFxuLnB0X2FjY291bnQgLmxvZ2luRGF0YXMge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsYWJlbCB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jUmVnaXN0cmF0aW9uRm9ybSxcbi5wdF9hY2NvdW50IC5wZXJzb25hbERhdGFzLFxuLnB0X2FjY291bnQgLmxvZ2luRGF0YXMge1xuICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLnB0X2FjY291bnQgLmFjY291bnREYXRhcyB7XG4gICAgJi5yZWdpc3RlclBhZ2Uge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAjUmVnaXN0cmF0aW9uRm9ybSB7XG4gICAgICAgICAgICAucGVyc29uYWxEYXRhcyxcbiAgICAgICAgICAgIC53aHlSZWdpc3RlcixcbiAgICAgICAgICAgICNhY2NvdW50Y3JlYXRpb24tbG95YWx0eS1oaWRkZW4sXG4gICAgICAgICAgICAubmV3c2xldHRlci13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVnaXN0ZXItZm9ybS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRpYWxvZy1yZXF1aXJlZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLm0tc3RvcmVsb2NhdG9yIHtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG59XG5cbi5tLXN0b3JlbG9jYXRvcl9fc2xpZGVyIHtcbiAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG59XG5cbi5tLXN0b3JlbG9jYXRvcl9fZmllbGRzZXQge1xuICAgIC5jLXN0b3JlbG9jYXRvcl9faW5wdXQsXG4gICAgLmMtc3RvcmVsb2NhdG9yX19sYXJnZUJ1dHRvbixcbiAgICAubS1zdG9yZWxvY2F0b3JfX2NoZWNrYm94LFxuICAgIGxpLCBcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxZW0gIWltcG9ydGFudDsgLy8gb3ZlcnJpZGluZyBhbm90aGVyICFpbXBvcnRhbnRcbiAgICAgICAgZm9udC1zaXplOiBmb250U2l6ZSgxOCk7XG4gICAgfVxuICAgIC5jLXN0b3JlbG9jYXRvcl9fc21hbGxCdXR0b24ge1xuICAgICAgICBmb250LXNpemU6IGZvbnRTaXplKDE4KTtcbiAgICB9XG4gICAgLmMtc3RvcmVsb2NhdG9yX19jaGVja2JveCB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgIH1cbn1cblxuLm0tc3RvcmVsb2NhdG9yX19tYXAge1xuICAgIC5jLXN0b3JlbG9jYXRvcl9faW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmMtc3RvcmVsb2NhdG9yX19pbWctLWlzTW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIC41ZW0gMCAwO1xuICAgIH1cbiAgICAuYy1zdG9yZWxvY2F0b3JfX3RleHQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMWVtIDAgM2VtO1xuICAgIH1cbiAgICAuYy1zdG9yZWxvY2F0b3JfX3RleHQtLWlzVGl0bGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG59XG5cbi5tLXN0b3JlbG9jYXRvcl9faW5mbyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgMCA1ZW07XG4gICAgfVxuICAgIC5jLXN0b3JlbG9jYXRvcl9fdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogZm9udFNpemUoMTgpO1xuICAgIH1cbiAgICAuYy1zdG9yZWxvY2F0b3JfX2xpbmsge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uaW5wdXQtY2hlY2tib3ggKyBsYWJlbDpiZWZvcmUsIFxuLmlucHV0LWNoZWNrYm94ICsgYTpiZWZvcmUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbn1cblxuLnN0eWxlZC1jaGVja2JveCA+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gbGFiZWw6YWZ0ZXIge1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGxlZnQ6IDVweDtcbn1cbi5zdG9yZUhvdXJzIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnN0b3JlLWxpc3QgbGkuc3RvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDZlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG59Il19 */
