/**
 * Variable file 
 * place global variables here:
 *
 * @package Chef Gutenberg Child Theme
 */
/**
 * Mixin file 
 * All our custom mixins
 *
 * @package Chef Gutenberg Child Theme
 * @since 2019
 */
/* Boxsizing shortcut: */
/* Transform shortcuts */
/* Styling placeholders: */
/* Retina images: */
/* "Hard" gradients: */
/* REM font sizes: */
@media only screen and (max-width: 1440px) {
  .woocommerce-product-gallery .flex-viewport {
    height: 700px !important; } }

@media only screen and (max-width: 1220px) {
  .main-shop-wrapper .sidebar-area {
    -ms-flex: 0 1 252px;
        flex: 0 1 252px; }
  .single.single-product .product-wrapper .summary.entry-summary .variations {
    margin-bottom: 25px; }
  .single-product .product-usp-wrapper {
    margin-top: 50px; }
  .single.single-product .product-wrapper .related.products {
    margin-bottom: 120px; }
  .section.cta_with_form_block {
    margin-bottom: 120px; } }

@media only screen and (max-width: 1080px) {
  .section.block_content.shortcode .container .ywraq-form-table-wrapper #yith-ywraq-form {
    margin-right: 0;
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .section.block_content.shortcode .container .ywraq-form-table-wrapper .gform_wrapper {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .single.single-product .product-wrapper .woocommerce-product-gallery {
    margin-right: 50px; }
  .single.single-product .product-wrapper .summary.entry-summary {
    -ms-flex: 0 1 50%;
        flex: 0 1 50%; }
  .single.single-product .product-wrapper .summary.entry-summary .woocommerce-product-details__short-description {
    margin: 30px 0 30px 0; }
  .single.single-product .product-wrapper .summary.entry-summary .variations .select-wrapper select {
    padding: 13px 70px 13px 25px; }
  .checkout.woocommerce-checkout .extra-payment-wrapper {
    -ms-flex: 0 1 370px;
        flex: 0 1 370px; }
  .main-shop-wrapper .sidebar-area .inner-sidebar {
    position: initial;
    top: 0; }
  .show-filter-btn-wrapper {
    display: block;
    margin: 0px 0 30px; }
    .show-filter-btn-wrapper .button-alt {
      appearance: none;
      border: none;
      outline: none;
      background: #FC73A7;
      color: #FFF;
      padding: 15px 50px;
      display: inline-block;
      border-radius: 30px;
      position: relative;
      transition: .3s;
      text-decoration: none;
      font-size: 20px;
      font-size: 1.25rem;
      font-weight: 700;
      padding: 9px 50px 10px 50px; }
      .show-filter-btn-wrapper .button-alt:hover, .show-filter-btn-wrapper .button-alt:focus {
        background: #DA156A;
        color: #FFFFFF;
        outline: none; }
      .show-filter-btn-wrapper .button-alt:after {
        display: none; }
  .shop-content-area .woocommerce-products-header {
    margin-bottom: 20px; }
  .main-shop-wrapper .container {
    position: relative; }
  .main-shop-wrapper .sidebar-area {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    transform: translateX(-110%);
    transition: .3s;
    height: 100%;
    width: 50%;
    z-index: 9999;
    margin: 0; }
    .main-shop-wrapper .sidebar-area .inner-sidebar {
      position: relative;
      height: 100%;
      z-index: 2;
      background: #FFF;
      padding-top: 50px; }
    .main-shop-wrapper .sidebar-area .shop-sidebar {
      height: calc( 100% - 90px);
      margin-bottom: 10px;
      padding: 30px;
      overflow-y: scroll; }
    .main-shop-wrapper .sidebar-area:after {
      content: "";
      background: rgba(37, 33, 34, 0.8);
      z-index: -10;
      position: absolute;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100%;
      transition: .3s;
      transform: translateX(-100%); }
  .main-shop-wrapper.toggle-filter-area .sidebar-area {
    transform: none; }
    .main-shop-wrapper.toggle-filter-area .sidebar-area:after {
      transform: none; }
  .main-shop-wrapper .sidebar-area .close-overlay, .main-shop-wrapper .sidebar-area .button-alt {
    display: block;
    width: 100%; }
  .main-shop-wrapper .sidebar-area .close-overlay {
    margin: 0;
    width: 42px;
    height: 42px;
    background: #FC73A7;
    border-radius: 50%;
    transition: .3s;
    color: #FC73A7;
    border: none;
    outline: none;
    display: inline-block;
    position: absolute;
    top: 20px;
    right: 30px;
    transition: .3s;
    opacity: 1;
    z-index: 2; }
    .main-shop-wrapper .sidebar-area .close-overlay:after {
      content: "";
      background-image: url(../images/icons/chevron-right.svg);
      background-size: contain;
      background-repeat: no-repeat;
      width: 15px;
      height: 20px;
      top: 4px;
      right: 7px;
      position: relative;
      display: inline-block;
      transform: rotate(180deg); }
    .main-shop-wrapper .sidebar-area .close-overlay:hover {
      background: #DA156A;
      color: #DA156A; }
  .main-shop-wrapper .sidebar-area .button-alt {
    background: #FC73A7;
    color: #FFF;
    padding: 15px 50px;
    display: inline-block;
    border-radius: 30px;
    position: relative;
    transition: .3s;
    text-decoration: none;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 700;
    border: none;
    outline: none;
    margin: 15px 30px 0 30px;
    width: calc( 100% - 60px);
    position: relative; }
    .main-shop-wrapper .sidebar-area .button-alt:hover, .main-shop-wrapper .sidebar-area .button-alt:focus {
      background: #DA156A;
      color: #FFFFFF;
      outline: none; }
    .main-shop-wrapper .sidebar-area .button-alt:before {
      content: "";
      background: #FFFFFF;
      box-shadow: 0px -4px 6px 0px rgba(145, 145, 145, 0.2);
      position: absolute;
      top: -25px;
      left: -30px;
      width: calc( 100% + 60px);
      height: 100%;
      display: inline-block;
      z-index: -1; }
  .single-product #main-wrapper {
    padding-top: 145px; }
  .single-product .woocommerce-variation-add-to-cart {
    display: block; }
  .single-product .summary .simple-inner-form {
    display: block; }
  .single-product form .ywapo_options_container select {
    padding: 13px 70px 13px 25px; }
  body.single-blog.no-hero .single-blog .containero .section .container, body.single-blog.no-hero .single-blog .small-container, body.single-blog.no-hero .single-blog .container {
    padding: 0 4%; } }

@media only screen and (max-width: 900px) {
  .single.single-product .product-wrapper .related.products ul li {
    margin-right: 12px !important; } }

@media only screen and (max-width: 900px) {
  .single.single-product .product-wrapper .summary.entry-summary {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    margin: 0 0 30px 0; }
  .single.single-product .product-wrapper .woocommerce-product-gallery {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    margin: 0 0 30px 0; }
  .single.single-product .product-wrapper .wc-tabs-wrapper {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    margin: 0 0 30px 0; }
  .single.single-product .product-wrapper .related.products {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%; }
  .woocommerce-product-gallery .flex-viewport figure .woocommerce-product-gallery__image {
    height: auto; }
  .woocommerce-product-gallery .flex-viewport {
    height: auto !important; }
  .woocommerce-product-gallery .flex-viewport figure .woocommerce-product-gallery__image {
    height: 550px;
    max-height: 80vh; }
  .woocommerce div.product div.images .flex-control-thumbs li {
    width: 100px; }
  .woocommerce div.product div.images .flex-control-thumbs li {
    width: 50px; }
    .woocommerce div.product div.images .flex-control-thumbs li img {
      height: auto !important; }
    .woocommerce div.product div.images .flex-control-thumbs li:nth-child(4n+4) {
      margin-right: 15px; }
  .woocommerce .single_add_to_cart_button.button {
    padding: 16px 60px 18px 30px !important; }
  .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    -ms-flex: 0 1 calc( 33% - 12px);
        flex: 0 1 calc( 33% - 12px); }
    .woocommerce ul.products li.product:nth-child(4n+4), .woocommerce-page ul.products li.product:nth-child(4n+4) {
      margin-right: 20px !important; }
    .woocommerce ul.products li.product:nth-child(3n+3), .woocommerce-page ul.products li.product:nth-child(3n+3) {
      margin-right: 0 !important; }
  .woocommerce div.product div.images .flex-control-thumbs {
    display: none !important; }
  .woocommerce ul.flex-direction-nav {
    display: block; } }

@media only screen and (max-width: 800px) {
  .checkout.woocommerce-checkout .extra-payment-wrapper {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%; }
  .checkout.woocommerce-checkout .col2-set {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    margin: 0; }
  .woocommerce-ordering select {
    min-width: auto; } }

@media only screen and (max-width: 768px) {
  .single-product .product-usp-wrapper {
    padding: 15px; }
  .product-part .part-title, .product-part:visited .part-title {
    font-size: 20px;
    font-size: 1.25rem; }
  .product-part .part-title, .product-part:visited .part-title {
    padding: 0 5px; }
  ul.products.columns-12 li.product, .woocommerce ul.products.columns-12 li.product {
    -ms-flex: 0 1 calc( 50% - 8px);
        flex: 0 1 calc( 50% - 8px);
    margin-right: 16px; }
    ul.products.columns-12 li.product:nth-child(3n+3), .woocommerce ul.products.columns-12 li.product:nth-child(3n+3) {
      margin-right: 16px !important; }
    ul.products.columns-12 li.product:nth-child(even), .woocommerce ul.products.columns-12 li.product:nth-child(even) {
      margin-right: 0 !important; }
  .woocommerce-ordering select {
    padding-right: 50px;
    font-size: 14px;
    font-size: 0.875rem; }
  .single.single-product .product-wrapper .related.products ul li {
    margin-right: 0 !important; }
    .single.single-product .product-wrapper .related.products ul li:nth-child(3n+3) {
      margin-right: 0 !important; }
  .single.single-product .product-wrapper .related.products ul li {
    margin-right: 12px !important;
    -ms-flex: 0 1 calc( 50% - 6px);
        flex: 0 1 calc( 50% - 6px);
    margin-right: 12px !important; }
    .single.single-product .product-wrapper .related.products ul li:nth-child(3n+3) {
      margin-right: 12px !important; }
    .single.single-product .product-wrapper .related.products ul li:nth-child(even) {
      margin-right: 0 !important; }
  .single.single-product .product-wrapper .related.products {
    margin-bottom: 100px; }
  .main-shop-wrapper .sidebar-area {
    width: 100%; }
  .main-shop-wrapper .sidebar-area .shop-sidebar {
    padding: 30px 15px; } }

@media only screen and (max-width: 600px) {
  .woocommerce .woocommerce-breadcrumb {
    font-size: 14px;
    font-size: 0.875rem; }
  .single.single-product .product-wrapper .summary.entry-summary .variations {
    max-width: none; }
  .single.single-product .product-wrapper .summary.entry-summary .variations .select-wrapper {
    max-width: none; }
    .single.single-product .product-wrapper .summary.entry-summary .variations .select-wrapper select {
      font-size: 16px;
      font-size: 1rem; }
  .single.single-product .product-wrapper .summary.entry-summary .woocommerce-product-details__short-description p {
    font-size: 20px;
    font-size: 1.25rem; }
  .woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td {
    font-size: 18px;
    font-size: 1.125rem; }
  .single.single-product .product-wrapper .wc-tabs-wrapper .wc-tab p {
    font-size: 18px;
    font-size: 1.125rem; }
  .single.single-product .product-wrapper .summary.entry-summary .product_title {
    font-size: 30px;
    font-size: 1.875rem; }
  .single.single-product .product-wrapper .summary.entry-summary .price .big-price-wrapper .amount {
    font-size: 1em; }
  .single-product form .ywapo_options_container select {
    font-size: 16px;
    font-size: 1rem; }
  .single-product form .yith_wapo_groups_container {
    max-width: 100%; }
  .woocommerce-variation-add-to-cart {
    max-width: 100%; }
  .price-txt {
    font-size: 1em; }
  .woocommerce nav.woocommerce-pagination ul {
    border: none; }
    .woocommerce nav.woocommerce-pagination ul li {
      border: none; } }

@media only screen and (max-width: 550px) {
  .woocommerce.single-product .product .yith-ywraq-add-to-quote {
    position: initial;
    transform: none;
    float: none;
    margin-top: 15px; } }

@media only screen and (max-width: 480px) {
  .single.single-product .product-wrapper .related.products ul li {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    margin: 0 0 30px 0; }
    .single.single-product .product-wrapper .related.products ul li:last-child {
      margin-bottom: 0; }
  .woocommerce-product-gallery .flex-viewport {
    height: 370px !important; }
  .cart-menu {
    padding-bottom: 215px; }
    .cart-menu .buttons {
      padding: 20px 30px 130px 30px; }
  .woocommerce.single-product .product .yith-ywraq-add-to-quote {
    position: initial;
    margin-top: 15px; }
  body.single-blog.no-hero .single-blog .block.collection-overview-block .product-part, body.single-blog.no-hero .single-blog .block.collection-overview-block .product-part:visited {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%;
    margin: 0; } }

@media only screen and (max-width: 380px) {
  ul.products.columns-12 li.product, .woocommerce ul.products.columns-12 li.product {
    -ms-flex: 0 1 100% !important;
        flex: 0 1 100% !important;
    margin-right: 0 !important; }
    ul.products.columns-12 li.product:nth-child(3n+3), .woocommerce ul.products.columns-12 li.product:nth-child(3n+3) {
      margin-right: 0 !important; }
    ul.products.columns-12 li.product:nth-child(even), .woocommerce ul.products.columns-12 li.product:nth-child(even) {
      margin-right: 0 !important; }
  .product-part .part-title, .product-part:visited .part-title {
    min-height: initial; } }

@media only screen and (max-width: 360px) {
  body.stop-mobile-scroll {
    overflow: hidden !important; }
  .cart-menu.active {
    overflow: hidden; }
  .cart-menu .cart-ajax-wrapper .header-widget {
    padding-bottom: 15px;
    max-height: calc( 100vh - 240px);
    overflow-y: scroll;
    overflow-x: hidden; }
  .cart-menu .buttons {
    padding: 15px 4% 15px 4%;
    position: fixed; }
  .cart-menu {
    padding-bottom: 100px; }
  .cart-menu .close-cart-menu {
    right: 4%;
    top: 26px; }
  .cart-menu .edit-winkelmand {
    font-size: 16px; }
  .button.wc-backward, .woocommerce a.button, .woocommerce input.button, .woocommerce button.button {
    font-size: 16px; }
  .cart-menu .button {
    font-size: 16px !important; }
  .cart-menu .cart-ajax-wrapper {
    padding: 0 4%; }
  .cart-menu .cart-title {
    padding: 30px 90px 30px 4%; }
  .cart-menu .cart-ajax-wrapper .yith-ywraq-list-wrapper ul.yith-ywraq-list li {
    padding-bottom: 50px; }
    .cart-menu .cart-ajax-wrapper .yith-ywraq-list-wrapper ul.yith-ywraq-list li small {
      bottom: 50px; }
  .cart-menu .quantity {
    right: 0; }
  .section.block_content.shortcode .container .woocommerce.ywraq-wrapper #yith-ywraq-form table tbody tr td.product-quantity input {
    width: 50px;
    text-indent: 0;
    font-size: 16px;
    font-size: 1rem; }
  .section.block_content.shortcode .container .woocommerce.ywraq-wrapper #yith-ywraq-form table tbody tr td.product-name a {
    font-size: 16px;
    font-size: 1rem; }
  #yith-ywraq-form table.cart .product-thumbnail {
    display: none; }
  table.shop_table.ywraq_responsive .product-remove {
    padding: 10px 5px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJyZXNwb25zaXZlLXdvb2NvbW1lcmNlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUNMSDs7Ozs7O0dBTUc7QUFtQkgseUJBQXlCO0FBUXpCLHlCQUF5QjtBQWdDekIsMkJBQTJCO0FBUzNCLG9CQUFvQjtBQWNwQix1QkFBdUI7QUF3Q3ZCLHFCQUFxQjtBQzdIckI7RUFFQztJQUNDLHlCQUF3QixFQUN4QixFQUFBOztBQUlGO0VBYUM7SUFDQyxvQkFBZTtRQUFmLGdCQUFlLEVBQ2Y7RUFDRDtJQUNDLG9CQUFtQixFQUNuQjtFQUNEO0lBQ0MsaUJBQWdCLEVBQ2hCO0VBQ0Q7SUFDQyxxQkFBb0IsRUFDcEI7RUFFRDtJQUNDLHFCQUFvQixFQUNwQixFQUFBOztBQUdGO0VBRUM7SUFFRSxnQkFBZTtJQUNmLG1CQUFjO1FBQWQsZUFBYyxFQUNkO0VBSkY7SUFNRSxtQkFBYztRQUFkLGVBQWMsRUFDZDtFQUdGO0lBRUMsbUJBQWtCLEVBQ2pCO0VBSEY7SUFLRSxrQkFBYTtRQUFiLGNBQWEsRUFDYjtFQUVGO0lBRUUsc0JBQXFCLEVBQ3JCO0VBSEY7SUFLRSw2QkFBNEIsRUFDNUI7RUFHRjtJQUNDLG9CQUFlO1FBQWYsZ0JBQWUsRUFDZjtFQUVEO0lBQ0Msa0JBQWdCO0lBQ2hCLE9BQUssRUFDTDtFQUVEO0lBQ0MsZUFBYTtJQUNiLG1CQUFrQixFQVlsQjtJQWREO01BSUUsaUJBQWU7TUFDZixhQUFXO01BQ1gsY0FBWTtNRDJEYixvQkR4SGtCO01DeUhsQixZQUFXO01BQ1gsbUJBQWtCO01BQ2xCLHNCQUFxQjtNQUNyQixvQkFBbUI7TUFDbkIsbUJBQWtCO01BQ2xCLGdCQUFlO01BQ2Ysc0JBQW9CO01BWnBCLGdCQWF3QjtNQVp4QixtQkFWdUI7TUF1QnZCLGlCRDlHYztNRTRDYiw0QkFBMkIsRUFLM0I7TUFiRjtRRDRFRyxvQkRwSWM7UUNxSWQsZURs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LEVBQ3pCO0VBQ0Q7SUFDQyxjQUFZLEVBQ1o7RUFDRDtJQUNDLDJCQUF5QixFQUN6QjtFQUVEO0lBQ0MscUJBQW1CLEVBSW5CO0lBTEQ7TUFHRSxhQUFXLEVBQ1g7RUFFRjtJQUNDLFNBQU8sRUFDUDtFQUVEO0lBQ0MsWUFBVTtJQUNWLGVBQWE7SURoZmIsZ0JDaWZ3QjtJRGhmeEIsZ0JBVnVCLEVDMmZ2QjtFQUVEO0lEcGZDLGdCQ3Fmd0I7SURwZnhCLGdCQVZ1QixFQytmdkI7RUFFRDtJQUNDLGNBQVksRUFDWjtFQUVEO0lBQ0Msa0JBQWdCLEVBQ2hCLEVBQUEiLCJmaWxlIjoicmVzcG9uc2l2ZS13b29jb21tZXJjZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhYmxlIGZpbGUgXG4gKiBwbGFjZSBnbG9iYWwgdmFyaWFibGVzIGhlcmU6XG4gKlxuICogQHBhY2thZ2UgQ2hlZiBHdXRlbmJlcmcgQ2hpbGQgVGhlbWVcbiAqL1xuXG5cbiRmb250LXN0YWNrOiAnTWFucm9wZScsIHNhbnMtc2VyaWY7XG4kaGVhZC1zdGFjazogJ01hbnJvcGUnLCBzYW5zLXNlcmlmO1xuXG4kd2hpdGU6ICNGRkZGRkY7XG4kYmxhY2s6ICMyNTIxMjI7XG4kZ3JleTogI2VhZWFlYTtcbiRkYXJrR3JleTogIzM5MzkzOTtcbiRiZ0dyZXk6ICNGNEY0RjQ7XG4kbGlnaHRHcmV5OiAjRjhGOEY4O1xuXG4keWVsbG93OiAjRkVFNzVBO1xuJHllbGxvdzY0OiAjRkVFRjk1O1xuJG9yYW5nZTogI0ZDNzgzMDtcbiRvcmFuZ2U2NDogI0ZEQTg3QTtcbiRwaW5rOiAjRkRBQUM5O1xuJHBpbms2NDogI0ZFQzhEQztcbiRkYXJrUGluazogI0RBMTU2QTtcbiRidXR0b25QaW5rOiAjRkM3M0E3O1xuJGdyZWVuOiAjNENGNDlCO1xuJGdyZWVuNjQ6ICM4Q0Y4QkY7XG4kYmx1ZTogIzc1RDFGRTtcbiRibHVlNjQ6ICNBNkUxRkU7XG5cbiRiZWlnZTogI2YxZjFmMTtcblxuJGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiRmb3JtLWlucHV0LWNvbG9yOiAjOTk5O1xuJGZvcm0taW5wdXQtaG92ZXItY29sb3I6ICMwMDA7XG5cbiRlcnJvckNvbG9yOiAjYWUyZDMwO1xuJHZhbGlkYXRlZENvbG9yOiAjMTdjMzE3O1xuXG4kcmVndWxhci13ZWlnaHQ6IDQwMDtcbiRtZWRpdW0td2VpZ2h0OjUwMDtcbiRzZW1pYm9sZC13ZWlnaHQ6NjAwO1xuJGJvbGQtd2VpZ2h0OjcwMDtcbiRibGFjay13ZWlnaHQ6IDcwMDtcbiIsIi8qKlxuICogTWl4aW4gZmlsZSBcbiAqIEFsbCBvdXIgY3VzdG9tIG1peGluc1xuICpcbiAqIEBwYWNrYWdlIENoZWYgR3V0ZW5iZXJnIENoaWxkIFRoZW1lXG4gKiBAc2luY2UgMjAxOVxuICovXG5cblxuLy9tYWtlIGZsZXggcm93cyBhIGJpdCBlYXNpZXI6XG5AbWl4aW4gZmxleC1yb3coICRlcXVhbGl6ZTpzdHJldGNoICl7XG4gICAgQGluY2x1ZGUgZGlzcGxheShmbGV4KTtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKCRlcXVhbGl6ZSk7XG59XG5cbi8vbWFrZSBmbGV4IGNvbHVtbnMgYSBiaXQgZWFzaWVyOlxuQG1peGluIGZsZXgtY29sKCAkZXF1YWxpemU6c3RyZXRjaCApe1xuICAgIEBpbmNsdWRlIGRpc3BsYXkoZmxleCk7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcygkZXF1YWxpemUpO1xufVxuXG5cblxuLyogQm94c2l6aW5nIHNob3J0Y3V0OiAqL1xuQG1peGluIGJvcmRlcmJveCgpe1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vKiBUcmFuc2Zvcm0gc2hvcnRjdXRzICovXG5cbi8vIHJvdGF0ZVxuQG1peGluIHJvdGF0ZSggJGRlZyApIHtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCByb3RhdGUoICN7JGRlZ31kZWcgKSApO1xufVxuIFxuLy8gc2NhbGVcbkBtaXhpbiBzY2FsZSggJHNjYWxlICkge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSggJHNjYWxlICkgKTtcbn0gXG5cbi8vIHRyYW5zbGF0ZVxuQG1peGluIHRyYW5zbGF0ZSggJHgsICR5ICkge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGUoICR4LCAkeSApICk7XG59XG5cbi8vIHNrZXdcbkBtaXhpbiBza2V3KCAkeCwgJHkgKSB7XG4gICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNrZXcoICN7JHh9ZGVnLCAjeyR5fWRlZyApICk7XG59XG5cbi8vdHJhbnNmb3JtIG9yaWdpblxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oICRvcmlnaW4gKSB7XG4gICAgbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vKiBTdHlsaW5nIHBsYWNlaG9sZGVyczogKi9cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICYucGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAmOi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG59XG5cblxuLyogUmV0aW5hIGltYWdlczogKi9cbkBtaXhpbiBpbWFnZS0yeCgkaW1hZ2UsICR3aWR0aCwgJGhlaWdodCkge1xuICBAbWVkaWEgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcbiAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLjYvMiksXG4gICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMpLFxuICAgICAgICAgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgICAobWluLXJlc29sdXRpb246IDEuM2RwcHgpIHtcbiAgICAvKiBvbiByZXRpbmEsIHVzZSBpbWFnZSB0aGF0J3Mgc2NhbGVkIGJ5IDIgKi9cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aCAkaGVpZ2h0O1xuICB9XG59XG5cblxuLyogXCJIYXJkXCIgZ3JhZGllbnRzOiAqL1xuQG1peGluIGdyYWRpZW50LWhhcmQoICRzdGFydCwgJGVuZDojZmZmLCAkZGlyZWN0aW9uOlwiaG9yaXpvbnRhbFwiICkge1xuXG4gIEBpZiAkZGlyZWN0aW9uID09IFwiaG9yaXpvbnRhbFwie1xuXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaGFyZC1ob3Jpem9udGFsKCAkc3RhcnQsICRlbmQgKTtcblxuICB9QGVsc2V7XG5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1oYXJkLXZlcnRpY2FsKCAkc3RhcnQsICRlbmQgKTtcblxuICB9XG5cbn1cblxuQG1peGluIGdyYWRpZW50LWhhcmQtaG9yaXpvbnRhbCggJGZyb20sICR0byApIHtcblxuICBiYWNrZ3JvdW5kOiAkdG87XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJGZyb20pLCBjb2xvci1zdG9wKDUwJSwkdG8pLCBjb2xvci1zdG9wKDEwMCUsJHRvKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgJGZyb20gMCUsICRmcm9tIDUwJSwgJHRvIDUwJSwgJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRmcm9tJywgZW5kQ29sb3JzdHI9JyR0bycsR3JhZGllbnRUeXBlPTEgKTtcbn1cblxuQG1peGluIGdyYWRpZW50LWhhcmQtdmVydGljYWwoICRmcm9tLCAkdG8gKSB7XG5cbiAgYmFja2dyb3VuZDogJHRvO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgdG9wIHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJGZyb20pLCBjb2xvci1zdG9wKDUwJSwkdG8pLCBjb2xvci1zdG9wKDEwMCUsJHRvKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tIDAlLCAkZnJvbSA1MCUsICR0byA1MCUsICR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRmcm9tJywgZW5kQ29sb3JzdHI9JyR0bycsR3JhZGllbnRUeXBlPTEgKTtcblxufVxuXG4vKiBSRU0gZm9udCBzaXplczogKi9cbkBmdW5jdGlvbiBjYWxjdWxhdGVSZW0oJHNpemUpIHtcbiAgJHJlbVNpemU6ICRzaXplIC8gMTZweDtcbiAgQHJldHVybiAkcmVtU2l6ZSAqIDFyZW07XG59XG5cbkBtaXhpbiBicmVhay1jb250YWluZXIoKXtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTUwdncgKyA1MCUpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTUwdncgKyA1MCUpO1xufVxuXG5AbWl4aW4gZm9udC1zaXplKCRzaXplKSB7XG4gIGZvbnQtc2l6ZTogJHNpemU7XG4gIGZvbnQtc2l6ZTogY2FsY3VsYXRlUmVtKCRzaXplKTtcbn1cblxuQG1peGluIGJ1dHRvbigpe1xuICBiYWNrZ3JvdW5kOiAkYnV0dG9uUGluaztcbiAgY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDE1cHggNTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSggMjBweCApO1xuICBmb250LXdlaWdodDokYm9sZC13ZWlnaHQ7XG4gICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgYmFja2dyb3VuZDokZGFya1Bpbms7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIG91dGxpbmU6bm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gc2hvcC1idXR0b24oKXtcbiAgYmFja2dyb3VuZDogJGJ1dHRvblBpbms7XG4gIGNvbG9yOiAjRkZGO1xuICAvL3BhZGRpbmc6IDEwcHggMThweCAxM3B4IDE4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czo1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgY29sb3I6I0ZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSggMTZweCApO1xuICBsaW5lLWhlaWdodDoxO1xuICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgIGJhY2tncm91bmQ6JGRhcmtQaW5rO1xuICAgIGNvbG9yOiNGRkY7XG4gICAgb3V0bGluZTpub25lO1xuICB9XG59XG5cbkBtaXhpbiByZW1vdmUtZWxlbWVudCgpe1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCJAaW1wb3J0ICdiYXNlL192YXJpYWJsZXMnO1xuQGltcG9ydCAnYmFzZS9fbWl4aW5zJztcblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTQ0MHB4ICl7XG5cblx0Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuZmxleC12aWV3cG9ydHtcblx0XHRoZWlnaHQ6IDcwMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAxMjIwcHggKXtcblx0Ly8gdWwucHJvZHVjdHMuY29sdW1ucy0xMntcblx0Ly8gXHRsaXtcblx0Ly8gXHRcdGZsZXg6MCAxIGNhbGMoIDUwJSAtIDE1cHgpO1xuXHQvLyBcdFx0bWFyZ2luLXRvcDozMHB4O1xuXHQvLyBcdFx0JjpudGgtY2hpbGQoIDNuKzMgKXtcblx0Ly8gXHRcdFx0bWFyZ2luLXJpZ2h0OjMwcHggIWltcG9ydGFudDtcblx0Ly8gXHRcdH1cblx0Ly8gXHRcdCY6bnRoLWNoaWxkKCBldmVuICl7XG5cdC8vIFx0XHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0fVxuXHQvLyB9XG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhe1xuXHRcdGZsZXg6IDAgMSAyNTJweDtcblx0fVxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAudmFyaWF0aW9uc3tcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHR9XG5cdC5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC11c3Atd3JhcHBlcntcblx0XHRtYXJnaW4tdG9wOiA1MHB4O1xuXHR9XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAucmVsYXRlZC5wcm9kdWN0c3tcblx0XHRtYXJnaW4tYm90dG9tOiAxMjBweDtcblx0fVxuXG5cdC5zZWN0aW9uLmN0YV93aXRoX2Zvcm1fYmxvY2t7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTIwcHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTA4MHB4ICl7XG5cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudC5zaG9ydGNvZGUgLmNvbnRhaW5lciAueXdyYXEtZm9ybS10YWJsZS13cmFwcGVye1xuXHRcdCN5aXRoLXl3cmFxLWZvcm17XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHR9XG5cdFx0Lmdmb3JtX3dyYXBwZXJ7XG5cdFx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHR9XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIge1xuXHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnl7XG5cdFx0bWFyZ2luLXJpZ2h0OiA1MHB4O1xuXHRcdH1cblx0XHQuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5e1xuXHRcdFx0ZmxleDogMCAxIDUwJTtcblx0XHR9XG5cdH1cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkge1xuXHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9ue1xuXHRcdFx0bWFyZ2luOiAzMHB4IDAgMzBweCAwO1xuXHRcdH1cblx0XHQudmFyaWF0aW9ucyAuc2VsZWN0LXdyYXBwZXIgc2VsZWN0e1xuXHRcdFx0cGFkZGluZzogMTNweCA3MHB4IDEzcHggMjVweDtcblx0XHR9XG5cdH1cblxuXHQuY2hlY2tvdXQud29vY29tbWVyY2UtY2hlY2tvdXQgLmV4dHJhLXBheW1lbnQtd3JhcHBlcntcblx0XHRmbGV4OiAwIDEgMzcwcHg7XG5cdH1cblx0XG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5pbm5lci1zaWRlYmFye1xuXHRcdHBvc2l0aW9uOmluaXRpYWw7XG5cdFx0dG9wOjA7XG5cdH1cblxuXHQuc2hvdy1maWx0ZXItYnRuLXdyYXBwZXJ7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRtYXJnaW46IDBweCAwIDMwcHg7XG5cdFx0LmJ1dHRvbi1hbHR7XG5cdFx0XHRhcHBlYXJhbmNlOm5vbmU7XG5cdFx0XHRib3JkZXI6bm9uZTtcblx0XHRcdG91dGxpbmU6bm9uZTtcblx0XHRcdEBpbmNsdWRlIGJ1dHRvbigpO1xuXHRcdFx0cGFkZGluZzogOXB4IDUwcHggMTBweCA1MHB4O1xuXHRcdFx0Ly9zaGFkb3cgdG9wIFxuXHRcdFx0JjphZnRlcntcblx0XHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zaG9wLWNvbnRlbnQtYXJlYSAud29vY29tbWVyY2UtcHJvZHVjdHMtaGVhZGVye1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cblx0XG5cdC5tYWluLXNob3Atd3JhcHBlcnsgXG5cdFx0LmNvbnRhaW5lcntcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdH1cblx0XHQuc2lkZWJhci1hcmVhe1xuXHRcdFx0cG9zaXRpb246Zml4ZWQ7XG5cdFx0XHR0b3A6MDtcblx0XHRcdGJvdHRvbTowO1xuXHRcdFx0bGVmdDowO1xuXHRcdFx0dHJhbnNmb3JtOnRyYW5zbGF0ZVgoIC0xMTAlICk7XG5cdFx0XHR0cmFuc2l0aW9uOi4zcztcblx0XHRcdGhlaWdodDoxMDAlO1xuXHRcdFx0d2lkdGg6NTAlO1xuXHRcdFx0ei1pbmRleDogOTk5OTtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0LmlubmVyLXNpZGViYXJ7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0YmFja2dyb3VuZDojRkZGO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDo1MHB4O1xuXHRcdFx0fVxuXHRcdFx0LnNob3Atc2lkZWJhcntcblx0XHRcdFx0aGVpZ2h0OmNhbGMoIDEwMCUgLSA5MHB4ICk7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MTBweDtcblx0XHRcdFx0cGFkZGluZzozMHB4O1xuXHRcdFx0XHRvdmVyZmxvdy15OnNjcm9sbDtcblx0XHRcdH1cblx0XHRcdCY6YWZ0ZXJ7XG5cdFx0XHRcdGNvbnRlbnQ6XCJcIjtcblx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKCAkYmxhY2ssIC44ICk7XG5cdFx0XHRcdHotaW5kZXg6IC0xMDtcblx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdHRvcDowO1xuXHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdHdpZHRoOjEwMHZ3O1xuXHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0dHJhbnNpdGlvbjouM3M7XG5cdFx0XHRcdHRyYW5zZm9ybTp0cmFuc2xhdGVYKCAtMTAwJSApO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLnRvZ2dsZS1maWx0ZXItYXJlYXtcblx0XHRcdC5zaWRlYmFyLWFyZWF7XG5cdFx0XHRcdHRyYW5zZm9ybTpub25lO1xuXHRcdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRcdHRyYW5zZm9ybTpub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQvLyB1bC5wcm9kdWN0cy5jb2x1bW5zLTEye1xuXHQvLyBcdGxpe1xuXHQvLyBcdFx0ZmxleDowIDEgY2FsYyggMzMuMzMlIC0gMjBweCk7XG5cdC8vIFx0XHQmOm50aC1jaGlsZCggZXZlbiApe1xuXHQvLyBcdFx0XHRtYXJnaW4tcmlnaHQ6MzBweCAhaW1wb3J0YW50O1xuXHQvLyBcdFx0fVxuXHQvLyBcdFx0JjpudGgtY2hpbGQoIDNuKzMgKXtcblx0Ly8gXHRcdFx0bWFyZ2luLXJpZ2h0OjBweCAhaW1wb3J0YW50O1xuXHQvLyBcdFx0fVxuXHQvLyBcdH1cblx0Ly8gfVxuXG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5jbG9zZS1vdmVybGF5LCAubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYSAuYnV0dG9uLWFsdHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdHdpZHRoOjEwMCU7XG5cdH1cblxuXHQubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYSAuY2xvc2Utb3ZlcmxheXtcblx0XHRtYXJnaW46MDtcblx0XHR3aWR0aDogNDJweDtcblx0ICAgIGhlaWdodDogNDJweDtcblx0ICAgIGJhY2tncm91bmQ6ICRidXR0b25QaW5rO1xuXHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXHQgICAgdHJhbnNpdGlvbjogLjNzO1xuXHRcdGNvbG9yOiAkYnV0dG9uUGluaztcblx0XHRib3JkZXI6bm9uZTtcblx0XHRvdXRsaW5lOm5vbmU7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0dG9wOjIwcHg7XG5cdFx0cmlnaHQ6MzBweDtcblx0XHR0cmFuc2l0aW9uOi4zcztcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0JjphZnRlcntcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZXZyb24tcmlnaHQuc3ZnKTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMjBweDtcblx0XHRcdHRvcDogNHB4O1xuXHRcdFx0cmlnaHQ6IDdweDtcblx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0ICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cdFx0fVxuXHRcdCY6aG92ZXJ7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFya1Bpbms7XG5cdFx0XHRjb2xvcjogJGRhcmtQaW5rO1xuXHRcdH1cblx0fVxuXG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5idXR0b24tYWx0e1xuXHRcdEBpbmNsdWRlIGJ1dHRvbigpO1xuXHRcdGJvcmRlcjpub25lO1xuXHRcdG91dGxpbmU6bm9uZTtcblx0XHRtYXJnaW46MTVweCAzMHB4IDAgMzBweDtcblx0XHR3aWR0aDpjYWxjKCAxMDAlIC0gNjBweCApO1xuXHRcdC8vc2hhZG93XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCY6YmVmb3Jle1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdGJveC1zaGFkb3c6IDBweCAtNHB4IDZweCAwcHggcmdiYSgxNDUsMTQ1LDE0NSwwLjIpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMjVweDtcblx0XHRcdGxlZnQ6IC0zMHB4O1xuXHRcdFx0d2lkdGg6IGNhbGMoIDEwMCUgKyA2MHB4OyApO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0fVxuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0ICNtYWluLXdyYXBwZXJ7XG5cdFx0cGFkZGluZy10b3A6MTQ1cHg7XG5cdH1cblxuXHQuc2luZ2xlLXByb2R1Y3QgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IC5zdW1tYXJ5IC5zaW1wbGUtaW5uZXItZm9ybXtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IGZvcm0gLnl3YXBvX29wdGlvbnNfY29udGFpbmVyIHNlbGVjdHtcblx0XHRwYWRkaW5nOiAxM3B4IDcwcHggMTNweCAyNXB4O1xuXHR9XG5cdGJvZHkuc2luZ2xlLWJsb2cubm8taGVybyAuc2luZ2xlLWJsb2cgLmNvbnRhaW5lcm8gLnNlY3Rpb24gLmNvbnRhaW5lciwgYm9keS5zaW5nbGUtYmxvZy5uby1oZXJvIC5zaW5nbGUtYmxvZyAuc21hbGwtY29udGFpbmVyLCBib2R5LnNpbmdsZS1ibG9nLm5vLWhlcm8gLnNpbmdsZS1ibG9nIC5jb250YWluZXJ7XG5cdFx0cGFkZGluZzogMCA0JTtcblx0fVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDkwMHB4ICl7XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAucmVsYXRlZC5wcm9kdWN0cyB1bCBsaXtcblx0XHRtYXJnaW4tcmlnaHQ6MTJweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDkwMHB4ICl7XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnl7XG5cdFx0ZmxleDowIDAgMTAwJTtcblx0XHRtYXJnaW46MCAwIDMwcHggMDtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5e1xuXHRcdGZsZXg6MCAwIDEwMCU7XG5cdFx0bWFyZ2luOjAgMCAzMHB4IDA7XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLndjLXRhYnMtd3JhcHBlcntcblx0XHRmbGV4OjAgMCAxMDAlO1xuXHRcdG1hcmdpbjowIDAgMzBweCAwO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3Rze1xuXHRcdGZsZXg6MCAwIDEwMCU7XG5cdH1cblxuXHQud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5mbGV4LXZpZXdwb3J0IGZpZ3VyZSAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X19pbWFnZXtcblx0XHRoZWlnaHQ6YXV0bztcblx0fVxuXG5cdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLmZsZXgtdmlld3BvcnR7XG5cdFx0aGVpZ2h0OmF1dG8gIWltcG9ydGFudDtcblx0fVxuXG5cdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLmZsZXgtdmlld3BvcnQgZmlndXJlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlfX2ltYWdle1xuXHRcdGhlaWdodDogNTUwcHg7XG5cdFx0bWF4LWhlaWdodDogODB2aDtcblx0fVxuXHRcblx0Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLmZsZXgtY29udHJvbC10aHVtYnMgbGl7XG5cdFx0Ly8gd2lkdGg6Y2FsYyggMTIuNSUgLSAxMnB4KTtcblx0XHQvLyAmOm50aC1jaGlsZCggOG4rOCApe1xuXHRcdC8vIFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0Ly8gfVxuXHRcdHdpZHRoOjEwMHB4O1xuXHR9XG5cblxuXHQud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1ic3tcblx0XHRsaXtcblx0XHRcdHdpZHRoOjUwcHg7XG5cdFx0XHRpbWd7XG5cdFx0XHRcdGhlaWdodDphdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZCggNG4rNCApe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6MTVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2UgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24uYnV0dG9ue1xuXHRcdHBhZGRpbmc6IDE2cHggNjBweCAxOHB4IDMwcHggIWltcG9ydGFudDtcblx0fVxuXG5cdC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LCAud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0e1xuXHRcdGZsZXg6IDAgMSBjYWxjKCAzMyUgLSAxMnB4KTtcblx0XHQmOm50aC1jaGlsZCg0bis0KXtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgzbiszKXtcblx0XHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJze1xuXHRcdGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0Lndvb2NvbW1lcmNlIHVsLmZsZXgtZGlyZWN0aW9uLW5hdntcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHR9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogODAwcHggKXtcblxuXHQuY2hlY2tvdXQud29vY29tbWVyY2UtY2hlY2tvdXQgLmV4dHJhLXBheW1lbnQtd3JhcHBlcntcblx0XHRmbGV4OjAgMCAxMDAlO1xuXHR9XG5cblx0LmNoZWNrb3V0Lndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldHtcblx0XHRmbGV4OjAgMCAxMDAlO1xuXHRcdG1hcmdpbjowO1xuXHR9XG5cblx0Lndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdHtcblx0XHRtaW4td2lkdGg6YXV0bztcblx0fVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDc2OHB4ICl7XG5cdC5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC11c3Atd3JhcHBlcntcblx0XHRwYWRkaW5nOjE1cHg7XG5cdH1cblxuXHQucHJvZHVjdC1wYXJ0IC5wYXJ0LXRpdGxlLCAucHJvZHVjdC1wYXJ0OnZpc2l0ZWQgLnBhcnQtdGl0bGV7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKCAyMHB4ICk7XG5cdH1cblxuXHQucHJvZHVjdC1wYXJ0IC5wYXJ0LXRpdGxlLCAucHJvZHVjdC1wYXJ0OnZpc2l0ZWQgLnBhcnQtdGl0bGV7XG5cdFx0cGFkZGluZzowIDVweDtcblx0fVxuXG5cblx0dWwucHJvZHVjdHMuY29sdW1ucy0xMiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMTJ7XG5cdFx0bGkucHJvZHVjdHtcblx0XHRcdGZsZXg6MCAxIGNhbGMoIDUwJSAtIDhweCk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDE2cHg7XG5cdFx0XHQmOm50aC1jaGlsZCggM24rMyApe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6MTZweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoIGV2ZW4gKXtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OjAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3R7XG5cdFx0cGFkZGluZy1yaWdodDo1MHB4O1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMTRweCApO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3RzIHVsIGxpe1xuXHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdFx0JjpudGgtY2hpbGQoIDNuKzMgKXtcblx0XHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3RzIHVsIGxpe1xuXHRcdG1hcmdpbi1yaWdodDoxMnB4ICFpbXBvcnRhbnQ7XG5cdFx0ZmxleDowIDEgY2FsYyggNTAlIC0gNnB4ICk7XG5cdFx0bWFyZ2luLXJpZ2h0OjEycHggIWltcG9ydGFudDtcblx0XHQmOm50aC1jaGlsZCggM24rMyApe1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjEycHggIWltcG9ydGFudDtcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoIGV2ZW4gKXtcblx0XHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3Rze1xuXHRcdG1hcmdpbi1ib3R0b206MTAwcHg7XG5cdH1cblxuXHQubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYXtcblx0XHR3aWR0aDoxMDAlO1xuXHR9XG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5zaG9wLXNpZGViYXJ7XG5cdFx0cGFkZGluZzozMHB4IDE1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogNjAwcHggKXtcblx0Ly8gLnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLnByb2R1Y3RfdGl0bGV7XG5cdC8vIFx0QGluY2x1ZGUgZm9udC1zaXplKCAzMHB4ICk7XG5cdC8vIH1cblx0Ly8gLnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLnByaWNle1xuXHQvLyBcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMjBweCApO1xuXHQvLyB9XG5cblx0Ly8gLnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcHtcblx0Ly8gXHRAaW5jbHVkZSBmb250LXNpemUoIDE2cHggKTtcblx0Ly8gfVxuXG5cdC8vIC53b29jb21tZXJjZSAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbi5idXR0b257XG5cdC8vIFx0QGluY2x1ZGUgZm9udC1zaXplKCAxNXB4ICk7XG5cdC8vIH1cblxuXHQvLyAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgLmNvdXBvbiAuaW5wdXQtdGV4dHtcblx0Ly8gXHR3aWR0aDoxMDAlO1xuXHQvLyBcdG1hcmdpbi1ib3R0b206MTVweDtcblx0Ly8gfVxuXG5cdC8vIC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCsuYnV0dG9ue1xuXHQvLyBcdHdpZHRoOjEwMCU7XG5cdC8vIFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHQvLyB9XG5cblx0Ly8gLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uLCAud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbntcblx0Ly8gXHRwYWRkaW5nOjA7XG5cdC8vIH1cblxuXHQvLyAubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYXtcblx0Ly8gXHR3aWR0aDoxMDAlO1xuXHQvLyB9XG5cblx0Ly8gdWwucHJvZHVjdHMuY29sdW1ucy0xMiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMTJ7XG5cdC8vIFx0bGkucHJvZHVjdHtcblx0Ly8gXHRcdGZsZXg6MCAwIDEwMCU7XG5cdC8vIFx0XHRtYXJnaW46MCAwIDMwcHggMDtcblx0Ly8gXHRcdCY6bnRoLWNoaWxkKCAzbiszICl7XG5cdC8vIFx0XHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0XHQmOm50aC1jaGlsZCggZXZlbiApe1xuXHQvLyBcdFx0XHRtYXJnaW4tcmlnaHQ6MCAhaW1wb3J0YW50O1xuXHQvLyBcdFx0fVxuXHQvLyBcdFx0JjpsYXN0LWNoaWxke1xuXHQvLyBcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdC8vIFx0XHR9XG5cdFx0XHRcblx0Ly8gXHR9XG5cdC8vIH1cblxuXHQud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWJyZWFkY3J1bWJ7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKCAxNHB4ICk7XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAudmFyaWF0aW9uc3tcblx0XHRtYXgtd2lkdGg6bm9uZTtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC52YXJpYXRpb25zIC5zZWxlY3Qtd3JhcHBlcntcblx0XHRtYXgtd2lkdGg6bm9uZTtcblx0XHRzZWxlY3R7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoIDE2cHggKTtcblx0XHR9XG5cdH1cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDIwcHggKTtcblx0fVxuXHQud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRoLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRke1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMThweCApO1xuXHR9XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAud2MtdGFicy13cmFwcGVyIC53Yy10YWIgcHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDE4cHggKTtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC5wcm9kdWN0X3RpdGxle1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMzBweCApO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLnByaWNlIC5iaWctcHJpY2Utd3JhcHBlciAuYW1vdW50e1xuXHRcdGZvbnQtc2l6ZTogMWVtO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IGZvcm0gLnl3YXBvX29wdGlvbnNfY29udGFpbmVyIHNlbGVjdHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDE2cHggKTtcblx0fVxuXG5cdC5zaW5nbGUtcHJvZHVjdCBmb3JtIC55aXRoX3dhcG9fZ3JvdXBzX2NvbnRhaW5lcntcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0fVxuXG5cdC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnR7XG5cdFx0bWF4LXdpZHRoOjEwMCU7XG5cdH1cblxuXHQucHJpY2UtdHh0e1xuXHRcdGZvbnQtc2l6ZToxZW07XG5cdH1cblxuXHQud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWx7XG5cdFx0Ym9yZGVyOm5vbmU7XG5cdFx0bGl7XG5cdFx0XHRib3JkZXI6bm9uZTtcblx0XHR9XG5cdH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiA1NTBweCApe1xuXHQud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3QgLnlpdGgteXdyYXEtYWRkLXRvLXF1b3Rle1xuXHRcdHBvc2l0aW9uOmluaXRpYWw7XG5cdFx0dHJhbnNmb3JtOm5vbmU7XG5cdFx0ZmxvYXQ6bm9uZTtcblx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogNDgwcHggKXtcblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnJlbGF0ZWQucHJvZHVjdHMgdWwgbGl7XG5cdFx0ZmxleDowIDAgMTAwJTtcblx0XHRtYXJnaW46MCAwIDMwcHggMDtcblx0XHQmOmxhc3QtY2hpbGR7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0fVxuXHR9XG5cblx0Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuZmxleC12aWV3cG9ydHtcblx0XHRoZWlnaHQ6IDM3MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0LmNhcnQtbWVudXtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjE1cHg7XG5cdFx0LmJ1dHRvbnN7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDMwcHggMTMwcHggMzBweFxuXHRcdH1cblx0fSBcblx0XG5cdC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdCAueWl0aC15d3JhcS1hZGQtdG8tcXVvdGV7XG5cdFx0cG9zaXRpb246aW5pdGlhbDtcblx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdH1cblxuXHRib2R5LnNpbmdsZS1ibG9nLm5vLWhlcm8gLnNpbmdsZS1ibG9nIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrIC5wcm9kdWN0LXBhcnQsIGJvZHkuc2luZ2xlLWJsb2cubm8taGVybyAuc2luZ2xlLWJsb2cgLmJsb2NrLmNvbGxlY3Rpb24tb3ZlcnZpZXctYmxvY2sgLnByb2R1Y3QtcGFydDp2aXNpdGVkIHtcblx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAzODBweCApe1xuXHR1bC5wcm9kdWN0cy5jb2x1bW5zLTEyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0xMntcblx0XHRsaS5wcm9kdWN0e1xuXHRcdFx0ZmxleDowIDEgMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHQmOm50aC1jaGlsZCggM24rMyApe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6MCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoIGV2ZW4gKXtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OjAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0LXBhcnQgLnBhcnQtdGl0bGUsIC5wcm9kdWN0LXBhcnQ6dmlzaXRlZCAucGFydC10aXRsZXtcblx0XHRtaW4taGVpZ2h0OmluaXRpYWw7XG5cdH1cbn1cblxuLy9BbmRyb2lkXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAzNjBweCApe1xuXHRib2R5LnN0b3AtbW9iaWxlLXNjcm9sbHtcblx0XHRvdmVyZmxvdzpoaWRkZW4gIWltcG9ydGFudDtcblx0fVxuXHQuY2FydC1tZW51LmFjdGl2ZXtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdH1cblx0LmNhcnQtbWVudSAuY2FydC1hamF4LXdyYXBwZXIgLmhlYWRlci13aWRnZXR7XG5cdFx0cGFkZGluZy1ib3R0b206MTVweDtcblx0XHRtYXgtaGVpZ2h0OmNhbGMoIDEwMHZoIC0gMjQwcHggKTtcblx0XHRvdmVyZmxvdy15OnNjcm9sbDtcblx0XHRvdmVyZmxvdy14OmhpZGRlbjtcblx0fVxuXHQuY2FydC1tZW51IC5idXR0b25ze1xuXHRcdHBhZGRpbmc6IDE1cHggNCUgMTVweCA0JTtcblx0XHRwb3NpdGlvbjpmaXhlZDtcblx0fVxuXHQuY2FydC1tZW51e1xuXHRcdHBhZGRpbmctYm90dG9tOjEwMHB4O1xuXHR9XG5cdC5jYXJ0LW1lbnUgLmNsb3NlLWNhcnQtbWVudXtcblx0XHRyaWdodDo0JTtcblx0XHR0b3A6MjZweDtcblx0fVxuXHQuY2FydC1tZW51IC5lZGl0LXdpbmtlbG1hbmR7XG5cdFx0Zm9udC1zaXplOjE2cHg7XG5cdH1cblx0LmJ1dHRvbi53Yy1iYWNrd2FyZCwgLndvb2NvbW1lcmNlIGEuYnV0dG9uLCAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLCAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbntcblx0XHRmb250LXNpemU6MTZweDtcblx0fVxuXHQuY2FydC1tZW51IC5idXR0b257XG5cdFx0Zm9udC1zaXplOjE2cHggIWltcG9ydGFudDtcblx0fVxuXHQuY2FydC1tZW51IC5jYXJ0LWFqYXgtd3JhcHBlcntcblx0XHRwYWRkaW5nOjAgNCU7XG5cdH1cblx0LmNhcnQtbWVudSAuY2FydC10aXRsZXtcblx0XHRwYWRkaW5nOjMwcHggOTBweCAzMHB4IDQlO1xuXHR9XG5cdFxuXHQuY2FydC1tZW51IC5jYXJ0LWFqYXgtd3JhcHBlciAueWl0aC15d3JhcS1saXN0LXdyYXBwZXIgdWwueWl0aC15d3JhcS1saXN0IGxpe1xuXHRcdHBhZGRpbmctYm90dG9tOjUwcHg7XG5cdFx0c21hbGx7XG5cdFx0XHRib3R0b206NTBweDtcblx0XHR9XG5cdH1cblx0LmNhcnQtbWVudSAucXVhbnRpdHl7XG5cdFx0cmlnaHQ6MDtcblx0fVxuXG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnQuc2hvcnRjb2RlIC5jb250YWluZXIgLndvb2NvbW1lcmNlLnl3cmFxLXdyYXBwZXIgI3lpdGgteXdyYXEtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXF1YW50aXR5IGlucHV0e1xuXHRcdHdpZHRoOjUwcHg7XG5cdFx0dGV4dC1pbmRlbnQ6MDtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDE2cHggKTtcblx0fVxuXG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnQuc2hvcnRjb2RlIC5jb250YWluZXIgLndvb2NvbW1lcmNlLnl3cmFxLXdyYXBwZXIgI3lpdGgteXdyYXEtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LW5hbWUgYXtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDE2cHggKTtcblx0fVxuXG5cdCN5aXRoLXl3cmFxLWZvcm0gdGFibGUuY2FydCAucHJvZHVjdC10aHVtYm5haWx7XG5cdFx0ZGlzcGxheTpub25lO1xuXHR9XG5cblx0dGFibGUuc2hvcF90YWJsZS55d3JhcV9yZXNwb25zaXZlIC5wcm9kdWN0LXJlbW92ZXtcblx0XHRwYWRkaW5nOjEwcHggNXB4O1xuXHR9XG5cdFxufSJdfQ== */
