/**
 * 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 {
      -webkit-appearance: none;
              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: 0.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: 0.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: 0.3s;
    color: #FC73A7;
    border: none;
    outline: none;
    display: inline-block;
    position: absolute;
    top: 20px;
    right: 30px;
    transition: 0.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; }
  .yith-wapo-addon.yith-wapo-addon-type-select .options select {
    padding: 13px 70px 13px 25px; } }

@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; }
  .summary #yith-wapo-container {
    max-width: none; }
  .yith-wapo-addon.yith-wapo-addon-type-select .options select {
    font-size: 16px;
    font-size: 1rem; } }

@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; } }

@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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJyZXNwb25zaXZlLXdvb2NvbW1lcmNlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUNMSDs7Ozs7O0dBTUc7QUFtQkgseUJBQXlCO0FBUXpCLHlCQUF5QjtBQWdDekIsMkJBQTJCO0FBUzNCLG9CQUFvQjtBQWNwQix1QkFBdUI7QUF3Q3ZCLHFCQUFxQjtBQzdIckI7RUFDQztJQUNDLHlCQUF3QixFQUN4QixFQUFBOztBQUdGO0VBYUM7SUFDQyxvQkFBZTtRQUFmLGdCQUFlLEVBQ2Y7RUFDRDtJQUNDLG9CQUFtQixFQUNuQjtFQUNEO0lBQ0MsaUJBQWdCLEVBQ2hCO0VBQ0Q7SUFDQyxxQkFBb0IsRUFDcEI7RUFFRDtJQUNDLHFCQUFvQixFQUNwQixFQUFBOztBQUdGO0VBQ0M7SUFFRSxnQkFBZTtJQUNmLG1CQUFjO1FBQWQsZUFBYyxFQUNkO0VBSkY7SUFNRSxtQkFBYztRQUFkLGVBQWMsRUFDZDtFQUdGO0lBRUUsbUJBQWtCLEVBQ2xCO0VBSEY7SUFLRSxrQkFBYTtRQUFiLGNBQWEsRUFDYjtFQUVGO0lBRUUsc0JBQXFCLEVBQ3JCO0VBSEY7SUFLRSw2QkFBNEIsRUFDNUI7RUFHRjtJQUNDLG9CQUFlO1FBQWYsZ0JBQWUsRUFDZjtFQUVEO0lBQ0Msa0JBQWlCO0lBQ2pCLE9BQU0sRUFDTjtFQUVEO0lBQ0MsZUFBYztJQUNkLG1CQUFrQixFQVlsQjtJQWREO01BSUUseUJBQWdCO2NBQWhCLGlCQUFnQjtNQUNoQixhQUFZO01BQ1osY0FBYTtNRDhEZCxvQkR4SGtCO01DeUhsQixZQUFXO01BQ1gsbUJBQWtCO01BQ2xCLHNCQUFxQjtNQUNyQixvQkFBbUI7TUFDbkIsbUJBQWtCO01BQ2xCLGdCQUFlO01BQ2Ysc0JBQW9CO01BWnBCLGdCQWF3QjtNQVp4QixtQkFWdUI7TUF1QnZCLGlCRDlHYztNRXlDYiw0QkFBMkIsRUFLM0I7TUFiRjtRRCtFRyxvQkRwSWM7UUNxSWQsZURsSlc7UUNtSlgsY0FBWSxFQUNiO01DbEZGO1FBV0csY0FBYSxFQUNiO0VBSUg7SUFDQyxvQkFBbUIsRUFDbkI7RUFFRDtJQUVFLG1CQUFrQixFQUNsQjtFQUhGO0lBS0UsZ0JBQWU7SUFDZixPQUFNO0lBQ04sVUFBUztJQUNULFFBQU87SUFDUCw2QkFBNEI7SUFDNUIsaUJBQWdCO0lBQ2hCLGFBQVk7SUFDWixXQUFVO0lBQ1YsY0FBYTtJQUNiLFVBQVMsRUEwQlQ7SUF4Q0Y7TUFnQkcsbUJBQWtCO01BQ2xCLGFBQVk7TUFDWixXQUFVO01BQ1YsaUJBQWdCO01BQ2hCLGtCQUFpQixFQUNqQjtJQXJCSDtNQXVCRywwQkFBeUI7TUFDekIsb0JBQW1CO01BQ25CLGNBQWE7TUFDYixtQkFBa0IsRUFDbEI7SUEzQkg7TUE2QkcsWUFBVztNQUNYLGtDRm5IVztNRW9IWCxhQUFZO01BQ1osbUJBQWtCO01BQ2xCLE9BQU07TUFDTixRQUFPO01BQ1AsYUFBWTtNQUNaLGFBQVk7TUFDWixpQkFBZ0I7TUFDaEIsNkJBQTRCLEVBQzVCO0VBdkNIO0lBNENHLGdCQUFlLEVBSWY7SUFoREg7TUE4Q0ksZ0JBQWUsRUFDZjtFQWlCSjs7SUFFQyxlQUFjO0lBQ2QsWUFBVyxFQUNYO0VBRUQ7SUFDQyxVQUFTO0lBQ1QsWUFBVztJQUNYLGFBQVk7SUFDWixvQkZsSmtCO0lFbUpsQixtQkFBa0I7SUFDbEIsaUJBQWdCO0lBQ2hCLGVGckprQjtJRXNKbEIsYUFBWTtJQUNaLGNBQWE7SUFDYixzQkFBcUI7SUFDckIsbUJBQWtCO0lBQ2xCLFVBQVM7SUFDVCxZQUFXO0lBQ1gsaUJBQWdCO0lBQ2hCLFdBQVU7SUFDVixXQUFVLEVBa0JWO0lBbENEO01Ba0JFLFlBQVc7TUFDWCx5REFBd0Q7TUFDeEQseUJBQXdCO01BQ3hCLDZCQUE0QjtNQUM1QixZQUFXO01BQ1gsYUFBWTtNQUNaLFNBQVE7TUFDUixXQUFVO01BQ1YsbUJBQWtCO01BQ2xCLHNCQUFxQjtNQUNyQiwwQkFBeUIsRUFDekI7SUE3QkY7TUErQkUsb0JGOUtlO01FK0tmLGVGL0tlLEVFZ0xmO0VBR0Y7SUQxREMsb0JEeEhrQjtJQ3lIbEIsWUFBVztJQUNYLG1CQUFrQjtJQUNsQixzQkFBcUI7SUFDckIsb0JBQW1CO0lBQ25CLG1CQUFrQjtJQUNsQixnQkFBZTtJQUNmLHNCQUFvQjtJQVpwQixnQkFhd0I7SUFaeEIsbUJBVnVCO0lBdUJ2QixpQkQ5R2M7SUVpS2QsYUFBWTtJQUNaLGNBQWE7SUFDYix5QkFBd0I7SUFDeEIseUJBQXdCO0lBRXhCLG1CQUFrQixFQWFsQjtJQXBCRDtNRC9DRyxvQkRwSWM7TUNxSWQsZURsSlc7TUNtSlgsY0FBWSxFQUNiO0lDNENGO01BU0UsWUFBVztNQUNYLG9CRjFNWTtNRTJNWixzREFBcUQ7TUFDckQsbUJBQWtCO01BQ2xCLFdBQVU7TUFDVixZQUFXO01BQ1gseUJBQXdCO01BQ3hCLGFBQVk7TUFDWixzQkFBcUI7TUFDckIsWUFBVyxFQUNYO0VBR0Y7SUFDQyxtQkFBa0IsRUFDbEI7RUFFRDtJQUNDLGVBQWMsRUFDZDtFQUVEO0lBQ0MsZUFBYyxFQUNkO0VBRUQ7SUFDQyw2QkFBNEIsRUFDNUI7RUFFRDtJQUNDLDZCQUE0QixFQUM1QixFQUFBOztBQUdGO0VBQ0M7SUFDQyw4QkFBNkIsRUFDN0IsRUFBQTs7QUFHRjtFQUNDO0lBQ0MsbUJBQWM7UUFBZCxlQUFjO0lBQ2QsbUJBQWtCLEVBQ2xCO0VBRUQ7SUFDQyxtQkFBYztRQUFkLGVBQWM7SUFDZCxtQkFBa0IsRUFDbEI7RUFFRDtJQUNDLG1CQUFjO1FBQWQsZUFBYztJQUNkLG1CQUFrQixFQUNsQjtFQUVEO0lBQ0MsbUJBQWM7UUFBZCxlQUFjLEVBQ2Q7RUFFRDs7OztJQUlDLGFBQVksRUFDWjtFQUVEO0lBQ0Msd0JBQXVCLEVBQ3ZCO0VBRUQ7Ozs7SUFJQyxjQUFhO0lBQ2IsaUJBQWdCLEVBQ2hCO0VBRUQ7SUFLQyxhQUFZLEVBQ1o7RUFFRDtJQUVFLFlBQVcsRUFPWDtJQVRGO01BSUcsd0JBQXVCLEVBQ3ZCO0lBTEg7TUFPRyxtQkFBa0IsRUFDbEI7RUFJSDtJQUNDLHdDQUF1QyxFQUN2QztFQUVEOztJQUVDLCtCQUEwQjtRQUExQiwyQkFBMEIsRUFPMUI7SUFURDs7TUFJRSw4QkFBNkIsRUFDN0I7SUFMRjs7TUFPRSwyQkFBMEIsRUFDMUI7RUFHRjtJQUNDLHlCQUF3QixFQUN4QjtFQUVEO0lBQ0MsZUFBYyxFQUNkLEVBQUE7O0FBR0Y7RUFDQztJQUNDLG1CQUFjO1FBQWQsZUFBYyxFQUNkO0VBRUQ7SUFDQyxtQkFBYztRQUFkLGVBQWM7SUFDZCxVQUFTLEVBQ1Q7RUFFRDtJQUNDLGdCQUFlLEVBQ2YsRUFBQTs7QUFHRjtFQUNDO0lBQ0MsY0FBYSxFQUNiO0VBRUQ7O0lEdk5DLGdCQ3lOdUI7SUR4TnZCLG1CQVZ1QixFQ21PdkI7RUFFRDs7SUFFQyxlQUFjLEVBQ2Q7RUFFRDs7SUFHRSw4QkFBeUI7UUFBekIsMEJBQXlCO0lBQ3pCLG1CQUFrQixFQU9sQjtJQVhGOztNQU1HLDhCQUE2QixFQUM3QjtJQVBIOztNQVNHLDJCQUEwQixFQUMxQjtFQUlIO0lBQ0Msb0JBQW1CO0lEaFBuQixnQkNpUHVCO0lEaFB2QixvQkFWdUIsRUMyUHZCO0VBRUQ7SUFDQywyQkFBMEIsRUFJMUI7SUFMRDtNQUdFLDJCQUEwQixFQUMxQjtFQUdGO0lBQ0MsOEJBQTZCO0lBQzdCLDhCQUF5QjtRQUF6QiwwQkFBeUI7SUFDekIsOEJBQTZCLEVBTzdCO0lBVkQ7TUFLRSw4QkFBNkIsRUFDN0I7SUFORjtNQVFFLDJCQUEwQixFQUMxQjtFQUdGO0lBQ0MscUJBQW9CLEVBQ3BCO0VBRUQ7SUFDQyxZQUFXLEVBQ1g7RUFDRDtJQUNDLG1CQUFrQixFQUNsQixFQUFBOztBQUdGO0VBbURDO0lEdFVDLGdCQ3VVdUI7SUR0VXZCLG9CQVZ1QixFQ2lWdkI7RUFFRDtJQUNDLGdCQUFlLEVBQ2Y7RUFFRDs7Ozs7SUFLQyxnQkFBZSxFQUlmO0lBVEQ7Ozs7O01EOVVDLGdCQ3FWd0I7TURwVnhCLGdCQVZ1QixFQytWdEI7RUFFRjs7Ozs7SUR4VkMsZ0JDNlZ1QjtJRDVWdkIsbUJBVnVCLEVDdVd2QjtFQUNEOztJRC9WQyxnQkNpV3VCO0lEaFd2QixvQkFWdUIsRUMyV3ZCO0VBQ0Q7SURuV0MsZ0JDb1d1QjtJRG5XdkIsb0JBVnVCLEVDOFd2QjtFQUVEOzs7O0lEdldDLGdCQzJXdUI7SUQxV3ZCLG9CQVZ1QixFQ3FYdkI7RUFFRDs7Ozs7O0lBTUMsZUFBYyxFQUNkO0VBRUQ7SUR2WEMsZ0JDd1h1QjtJRHZYdkIsZ0JBVnVCLEVDa1l2QjtFQUVEO0lBQ0MsZ0JBQWUsRUFDZjtFQUVEO0lBQ0MsZ0JBQWUsRUFDZjtFQUVEO0lBQ0MsZUFBYyxFQUNkO0VBRUQ7SUFDQyxhQUFZLEVBSVo7SUFMRDtNQUdFLGFBQVksRUFDWjtFQUVGO0lBQ0MsZ0JBQWUsRUFDZjtFQUVEO0lEalpDLGdCQ2tadUI7SURqWnZCLGdCQVZ1QixFQzRadkIsRUFBQTs7QUFHRjtFQUNDO0lBQ0Msa0JBQWlCO0lBQ2pCLGdCQUFlO0lBQ2YsWUFBVztJQUNYLGlCQUFnQixFQUNoQixFQUFBOztBQUdGO0VBQ0M7SUFDQyxtQkFBYztRQUFkLGVBQWM7SUFDZCxtQkFBa0IsRUFJbEI7SUFORDtNQUlFLGlCQUFnQixFQUNoQjtFQUdGO0lBQ0MseUJBQXdCLEVBQ3hCO0VBQ0Q7SUFDQyxzQkFBcUIsRUFJckI7SUFMRDtNQUdFLDhCQUE2QixFQUM3QjtFQUdGO0lBQ0Msa0JBQWlCO0lBQ2pCLGlCQUFnQixFQUNoQixFQUFBOztBQUdGO0VBQ0M7O0lBR0UsOEJBQXlCO1FBQXpCLDBCQUF5QjtJQUN6QiwyQkFBMEIsRUFPMUI7SUFYRjs7TUFNRywyQkFBMEIsRUFDMUI7SUFQSDs7TUFTRywyQkFBMEIsRUFDMUI7RUFJSDs7SUFFQyxvQkFBbUIsRUFDbkIsRUFBQTs7QUFJRjtFQUNDO0lBQ0MsNEJBQTJCLEVBQzNCO0VBQ0Q7SUFDQyxpQkFBZ0IsRUFDaEI7RUFDRDtJQUNDLHFCQUFvQjtJQUNwQixnQ0FBK0I7SUFDL0IsbUJBQWtCO0lBQ2xCLG1CQUFrQixFQUNsQjtFQUNEO0lBQ0MseUJBQXdCO0lBQ3hCLGdCQUFlLEVBQ2Y7RUFDRDtJQUNDLHNCQUFxQixFQUNyQjtFQUNEO0lBQ0MsVUFBUztJQUNULFVBQVMsRUFDVDtFQUNEO0lBQ0MsZ0JBQWUsRUFDZjtFQUNEOzs7O0lBSUMsZ0JBQWUsRUFDZjtFQUNEO0lBQ0MsMkJBQTBCLEVBQzFCO0VBQ0Q7SUFDQyxjQUFhLEVBQ2I7RUFDRDtJQUNDLDJCQUEwQixFQUMxQjtFQUVEO0lBQ0MscUJBQW9CLEVBSXBCO0lBTEQ7TUFHRSxhQUFZLEVBQ1o7RUFFRjtJQUNDLFNBQVEsRUFDUjtFQUVEOzs7Ozs7Ozs7SUFTQyxZQUFXO0lBQ1gsZUFBYztJRDdnQmQsZ0JDOGdCdUI7SUQ3Z0J2QixnQkFWdUIsRUN3aEJ2QjtFQUVEOzs7Ozs7Ozs7SURqaEJDLGdCQzBoQnVCO0lEemhCdkIsZ0JBVnVCLEVDb2lCdkI7RUFFRDtJQUNDLGNBQWEsRUFDYjtFQUVEO0lBQ0Msa0JBQWlCLEVBQ2pCLEVBQUEiLCJmaWxlIjoicmVzcG9uc2l2ZS13b29jb21tZXJjZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhYmxlIGZpbGUgXG4gKiBwbGFjZSBnbG9iYWwgdmFyaWFibGVzIGhlcmU6XG4gKlxuICogQHBhY2thZ2UgQ2hlZiBHdXRlbmJlcmcgQ2hpbGQgVGhlbWVcbiAqL1xuXG5cbiRmb250LXN0YWNrOiAnTWFucm9wZScsIHNhbnMtc2VyaWY7XG4kaGVhZC1zdGFjazogJ01hbnJvcGUnLCBzYW5zLXNlcmlmO1xuXG4kd2hpdGU6ICNGRkZGRkY7XG4kYmxhY2s6ICMyNTIxMjI7XG4kZ3JleTogI2VhZWFlYTtcbiRkYXJrR3JleTogIzM5MzkzOTtcbiRiZ0dyZXk6ICNGNEY0RjQ7XG4kbGlnaHRHcmV5OiAjRjhGOEY4O1xuXG4keWVsbG93OiAjRkVFNzVBO1xuJHllbGxvdzY0OiAjRkVFRjk1O1xuJG9yYW5nZTogI0ZDNzgzMDtcbiRvcmFuZ2U2NDogI0ZEQTg3QTtcbiRwaW5rOiAjRkRBQUM5O1xuJHBpbms2NDogI0ZFQzhEQztcbiRkYXJrUGluazogI0RBMTU2QTtcbiRidXR0b25QaW5rOiAjRkM3M0E3O1xuJGdyZWVuOiAjNENGNDlCO1xuJGdyZWVuNjQ6ICM4Q0Y4QkY7XG4kYmx1ZTogIzc1RDFGRTtcbiRibHVlNjQ6ICNBNkUxRkU7XG5cbiRiZWlnZTogI2YxZjFmMTtcblxuJGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiRmb3JtLWlucHV0LWNvbG9yOiAjOTk5O1xuJGZvcm0taW5wdXQtaG92ZXItY29sb3I6ICMwMDA7XG5cbiRlcnJvckNvbG9yOiAjYWUyZDMwO1xuJHZhbGlkYXRlZENvbG9yOiAjMTdjMzE3O1xuXG4kcmVndWxhci13ZWlnaHQ6IDQwMDtcbiRtZWRpdW0td2VpZ2h0OjUwMDtcbiRzZW1pYm9sZC13ZWlnaHQ6NjAwO1xuJGJvbGQtd2VpZ2h0OjcwMDtcbiRibGFjay13ZWlnaHQ6IDcwMDtcbiIsIi8qKlxuICogTWl4aW4gZmlsZSBcbiAqIEFsbCBvdXIgY3VzdG9tIG1peGluc1xuICpcbiAqIEBwYWNrYWdlIENoZWYgR3V0ZW5iZXJnIENoaWxkIFRoZW1lXG4gKiBAc2luY2UgMjAxOVxuICovXG5cblxuLy9tYWtlIGZsZXggcm93cyBhIGJpdCBlYXNpZXI6XG5AbWl4aW4gZmxleC1yb3coICRlcXVhbGl6ZTpzdHJldGNoICl7XG4gICAgQGluY2x1ZGUgZGlzcGxheShmbGV4KTtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKCRlcXVhbGl6ZSk7XG59XG5cbi8vbWFrZSBmbGV4IGNvbHVtbnMgYSBiaXQgZWFzaWVyOlxuQG1peGluIGZsZXgtY29sKCAkZXF1YWxpemU6c3RyZXRjaCApe1xuICAgIEBpbmNsdWRlIGRpc3BsYXkoZmxleCk7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcygkZXF1YWxpemUpO1xufVxuXG5cblxuLyogQm94c2l6aW5nIHNob3J0Y3V0OiAqL1xuQG1peGluIGJvcmRlcmJveCgpe1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vKiBUcmFuc2Zvcm0gc2hvcnRjdXRzICovXG5cbi8vIHJvdGF0ZVxuQG1peGluIHJvdGF0ZSggJGRlZyApIHtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCByb3RhdGUoICN7JGRlZ31kZWcgKSApO1xufVxuIFxuLy8gc2NhbGVcbkBtaXhpbiBzY2FsZSggJHNjYWxlICkge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSggJHNjYWxlICkgKTtcbn0gXG5cbi8vIHRyYW5zbGF0ZVxuQG1peGluIHRyYW5zbGF0ZSggJHgsICR5ICkge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGUoICR4LCAkeSApICk7XG59XG5cbi8vIHNrZXdcbkBtaXhpbiBza2V3KCAkeCwgJHkgKSB7XG4gICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNrZXcoICN7JHh9ZGVnLCAjeyR5fWRlZyApICk7XG59XG5cbi8vdHJhbnNmb3JtIG9yaWdpblxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oICRvcmlnaW4gKSB7XG4gICAgbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vKiBTdHlsaW5nIHBsYWNlaG9sZGVyczogKi9cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICYucGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAmOi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG59XG5cblxuLyogUmV0aW5hIGltYWdlczogKi9cbkBtaXhpbiBpbWFnZS0yeCgkaW1hZ2UsICR3aWR0aCwgJGhlaWdodCkge1xuICBAbWVkaWEgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcbiAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLjYvMiksXG4gICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMpLFxuICAgICAgICAgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgICAobWluLXJlc29sdXRpb246IDEuM2RwcHgpIHtcbiAgICAvKiBvbiByZXRpbmEsIHVzZSBpbWFnZSB0aGF0J3Mgc2NhbGVkIGJ5IDIgKi9cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aCAkaGVpZ2h0O1xuICB9XG59XG5cblxuLyogXCJIYXJkXCIgZ3JhZGllbnRzOiAqL1xuQG1peGluIGdyYWRpZW50LWhhcmQoICRzdGFydCwgJGVuZDojZmZmLCAkZGlyZWN0aW9uOlwiaG9yaXpvbnRhbFwiICkge1xuXG4gIEBpZiAkZGlyZWN0aW9uID09IFwiaG9yaXpvbnRhbFwie1xuXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaGFyZC1ob3Jpem9udGFsKCAkc3RhcnQsICRlbmQgKTtcblxuICB9QGVsc2V7XG5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1oYXJkLXZlcnRpY2FsKCAkc3RhcnQsICRlbmQgKTtcblxuICB9XG5cbn1cblxuQG1peGluIGdyYWRpZW50LWhhcmQtaG9yaXpvbnRhbCggJGZyb20sICR0byApIHtcblxuICBiYWNrZ3JvdW5kOiAkdG87XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJGZyb20pLCBjb2xvci1zdG9wKDUwJSwkdG8pLCBjb2xvci1zdG9wKDEwMCUsJHRvKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgJGZyb20gMCUsICRmcm9tIDUwJSwgJHRvIDUwJSwgJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRmcm9tJywgZW5kQ29sb3JzdHI9JyR0bycsR3JhZGllbnRUeXBlPTEgKTtcbn1cblxuQG1peGluIGdyYWRpZW50LWhhcmQtdmVydGljYWwoICRmcm9tLCAkdG8gKSB7XG5cbiAgYmFja2dyb3VuZDogJHRvO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgdG9wIHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJGZyb20pLCBjb2xvci1zdG9wKDUwJSwkdG8pLCBjb2xvci1zdG9wKDEwMCUsJHRvKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tIDAlLCAkZnJvbSA1MCUsICR0byA1MCUsICR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgIC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAgLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRmcm9tJywgZW5kQ29sb3JzdHI9JyR0bycsR3JhZGllbnRUeXBlPTEgKTtcblxufVxuXG4vKiBSRU0gZm9udCBzaXplczogKi9cbkBmdW5jdGlvbiBjYWxjdWxhdGVSZW0oJHNpemUpIHtcbiAgJHJlbVNpemU6ICRzaXplIC8gMTZweDtcbiAgQHJldHVybiAkcmVtU2l6ZSAqIDFyZW07XG59XG5cbkBtaXhpbiBicmVhay1jb250YWluZXIoKXtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTUwdncgKyA1MCUpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTUwdncgKyA1MCUpO1xufVxuXG5AbWl4aW4gZm9udC1zaXplKCRzaXplKSB7XG4gIGZvbnQtc2l6ZTogJHNpemU7XG4gIGZvbnQtc2l6ZTogY2FsY3VsYXRlUmVtKCRzaXplKTtcbn1cblxuQG1peGluIGJ1dHRvbigpe1xuICBiYWNrZ3JvdW5kOiAkYnV0dG9uUGluaztcbiAgY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDE1cHggNTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSggMjBweCApO1xuICBmb250LXdlaWdodDokYm9sZC13ZWlnaHQ7XG4gICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgYmFja2dyb3VuZDokZGFya1Bpbms7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIG91dGxpbmU6bm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gc2hvcC1idXR0b24oKXtcbiAgYmFja2dyb3VuZDogJGJ1dHRvblBpbms7XG4gIGNvbG9yOiAjRkZGO1xuICAvL3BhZGRpbmc6IDEwcHggMThweCAxM3B4IDE4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czo1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgY29sb3I6I0ZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSggMTZweCApO1xuICBsaW5lLWhlaWdodDoxO1xuICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgIGJhY2tncm91bmQ6JGRhcmtQaW5rO1xuICAgIGNvbG9yOiNGRkY7XG4gICAgb3V0bGluZTpub25lO1xuICB9XG59XG5cbkBtaXhpbiByZW1vdmUtZWxlbWVudCgpe1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCJAaW1wb3J0ICdiYXNlL192YXJpYWJsZXMnO1xuQGltcG9ydCAnYmFzZS9fbWl4aW5zJztcblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcblx0Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuZmxleC12aWV3cG9ydCB7XG5cdFx0aGVpZ2h0OiA3MDBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIyMHB4KSB7XG5cdC8vIHVsLnByb2R1Y3RzLmNvbHVtbnMtMTJ7XG5cdC8vIFx0bGl7XG5cdC8vIFx0XHRmbGV4OjAgMSBjYWxjKCA1MCUgLSAxNXB4KTtcblx0Ly8gXHRcdG1hcmdpbi10b3A6MzBweDtcblx0Ly8gXHRcdCY6bnRoLWNoaWxkKCAzbiszICl7XG5cdC8vIFx0XHRcdG1hcmdpbi1yaWdodDozMHB4ICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0XHQmOm50aC1jaGlsZCggZXZlbiApe1xuXHQvLyBcdFx0XHRtYXJnaW4tcmlnaHQ6MCAhaW1wb3J0YW50O1xuXHQvLyBcdFx0fVxuXHQvLyBcdH1cblx0Ly8gfVxuXHQubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYSB7XG5cdFx0ZmxleDogMCAxIDI1MnB4O1xuXHR9XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC52YXJpYXRpb25zIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHR9XG5cdC5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC11c3Atd3JhcHBlciB7XG5cdFx0bWFyZ2luLXRvcDogNTBweDtcblx0fVxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnJlbGF0ZWQucHJvZHVjdHMge1xuXHRcdG1hcmdpbi1ib3R0b206IDEyMHB4O1xuXHR9XG5cblx0LnNlY3Rpb24uY3RhX3dpdGhfZm9ybV9ibG9jayB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTIwcHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDgwcHgpIHtcblx0LnNlY3Rpb24uYmxvY2tfY29udGVudC5zaG9ydGNvZGUgLmNvbnRhaW5lciAueXdyYXEtZm9ybS10YWJsZS13cmFwcGVyIHtcblx0XHQjeWl0aC15d3JhcS1mb3JtIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdGZsZXg6IDAgMSAxMDAlO1xuXHRcdH1cblx0XHQuZ2Zvcm1fd3JhcHBlciB7XG5cdFx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHR9XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIge1xuXHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA1MHB4O1xuXHRcdH1cblx0XHQuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHtcblx0XHRcdGZsZXg6IDAgMSA1MCU7XG5cdFx0fVxuXHR9XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHtcblx0XHQud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbiB7XG5cdFx0XHRtYXJnaW46IDMwcHggMCAzMHB4IDA7XG5cdFx0fVxuXHRcdC52YXJpYXRpb25zIC5zZWxlY3Qtd3JhcHBlciBzZWxlY3Qge1xuXHRcdFx0cGFkZGluZzogMTNweCA3MHB4IDEzcHggMjVweDtcblx0XHR9XG5cdH1cblxuXHQuY2hlY2tvdXQud29vY29tbWVyY2UtY2hlY2tvdXQgLmV4dHJhLXBheW1lbnQtd3JhcHBlciB7XG5cdFx0ZmxleDogMCAxIDM3MHB4O1xuXHR9XG5cblx0Lm1haW4tc2hvcC13cmFwcGVyIC5zaWRlYmFyLWFyZWEgLmlubmVyLXNpZGViYXIge1xuXHRcdHBvc2l0aW9uOiBpbml0aWFsO1xuXHRcdHRvcDogMDtcblx0fVxuXG5cdC5zaG93LWZpbHRlci1idG4td3JhcHBlciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luOiAwcHggMCAzMHB4O1xuXHRcdC5idXR0b24tYWx0IHtcblx0XHRcdGFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0QGluY2x1ZGUgYnV0dG9uKCk7XG5cdFx0XHRwYWRkaW5nOiA5cHggNTBweCAxMHB4IDUwcHg7XG5cdFx0XHQvL3NoYWRvdyB0b3Bcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zaG9wLWNvbnRlbnQtYXJlYSAud29vY29tbWVyY2UtcHJvZHVjdHMtaGVhZGVyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR9XG5cblx0Lm1haW4tc2hvcC13cmFwcGVyIHtcblx0XHQuY29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cdFx0LnNpZGViYXItYXJlYSB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcblx0XHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0ei1pbmRleDogOTk5OTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdC5pbm5lci1zaWRlYmFyIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiA1MHB4O1xuXHRcdFx0fVxuXHRcdFx0LnNob3Atc2lkZWJhciB7XG5cdFx0XHRcdGhlaWdodDogY2FsYygxMDAlIC0gOTBweCk7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblx0XHRcdH1cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuOCk7XG5cdFx0XHRcdHotaW5kZXg6IC0xMDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDB2dztcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYudG9nZ2xlLWZpbHRlci1hcmVhIHtcblx0XHRcdC5zaWRlYmFyLWFyZWEge1xuXHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIHVsLnByb2R1Y3RzLmNvbHVtbnMtMTJ7XG5cdC8vIFx0bGl7XG5cdC8vIFx0XHRmbGV4OjAgMSBjYWxjKCAzMy4zMyUgLSAyMHB4KTtcblx0Ly8gXHRcdCY6bnRoLWNoaWxkKCBldmVuICl7XG5cdC8vIFx0XHRcdG1hcmdpbi1yaWdodDozMHB4ICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0XHQmOm50aC1jaGlsZCggM24rMyApe1xuXHQvLyBcdFx0XHRtYXJnaW4tcmlnaHQ6MHB4ICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0fVxuXHQvLyB9XG5cblx0Lm1haW4tc2hvcC13cmFwcGVyIC5zaWRlYmFyLWFyZWEgLmNsb3NlLW92ZXJsYXksXG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5idXR0b24tYWx0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIC5jbG9zZS1vdmVybGF5IHtcblx0XHRtYXJnaW46IDA7XG5cdFx0d2lkdGg6IDQycHg7XG5cdFx0aGVpZ2h0OiA0MnB4O1xuXHRcdGJhY2tncm91bmQ6ICRidXR0b25QaW5rO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdGNvbG9yOiAkYnV0dG9uUGluaztcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMjBweDtcblx0XHRyaWdodDogMzBweDtcblx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0ei1pbmRleDogMjtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGV2cm9uLXJpZ2h0LnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDE1cHg7XG5cdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHR0b3A6IDRweDtcblx0XHRcdHJpZ2h0OiA3cHg7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXHRcdH1cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6ICRkYXJrUGluaztcblx0XHRcdGNvbG9yOiAkZGFya1Bpbms7XG5cdFx0fVxuXHR9XG5cblx0Lm1haW4tc2hvcC13cmFwcGVyIC5zaWRlYmFyLWFyZWEgLmJ1dHRvbi1hbHQge1xuXHRcdEBpbmNsdWRlIGJ1dHRvbigpO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdG1hcmdpbjogMTVweCAzMHB4IDAgMzBweDtcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG5cdFx0Ly9zaGFkb3dcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRib3gtc2hhZG93OiAwcHggLTRweCA2cHggMHB4IHJnYmEoMTQ1LCAxNDUsIDE0NSwgMC4yKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogLTI1cHg7XG5cdFx0XHRsZWZ0OiAtMzBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdH1cblx0fVxuXG5cdC5zaW5nbGUtcHJvZHVjdCAjbWFpbi13cmFwcGVyIHtcblx0XHRwYWRkaW5nLXRvcDogMTQ1cHg7XG5cdH1cblxuXHQuc2luZ2xlLXByb2R1Y3QgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQuc2luZ2xlLXByb2R1Y3QgLnN1bW1hcnkgLnNpbXBsZS1pbm5lci1mb3JtIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5zaW5nbGUtcHJvZHVjdCBmb3JtIC55d2Fwb19vcHRpb25zX2NvbnRhaW5lciBzZWxlY3Qge1xuXHRcdHBhZGRpbmc6IDEzcHggNzBweCAxM3B4IDI1cHg7XG5cdH1cblxuXHQueWl0aC13YXBvLWFkZG9uLnlpdGgtd2Fwby1hZGRvbi10eXBlLXNlbGVjdCAub3B0aW9ucyBzZWxlY3Qge1xuXHRcdHBhZGRpbmc6IDEzcHggNzBweCAxM3B4IDI1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnJlbGF0ZWQucHJvZHVjdHMgdWwgbGkge1xuXHRcdG1hcmdpbi1yaWdodDogMTJweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkge1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1hcmdpbjogMCAwIDMwcHggMDtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IHtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXJnaW46IDAgMCAzMHB4IDA7XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLndjLXRhYnMtd3JhcHBlciB7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWFyZ2luOiAwIDAgMzBweCAwO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3RzIHtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0fVxuXG5cdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlcblx0XHQuZmxleC12aWV3cG9ydFxuXHRcdGZpZ3VyZVxuXHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlfX2ltYWdlIHtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHQud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5mbGV4LXZpZXdwb3J0IHtcblx0XHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0fVxuXG5cdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlcblx0XHQuZmxleC12aWV3cG9ydFxuXHRcdGZpZ3VyZVxuXHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlfX2ltYWdlIHtcblx0XHRoZWlnaHQ6IDU1MHB4O1xuXHRcdG1heC1oZWlnaHQ6IDgwdmg7XG5cdH1cblxuXHQud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1icyBsaSB7XG5cdFx0Ly8gd2lkdGg6Y2FsYyggMTIuNSUgLSAxMnB4KTtcblx0XHQvLyAmOm50aC1jaGlsZCggOG4rOCApe1xuXHRcdC8vIFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0Ly8gfVxuXHRcdHdpZHRoOiAxMDBweDtcblx0fVxuXG5cdC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIHtcblx0XHRsaSB7XG5cdFx0XHR3aWR0aDogNTBweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoNG4gKyA0KSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2UgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24uYnV0dG9uIHtcblx0XHRwYWRkaW5nOiAxNnB4IDYwcHggMThweCAzMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcblx0Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCB7XG5cdFx0ZmxleDogMCAxIGNhbGMoMzMlIC0gMTJweCk7XG5cdFx0JjpudGgtY2hpbGQoNG4gKyA0KSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoM24gKyAzKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1icyB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0Lndvb2NvbW1lcmNlIHVsLmZsZXgtZGlyZWN0aW9uLW5hdiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXHQuY2hlY2tvdXQud29vY29tbWVyY2UtY2hlY2tvdXQgLmV4dHJhLXBheW1lbnQtd3JhcHBlciB7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdH1cblxuXHQuY2hlY2tvdXQud29vY29tbWVyY2UtY2hlY2tvdXQgLmNvbDItc2V0IHtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0IHtcblx0XHRtaW4td2lkdGg6IGF1dG87XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3QtdXNwLXdyYXBwZXIge1xuXHRcdHBhZGRpbmc6IDE1cHg7XG5cdH1cblxuXHQucHJvZHVjdC1wYXJ0IC5wYXJ0LXRpdGxlLFxuXHQucHJvZHVjdC1wYXJ0OnZpc2l0ZWQgLnBhcnQtdGl0bGUge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyMHB4KTtcblx0fVxuXG5cdC5wcm9kdWN0LXBhcnQgLnBhcnQtdGl0bGUsXG5cdC5wcm9kdWN0LXBhcnQ6dmlzaXRlZCAucGFydC10aXRsZSB7XG5cdFx0cGFkZGluZzogMCA1cHg7XG5cdH1cblxuXHR1bC5wcm9kdWN0cy5jb2x1bW5zLTEyLFxuXHQud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0xMiB7XG5cdFx0bGkucHJvZHVjdCB7XG5cdFx0XHRmbGV4OiAwIDEgY2FsYyg1MCUgLSA4cHgpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNnB4O1xuXHRcdFx0JjpudGgtY2hpbGQoM24gKyAzKSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoZXZlbikge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0IHtcblx0XHRwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNHB4KTtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAucmVsYXRlZC5wcm9kdWN0cyB1bCBsaSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0JjpudGgtY2hpbGQoM24gKyAzKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnJlbGF0ZWQucHJvZHVjdHMgdWwgbGkge1xuXHRcdG1hcmdpbi1yaWdodDogMTJweCAhaW1wb3J0YW50O1xuXHRcdGZsZXg6IDAgMSBjYWxjKDUwJSAtIDZweCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMnB4ICFpbXBvcnRhbnQ7XG5cdFx0JjpudGgtY2hpbGQoM24gKyAzKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEycHggIWltcG9ydGFudDtcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoZXZlbikge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5yZWxhdGVkLnByb2R1Y3RzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMDBweDtcblx0fVxuXG5cdC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHQubWFpbi1zaG9wLXdyYXBwZXIgLnNpZGViYXItYXJlYSAuc2hvcC1zaWRlYmFyIHtcblx0XHRwYWRkaW5nOiAzMHB4IDE1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXHQvLyAuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAucHJvZHVjdF90aXRsZXtcblx0Ly8gXHRAaW5jbHVkZSBmb250LXNpemUoIDMwcHggKTtcblx0Ly8gfVxuXHQvLyAuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAucHJpY2V7XG5cdC8vIFx0QGluY2x1ZGUgZm9udC1zaXplKCAyMHB4ICk7XG5cdC8vIH1cblxuXHQvLyAuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbiBwe1xuXHQvLyBcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMTZweCApO1xuXHQvLyB9XG5cblx0Ly8gLndvb2NvbW1lcmNlIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uLmJ1dHRvbntcblx0Ly8gXHRAaW5jbHVkZSBmb250LXNpemUoIDE1cHggKTtcblx0Ly8gfVxuXG5cdC8vIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUuc2hvcF90YWJsZSB0Ym9keSAuY291cG9uIC5pbnB1dC10ZXh0e1xuXHQvLyBcdHdpZHRoOjEwMCU7XG5cdC8vIFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHQvLyB9XG5cblx0Ly8gLndvb2NvbW1lcmNlIHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0Ky5idXR0b257XG5cdC8vIFx0d2lkdGg6MTAwJTtcblx0Ly8gXHRtYXJnaW4tYm90dG9tOjE1cHg7XG5cdC8vIH1cblxuXHQvLyAud29vY29tbWVyY2UgI2NvbnRlbnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sIC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiwgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9ue1xuXHQvLyBcdHBhZGRpbmc6MDtcblx0Ly8gfVxuXG5cdC8vIC5tYWluLXNob3Atd3JhcHBlciAuc2lkZWJhci1hcmVhe1xuXHQvLyBcdHdpZHRoOjEwMCU7XG5cdC8vIH1cblxuXHQvLyB1bC5wcm9kdWN0cy5jb2x1bW5zLTEyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0xMntcblx0Ly8gXHRsaS5wcm9kdWN0e1xuXHQvLyBcdFx0ZmxleDowIDAgMTAwJTtcblx0Ly8gXHRcdG1hcmdpbjowIDAgMzBweCAwO1xuXHQvLyBcdFx0JjpudGgtY2hpbGQoIDNuKzMgKXtcblx0Ly8gXHRcdFx0bWFyZ2luLXJpZ2h0OjAgIWltcG9ydGFudDtcblx0Ly8gXHRcdH1cblx0Ly8gXHRcdCY6bnRoLWNoaWxkKCBldmVuICl7XG5cdC8vIFx0XHRcdG1hcmdpbi1yaWdodDowICFpbXBvcnRhbnQ7XG5cdC8vIFx0XHR9XG5cdC8vIFx0XHQmOmxhc3QtY2hpbGR7XG5cdC8vIFx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0Ly8gXHRcdH1cblxuXHQvLyBcdH1cblx0Ly8gfVxuXG5cdC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYnJlYWRjcnVtYiB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDE0cHgpO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdC13cmFwcGVyIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLnZhcmlhdGlvbnMge1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3Rcblx0XHQucHJvZHVjdC13cmFwcGVyXG5cdFx0LnN1bW1hcnkuZW50cnktc3VtbWFyeVxuXHRcdC52YXJpYXRpb25zXG5cdFx0LnNlbGVjdC13cmFwcGVyIHtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0c2VsZWN0IHtcblx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4KTtcblx0XHR9XG5cdH1cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdFxuXHRcdC5wcm9kdWN0LXdyYXBwZXJcblx0XHQuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5XG5cdFx0Lndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb25cblx0XHRwIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMjBweCk7XG5cdH1cblx0Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0aCxcblx0Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0ZCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDE4cHgpO1xuXHR9XG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3QgLnByb2R1Y3Qtd3JhcHBlciAud2MtdGFicy13cmFwcGVyIC53Yy10YWIgcCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDE4cHgpO1xuXHR9XG5cblx0LnNpbmdsZS5zaW5nbGUtcHJvZHVjdFxuXHRcdC5wcm9kdWN0LXdyYXBwZXJcblx0XHQuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5XG5cdFx0LnByb2R1Y3RfdGl0bGUge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzMHB4KTtcblx0fVxuXG5cdC5zaW5nbGUuc2luZ2xlLXByb2R1Y3Rcblx0XHQucHJvZHVjdC13cmFwcGVyXG5cdFx0LnN1bW1hcnkuZW50cnktc3VtbWFyeVxuXHRcdC5wcmljZVxuXHRcdC5iaWctcHJpY2Utd3JhcHBlclxuXHRcdC5hbW91bnQge1xuXHRcdGZvbnQtc2l6ZTogMWVtO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IGZvcm0gLnl3YXBvX29wdGlvbnNfY29udGFpbmVyIHNlbGVjdCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDE2cHgpO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IGZvcm0gLnlpdGhfd2Fwb19ncm91cHNfY29udGFpbmVyIHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblxuXHQud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblxuXHQucHJpY2UtdHh0IHtcblx0XHRmb250LXNpemU6IDFlbTtcblx0fVxuXG5cdC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGxpIHtcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHR9XG5cdH1cblx0LnN1bW1hcnkgI3lpdGgtd2Fwby1jb250YWluZXIge1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0fVxuXG5cdC55aXRoLXdhcG8tYWRkb24ueWl0aC13YXBvLWFkZG9uLXR5cGUtc2VsZWN0IC5vcHRpb25zIHNlbGVjdCB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDE2cHgpO1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcblx0Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0IC55aXRoLXl3cmFxLWFkZC10by1xdW90ZSB7XG5cdFx0cG9zaXRpb246IGluaXRpYWw7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdGZsb2F0OiBub25lO1xuXHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuXHQuc2luZ2xlLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdyYXBwZXIgLnJlbGF0ZWQucHJvZHVjdHMgdWwgbGkge1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1hcmdpbjogMCAwIDMwcHggMDtcblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5mbGV4LXZpZXdwb3J0IHtcblx0XHRoZWlnaHQ6IDM3MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0LmNhcnQtbWVudSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDIxNXB4O1xuXHRcdC5idXR0b25zIHtcblx0XHRcdHBhZGRpbmc6IDIwcHggMzBweCAxMzBweCAzMHB4O1xuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAucHJvZHVjdCAueWl0aC15d3JhcS1hZGQtdG8tcXVvdGUge1xuXHRcdHBvc2l0aW9uOiBpbml0aWFsO1xuXHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzODBweCkge1xuXHR1bC5wcm9kdWN0cy5jb2x1bW5zLTEyLFxuXHQud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0xMiB7XG5cdFx0bGkucHJvZHVjdCB7XG5cdFx0XHRmbGV4OiAwIDEgMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHQmOm50aC1jaGlsZCgzbiArIDMpIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZChldmVuKSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0LXBhcnQgLnBhcnQtdGl0bGUsXG5cdC5wcm9kdWN0LXBhcnQ6dmlzaXRlZCAucGFydC10aXRsZSB7XG5cdFx0bWluLWhlaWdodDogaW5pdGlhbDtcblx0fVxufVxuXG4vL0FuZHJvaWRcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzYwcHgpIHtcblx0Ym9keS5zdG9wLW1vYmlsZS1zY3JvbGwge1xuXHRcdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcblx0fVxuXHQuY2FydC1tZW51LmFjdGl2ZSB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXHQuY2FydC1tZW51IC5jYXJ0LWFqYXgtd3JhcHBlciAuaGVhZGVyLXdpZGdldCB7XG5cdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFx0bWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDI0MHB4KTtcblx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHR9XG5cdC5jYXJ0LW1lbnUgLmJ1dHRvbnMge1xuXHRcdHBhZGRpbmc6IDE1cHggNCUgMTVweCA0JTtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdH1cblx0LmNhcnQtbWVudSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwMHB4O1xuXHR9XG5cdC5jYXJ0LW1lbnUgLmNsb3NlLWNhcnQtbWVudSB7XG5cdFx0cmlnaHQ6IDQlO1xuXHRcdHRvcDogMjZweDtcblx0fVxuXHQuY2FydC1tZW51IC5lZGl0LXdpbmtlbG1hbmQge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0fVxuXHQuYnV0dG9uLndjLWJhY2t3YXJkLFxuXHQud29vY29tbWVyY2UgYS5idXR0b24sXG5cdC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG5cdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdH1cblx0LmNhcnQtbWVudSAuYnV0dG9uIHtcblx0XHRmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcblx0fVxuXHQuY2FydC1tZW51IC5jYXJ0LWFqYXgtd3JhcHBlciB7XG5cdFx0cGFkZGluZzogMCA0JTtcblx0fVxuXHQuY2FydC1tZW51IC5jYXJ0LXRpdGxlIHtcblx0XHRwYWRkaW5nOiAzMHB4IDkwcHggMzBweCA0JTtcblx0fVxuXG5cdC5jYXJ0LW1lbnUgLmNhcnQtYWpheC13cmFwcGVyIC55aXRoLXl3cmFxLWxpc3Qtd3JhcHBlciB1bC55aXRoLXl3cmFxLWxpc3QgbGkge1xuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xuXHRcdHNtYWxsIHtcblx0XHRcdGJvdHRvbTogNTBweDtcblx0XHR9XG5cdH1cblx0LmNhcnQtbWVudSAucXVhbnRpdHkge1xuXHRcdHJpZ2h0OiAwO1xuXHR9XG5cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudC5zaG9ydGNvZGVcblx0XHQuY29udGFpbmVyXG5cdFx0Lndvb2NvbW1lcmNlLnl3cmFxLXdyYXBwZXJcblx0XHQjeWl0aC15d3JhcS1mb3JtXG5cdFx0dGFibGVcblx0XHR0Ym9keVxuXHRcdHRyXG5cdFx0dGQucHJvZHVjdC1xdWFudGl0eVxuXHRcdGlucHV0IHtcblx0XHR3aWR0aDogNTBweDtcblx0XHR0ZXh0LWluZGVudDogMDtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XG5cdH1cblxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50LnNob3J0Y29kZVxuXHRcdC5jb250YWluZXJcblx0XHQud29vY29tbWVyY2UueXdyYXEtd3JhcHBlclxuXHRcdCN5aXRoLXl3cmFxLWZvcm1cblx0XHR0YWJsZVxuXHRcdHRib2R5XG5cdFx0dHJcblx0XHR0ZC5wcm9kdWN0LW5hbWVcblx0XHRhIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XG5cdH1cblxuXHQjeWl0aC15d3JhcS1mb3JtIHRhYmxlLmNhcnQgLnByb2R1Y3QtdGh1bWJuYWlsIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0dGFibGUuc2hvcF90YWJsZS55d3JhcV9yZXNwb25zaXZlIC5wcm9kdWN0LXJlbW92ZSB7XG5cdFx0cGFkZGluZzogMTBweCA1cHg7XG5cdH1cbn1cbiJdfQ== */
