/**
 * Variable file 
 * place global variables here:
 *
 * @package Chef Gutenberg Child Theme
 */
@import url(https://fonts.googleapis.com/css2?family=Khand:wght@500;700&family=Open+Sans:wght@400;600&display=swap);
/**
 * 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: */
@keyframes menumove {
  0% {
    opacity: 0; }
  60% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@media only screen and (max-width: 1820px) {
  .container, .woocommerce-notices-wrapper {
    padding: 0 4%; }
  .section.block_content .container {
    padding: 0 4%; }
  header .container {
    margin: 0 4%; }
  .big-header.regular-header .container .right-side {
    width: 50vw; }
  .section.block_image_and_content_left .container .block-row .block.content-block {
    margin-right: 0; }
  .section.block_content_and_image_left .container .block-row .block.content-block {
    margin-left: 0; } }

@media only screen and (max-width: 1640px) {
  .home .section.block_image_and_content_left .container .block-row .block.image-block {
    -ms-flex: 1;
        flex: 1; } }

@media only screen and (max-width: 1440px) {
  .home .big-header .container .left-side {
    -ms-flex: 1;
        flex: 1; }
  .big-header.regular-header .container .left-side {
    -ms-flex: 0 1 50%;
        flex: 0 1 50%; }
  h1 {
    font-size: 52px;
    font-size: 3.25rem; }
  h2 {
    font-size: 42px;
    font-size: 2.625rem; }
  h3 {
    font-size: 30px;
    font-size: 1.875rem; } }

@media only screen and (max-width: 1280px) {
  h1 {
    font-size: 48px;
    font-size: 3rem; }
  .home .big-header {
    margin-top: 50px;
    margin-bottom: 50px; }
    .home .big-header .container .left-side .inner-wrapper {
      padding-left: 0; }
    .home .big-header .container .right-side {
      transform: translate3d(0px, 7.9441px, 0px); }
  .section.block_image_and_content_left .container .block-row .block.image-block, .section.block_content_and_image_left .container .block-row .block.image-block {
    -ms-flex: 1;
        flex: 1; }
  .section.block_content_and_image_left .container .block-row .block.content-block {
    margin-left: 0; } }

@media only screen and (max-width: 1220px) {
  .big-header.regular-header {
    margin-top: 50px;
    margin-bottom: 50px; }
  .section.block_image_and_content_left .container .block-row .block.image-block, .section.block_content_and_image_left .container .block-row .block.image-block {
    -ms-flex: 1;
        flex: 1; } }

@media only screen and (max-width: 1080px) {
  p, a, span, ol, ul, li, strong, em, i, b, big, small, tt, abbr, acronym, cite, code, dfn, em, kbd, samp, var, br, sub, sup, button, input, label, select, textarea {
    font-size: 18px;
    font-size: 1.125rem; }
  .block.content-block ul li {
    font-size: 18px;
    font-size: 1.125rem; }
  .mainmenu nav {
    display: none !important; }
  .mainmenu .menu-switch .icon:before {
    background-image: url(../images/icons/menu-dark.svg); }
  .mainmenu .menu-switch .fa-bars:before {
    background-image: url(../images/icons/menu-dark.svg); }
  .mainmenu .mini-menu-wrapper {
    margin-right: 30px; }
  .mainmenu .menu-switch {
    display: block;
    background: none;
    margin-top: -30px;
    z-index: 910; }
    .mainmenu .menu-switch i {
      font-size: 0; }
    .mainmenu .menu-switch .mobile-button-text {
      display: none; }
    .mainmenu .menu-switch .fa-bars:before {
      content: '';
      background-image: url(../images/icons/menu-dark.svg);
      height: 35px;
      width: 35px;
      background-repeat: no-repeat;
      display: block; }
    .mainmenu .menu-switch.clicked-button .fa-bars:before {
      background-image: url(../images/icons/menu-close.svg); }
  .background-wrapper {
    transition: .3s;
    display: block !important; }
  .background-wrapper.active-bg {
    width: 100% !important; }
  .mobile-nav {
    top: 110px;
    height: calc(100vh - 110px);
    overflow-y: scroll;
    width: 100%;
    position: fixed;
    right: 0%;
    left: 0;
    padding: 0 0 100px 0;
    opacity: 1;
    transition: .3s;
    z-index: 900;
    text-align: center;
    pointer-events: none;
    display: none; }
    .mobile-nav ul {
      margin: 0 auto;
      text-align: center;
      width: 100%;
      padding-top: 30px; }
      .mobile-nav ul li a, .mobile-nav ul li a:visited {
        font-size: 24px;
        font-size: 1.5rem;
        padding: 10px 20px;
        color: #141414 !important;
        background: none !important; }
      .mobile-nav ul li.current-menu-item > a, .mobile-nav ul li.current-menu-item > a:visited, .mobile-nav ul li.current-page-parent > a, .mobile-nav ul li.current-page-parent > a:visited, .mobile-nav ul li.current_page_parent > a, .mobile-nav ul li.current_page_parent > a:visited {
        font-weight: 700; }
      .mobile-nav ul li.menu-item-has-children.current_page_parent > a, .mobile-nav ul li.menu-item-has-children.current_page_parent > a:visited {
        background: none;
        color: #141414; }
    .mobile-nav li.menu-item-has-children > a:after, .mobile-nav li.menu-item-has-children > a:visited:after {
      content: "\f078";
      font-weight: 600;
      font-family: "Font Awesome 5 free";
      display: inline-block;
      z-index: 3;
      font-size: 16px;
      margin-left: 15px;
      right: 0;
      line-height: 1; }
    .mobile-nav li.fold-out .sub-menu {
      display: block; }
  .mobile-nav.fold-out {
    pointer-events: auto;
    display: block;
    animation: menumove .3s linear; }
  .background-wrapper {
    background: #F7F7F7 !important; } }

@media only screen and (max-width: 1024px) {
  #main-wrapper .section {
    margin-bottom: 100px; }
  .no-header {
    margin-top: 100px; }
  .home .big-header .container .right-side {
    -ms-flex: 100%;
        flex: 100%;
    -ms-flex-order: -1;
        order: -1;
    transform: none !important; }
  .home .big-header {
    margin-bottom: 100px; }
    .home .big-header .container .left-side {
      height: fit-content;
      min-height: fit-content;
      padding-top: 30px; }
      .home .big-header .container .left-side .inner-wrapper {
        padding-right: 0; }
        .home .big-header .container .left-side .inner-wrapper .block-title {
          margin: 0 0 20px 0; }
        .home .big-header .container .left-side .inner-wrapper .content-wrapper {
          max-width: 100%; }
  .section.block_image_and_content_left .container .block-row .block.content-block, .section.block_content_and_image_left .container .block-row .block.content-block {
    margin-left: 0; }
  .big-header.regular-header .container .left-side {
    -ms-flex: 100%;
        flex: 100%;
    height: fit-content;
    min-height: fit-content;
    margin-bottom: 50px; }
    .big-header.regular-header .container .left-side .inner-wrapper {
      padding: 0;
      width: 100%; }
      .big-header.regular-header .container .left-side .inner-wrapper .block-title {
        margin: 0 0 20px 0; }
      .big-header.regular-header .container .left-side .inner-wrapper .content-wrapper {
        width: 100%;
        max-width: 100%; }
  .big-header.regular-header .container .right-side {
    transform: none !important;
    width: 100%;
    -ms-flex-order: -1;
        order: -1;
    position: relative;
    height: 340px;
    margin-bottom: 30px; }
  .collection-overview-block .collection-wrapper .global-part, .collection-overview-block .collection-wrapper .global-part:visited {
    -ms-flex: 0 1 calc(50% - 15px);
        flex: 0 1 calc(50% - 15px);
    margin-right: 30px; }
    .collection-overview-block .collection-wrapper .global-part:nth-last-of-type(3n+3), .collection-overview-block .collection-wrapper .global-part:visited:nth-last-of-type(3n+3) {
      margin-right: auto; }
    .collection-overview-block .collection-wrapper .global-part:nth-last-of-type(2n+2), .collection-overview-block .collection-wrapper .global-part:visited:nth-last-of-type(2n+2) {
      margin-right: 0; }
  section.footer-section {
    padding: 85px 0 0 0; }
    section.footer-section .block-row {
      -ms-flex-pack: left;
          justify-content: left; }
      section.footer-section .block-row .block {
        -ms-flex: 0 1 calc( 50% - 30px);
            flex: 0 1 calc( 50% - 30px);
        padding-bottom: 60px;
        margin-right: 30px; }
      section.footer-section .block-row .block.logo-block {
        -ms-flex: 1;
            flex: 1; } }

@media only screen and (max-width: 920px) {
  .home .section.block_image_and_content_left .container .block-row .block.image-block {
    -ms-flex: 100%;
        flex: 100%;
    margin-bottom: 30px; }
  .home .section.block_image_and_content_left .container .block-row .block.content-block .inner-wrapper {
    padding-left: 0;
    max-width: 100%; }
  .section.block_content .container .block-row .block .inner-wrapper .block-title {
    -ms-flex: 100%;
        flex: 100%; }
  .section.block_image_and_content_left .container .block-row .block.image-block, .section.block_content_and_image_left .container .block-row .block.image-block {
    -ms-flex: 100%;
        flex: 100%;
    margin-right: 0;
    padding-right: 0;
    margin-bottom: 30px; }
  .section.block_content_and_image_left .container .block-row .block.image-block {
    -ms-flex-order: -1;
        order: -1; }
  .section.block_content .container .block-row .block {
    text-align: left; }
  .section.form_block .gform_footer {
    -ms-flex: 100%;
        flex: 100%;
    margin-top: 30px; }
  .section.form_block .container .block.form-block {
    background: #fff;
    padding: 4%; }
  .section.block_content .container {
    padding: 0 4%; }
  .section.form_block .gform_body ul li.gfield.gfield_price {
    -ms-flex: 0 1 calc( 50% - 50px);
        flex: 0 1 calc( 50% - 50px);
    padding-bottom: 20px; }
  .section.form_block .gform_body ul li.gfield.gfield_price .gfield_label {
    font-size: 16px;
    font-size: 1rem; }
  .section.form_block .gform_body ul li.gfield.gfield_price .ginput_container_singleproduct span {
    font-size: 14px;
    font-size: 0.875rem; }
  .section.form_block .gform_body ul li.gfield.gfield_price .ginput_container_singleproduct .ginput_quantity {
    padding: 5px !important; }
  .no-header {
    margin-top: 80px; } }

@media only screen and (max-width: 768px) {
  .section.form_block .gform_body ul li.half-field {
    -ms-flex: 100%;
        flex: 100%; }
  .collection-overview-block .collection-wrapper .global-part, .collection-overview-block .collection-wrapper .global-part:visited {
    -ms-flex: 100%;
        flex: 100%;
    margin-right: 0 !important; }
  .section.block_content .container .block-row .block .inner-wrapper .block-title {
    margin-right: 0; } }

@media only screen and (max-width: 660px) {
  .mainmenu .mini-menu-wrapper {
    margin-right: 50px; }
  .section.form_block .gform_body ul li.gfield.gfield_price .ginput_container_singleproduct span, .section.form_block .gform_body ul li.gfield.gfield_price .ginput_container_singleproduct input {
    width: 50%; }
  .section.form_block .gform_body ul li.gfield.gfield_price .ginput_container_singleproduct .ginput_quantity_label {
    padding-left: 0; }
  h1 {
    font-size: 38px;
    font-size: 2.375rem; }
  h2 {
    font-size: 32px;
    font-size: 2rem; }
  h3 {
    font-size: 26px;
    font-size: 1.625rem; }
  h4 {
    font-size: 22px;
    font-size: 1.375rem; }
  h5 {
    font-size: 18px;
    font-size: 1.125rem; } }

@media only screen and (max-width: 520px) {
  .section.block_content .container .block-row .block .button {
    font-size: 16px;
    font-size: 1rem; }
  .section.form_block .gform_body ul li.gfield.gfield_price {
    -ms-flex: 100%;
        flex: 100%; }
  .section.form_block .gform_body ul li {
    -ms-flex: 100%;
        flex: 100%;
    margin-right: 0; }
  .section.form_block .nieuwsbrief .gform_body {
    max-width: 100%; }
  .section.form_block .gform_body ul li:first-child {
    margin-right: 0; }
  section.footer-section .block-row .block {
    -ms-flex: 100%;
        flex: 100%; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJyZXNwb25zaXZlLWdlbmVyYWwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUdILG9IQUFZO0FDUlo7Ozs7OztHQU1HO0FBbUJILHlCQUF5QjtBQVF6Qix5QkFBeUI7QUFnQ3pCLDJCQUEyQjtBQVMzQixvQkFBb0I7QUFjcEIsdUJBQXVCO0FBd0N2QixxQkFBcUI7QUM3SHJCO0VBQ0U7SUFBSSxXQUFVLEVBQUE7RUFDZDtJQUFLLFdBQVUsRUFBQTtFQUNmO0lBQU0sV0FBVSxFQUFBLEVBQUE7O0FBR2xCO0VBQ0M7SUFDQyxjQUFZLEVBQ1o7RUFDRDtJQUNDLGNBQVksRUFDWjtFQUNEO0lBQ0MsYUFDRCxFQUFDO0VBQ0Q7SUFDQyxZQUFXLEVBQ1g7RUFDRDtJQUNDLGdCQUFlLEVBQ2Y7RUFDRDtJQUNDLGVBQWMsRUFDZCxFQUFBOztBQUdGO0VBQ0M7SUFDQyxZQUFPO1FBQVAsUUFBTyxFQUNQLEVBQUE7O0FBR0Y7RUFDQztJQUNDLFlBQU87UUFBUCxRQUFPLEVBQ1A7RUFDRDtJQUNDLGtCQUFhO1FBQWIsY0FBYSxFQUNiO0VBQ0Q7SURpR0MsZ0JDaEd3QjtJRGlHeEIsbUJBVnVCLEVDdEZ2QjtFQUVEO0lENkZDLGdCQzVGd0I7SUQ2RnhCLG9CQVZ1QixFQ2xGdkI7RUFFRDtJRHlGQyxnQkN4RndCO0lEeUZ4QixvQkFWdUIsRUM5RXZCLEVBQUE7O0FBR0Y7RUFDQztJRG1GQyxnQkNsRndCO0lEbUZ4QixnQkFWdUIsRUN4RXZCO0VBQ0Q7SUFDQyxpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBU25CO0lBWEQ7TUFLRyxnQkFBZSxFQUNmO0lBTkg7TUFTRSwyQ0FBMEMsRUFDMUM7RUFFRjtJQUNDLFlBQU87UUFBUCxRQUFPLEVBQ1A7RUFDRDtJQUNDLGVBQWMsRUFDZCxFQUFBOztBQUdGO0VBRUM7SUFDSSxpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBQ3RCO0VB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RUFBQTs7QUFHRjtFQUNDO0lEelFDLGdCQzBReUI7SUR6UXpCLGdCQVZ1QixFQ29SdkI7RUFDRDtJQUNDLGVBQVU7UUFBVixXQUFVLEVBQ1Y7RUFDRDtJQUNDLGVBQVU7UUFBVixXQUFVO0lBQ1YsZ0JBQWMsRUFDZDtFQUNEO0lBQ0MsZ0JBQWUsRUFDZjtFQUNEO0lBQ0MsZ0JBQWMsRUFDZDtFQUNEO0lBQ0MsZUFBVTtRQUFWLFdBQVUsRUFDVixFQUFBIiwiZmlsZSI6InJlc3BvbnNpdmUtZ2VuZXJhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhYmxlIGZpbGUgXG4gKiBwbGFjZSBnbG9iYWwgdmFyaWFibGVzIGhlcmU6XG4gKlxuICogQHBhY2thZ2UgQ2hlZiBHdXRlbmJlcmcgQ2hpbGQgVGhlbWVcbiAqL1xuXG4vL0BpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9S2hhbmQ6d2dodEA1MDA7NzAwJmRpc3BsYXk9c3dhcCk7XG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUtoYW5kOndnaHRANTAwOzcwMCZmYW1pbHk9T3BlbitTYW5zOndnaHRANDAwOzYwMCZkaXNwbGF5PXN3YXApO1xuXG5cbiRmb250LXN0YWNrOidPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuJGhlYWQtc3RhY2s6J0toYW5kJywgc2Fucy1zZXJpZjtcblxuJHJlZDogI0UxMTkxRTtcbiRoYXJkOiAjMzA0MjUxO1xuJG1lZGl1bTogIzVDNzA3QztcbiRzb2Z0OiAjRTNFREYxO1xuLy9yZW1vdmUgXG5cbi8vbmV3XG4kd2hpdGU6ICNmZmY7XG4kYmxhY2s6ICMxNDE0MTQ7XG4kZ3JleTogI0Y3RjdGNztcblxuJGJvcmRlci1yYWRpdXM6IDA7XG5cbiRmb3JtLWlucHV0LWNvbG9yOiAjOTk5O1xuJGZvcm0taW5wdXQtaG92ZXItY29sb3I6ICMwMDA7XG5cbiRlcnJvckNvbG9yOiAjYWUyZDMwO1xuXG5cbiRyZWd1bGFyLXdlaWdodDo0MDA7XG4kbWVkaXVtLXdlaWdodDo1MDA7XG4kc2VtaS13ZWlnaHQ6NjAwO1xuJGJvbGQtd2VpZ2h0OjcwMDsiLCIvKipcbiAqIE1peGluIGZpbGUgXG4gKiBBbGwgb3VyIGN1c3RvbSBtaXhpbnNcbiAqXG4gKiBAcGFja2FnZSBDaGVmIEd1dGVuYmVyZyBDaGlsZCBUaGVtZVxuICogQHNpbmNlIDIwMTlcbiAqL1xuXG5cbi8vbWFrZSBmbGV4IHJvd3MgYSBiaXQgZWFzaWVyOlxuQG1peGluIGZsZXgtcm93KCAkZXF1YWxpemU6c3RyZXRjaCApe1xuICAgIEBpbmNsdWRlIGRpc3BsYXkoZmxleCk7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24ocm93KTtcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcygkZXF1YWxpemUpO1xufVxuXG4vL21ha2UgZmxleCBjb2x1bW5zIGEgYml0IGVhc2llcjpcbkBtaXhpbiBmbGV4LWNvbCggJGVxdWFsaXplOnN0cmV0Y2ggKXtcbiAgICBAaW5jbHVkZSBkaXNwbGF5KGZsZXgpO1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbik7XG4gICAgQGluY2x1ZGUgYWxpZ24taXRlbXMoJGVxdWFsaXplKTtcbn1cblxuXG5cbi8qIEJveHNpemluZyBzaG9ydGN1dDogKi9cbkBtaXhpbiBib3JkZXJib3goKXtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLyogVHJhbnNmb3JtIHNob3J0Y3V0cyAqL1xuXG4vLyByb3RhdGVcbkBtaXhpbiByb3RhdGUoICRkZWcgKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSggcm90YXRlKCAjeyRkZWd9ZGVnICkgKTtcbn1cbiBcbi8vIHNjYWxlXG5AbWl4aW4gc2NhbGUoICRzY2FsZSApIHtcbiAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoICRzY2FsZSApICk7XG59IFxuXG4vLyB0cmFuc2xhdGVcbkBtaXhpbiB0cmFuc2xhdGUoICR4LCAkeSApIHtcbiAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlKCAkeCwgJHkgKSApO1xufVxuXG4vLyBza2V3XG5AbWl4aW4gc2tldyggJHgsICR5ICkge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBza2V3KCAjeyR4fWRlZywgI3skeX1kZWcgKSApO1xufVxuXG4vL3RyYW5zZm9ybSBvcmlnaW5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCAkb3JpZ2luICkge1xuICAgIG1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLyogU3R5bGluZyBwbGFjZWhvbGRlcnM6ICovXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAmLnBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxufVxuXG5cbi8qIFJldGluYSBpbWFnZXM6ICovXG5AbWl4aW4gaW1hZ2UtMngoJGltYWdlLCAkd2lkdGgsICRoZWlnaHQpIHtcbiAgQG1lZGlhIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgICAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi42LzIpLFxuICAgICAgICAgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcbiAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMpLFxuICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxLjNkcHB4KSB7XG4gICAgLyogb24gcmV0aW5hLCB1c2UgaW1hZ2UgdGhhdCdzIHNjYWxlZCBieSAyICovXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcbiAgfVxufVxuXG5cbi8qIFwiSGFyZFwiIGdyYWRpZW50czogKi9cbkBtaXhpbiBncmFkaWVudC1oYXJkKCAkc3RhcnQsICRlbmQ6I2ZmZiwgJGRpcmVjdGlvbjpcImhvcml6b250YWxcIiApIHtcblxuICBAaWYgJGRpcmVjdGlvbiA9PSBcImhvcml6b250YWxcIntcblxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhhcmQtaG9yaXpvbnRhbCggJHN0YXJ0LCAkZW5kICk7XG5cbiAgfUBlbHNle1xuXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaGFyZC12ZXJ0aWNhbCggJHN0YXJ0LCAkZW5kICk7XG5cbiAgfVxuXG59XG5cbkBtaXhpbiBncmFkaWVudC1oYXJkLWhvcml6b250YWwoICRmcm9tLCAkdG8gKSB7XG5cbiAgYmFja2dyb3VuZDogJHRvO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwkZnJvbSksIGNvbG9yLXN0b3AoNTAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJHRvKSwgY29sb3Itc3RvcCgxMDAlLCR0bykpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgIC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICRmcm9tIDAlLCAkZnJvbSA1MCUsICR0byA1MCUsICR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgIC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgIC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSckZnJvbScsIGVuZENvbG9yc3RyPSckdG8nLEdyYWRpZW50VHlwZT0xICk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1oYXJkLXZlcnRpY2FsKCAkZnJvbSwgJHRvICkge1xuXG4gIGJhY2tncm91bmQ6ICR0bztcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHRvcCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwkZnJvbSksIGNvbG9yLXN0b3AoNTAlLCRmcm9tKSwgY29sb3Itc3RvcCg1MCUsJHRvKSwgY29sb3Itc3RvcCgxMDAlLCR0bykpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAkZnJvbSAwJSwgJGZyb20gNTAlLCAkdG8gNTAlLCAkdG8gMTAwJSk7XG4gIGJhY2tncm91bmQ6ICAgICAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZyb20gMCUsJGZyb20gNTAlLCR0byA1MCUsJHRvIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAgICAgIC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tIDAlLCRmcm9tIDUwJSwkdG8gNTAlLCR0byAxMDAlKTtcbiAgYmFja2dyb3VuZDogICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkZnJvbSAwJSwkZnJvbSA1MCUsJHRvIDUwJSwkdG8gMTAwJSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSckZnJvbScsIGVuZENvbG9yc3RyPSckdG8nLEdyYWRpZW50VHlwZT0xICk7XG5cbn1cblxuLyogUkVNIGZvbnQgc2l6ZXM6ICovXG5AZnVuY3Rpb24gY2FsY3VsYXRlUmVtKCRzaXplKSB7XG4gICRyZW1TaXplOiAkc2l6ZSAvIDE2cHg7XG4gIEByZXR1cm4gJHJlbVNpemUgKiAxcmVtO1xufVxuXG5AbWl4aW4gYnJlYWstY29udGFpbmVyKCl7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC01MHZ3ICsgNTAlKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC01MHZ3ICsgNTAlKTtcbn1cblxuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZSkge1xuICBmb250LXNpemU6ICRzaXplO1xuICBmb250LXNpemU6IGNhbGN1bGF0ZVJlbSgkc2l6ZSk7XG59XG5cbkBtaXhpbiBidXR0b24oKXtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICRibGFjaztcbiAgcGFkZGluZzogMTVweCAzNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6JGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiAuM3M7XG4gIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICBAaW5jbHVkZSBmb250LXNpemUoIDIwcHggKTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrO1xuICBmb250LXdlaWdodDogJHNlbWktd2VpZ2h0O1xuICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgIGJhY2tncm91bmQ6JGJsYWNrO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBvdXRsaW5lOm5vbmU7XG4gIH1cbn1cblxuQG1peGluIHJlbW92ZS1lbGVtZW50KCl7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIkBpbXBvcnQgJ2Jhc2UvX3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdiYXNlL19taXhpbnMnO1xuXG5Aa2V5ZnJhbWVzIG1lbnVtb3ZlIHtcbiAgMCUge29wYWNpdHk6IDA7fVxuICA2MCUge29wYWNpdHk6IDA7fVxuICAxMDAlIHtvcGFjaXR5OiAxO31cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTgyMHB4ICl7XG5cdC5jb250YWluZXIsIC53b29jb21tZXJjZS1ub3RpY2VzLXdyYXBwZXJ7XG5cdFx0cGFkZGluZzowIDQlO1xuXHR9XG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnQgLmNvbnRhaW5lcntcblx0XHRwYWRkaW5nOjAgNCU7XG5cdH1cblx0aGVhZGVyIC5jb250YWluZXJ7XG5cdFx0bWFyZ2luOiAwIDQlXG5cdH1cblx0LmJpZy1oZWFkZXIucmVndWxhci1oZWFkZXIgLmNvbnRhaW5lciAucmlnaHQtc2lkZXtcblx0XHR3aWR0aDogNTB2dztcblx0fVxuXHQuc2VjdGlvbi5ibG9ja19pbWFnZV9hbmRfY29udGVudF9sZWZ0IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2suY29udGVudC1ibG9ja3tcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudF9hbmRfaW1hZ2VfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmNvbnRlbnQtYmxvY2t7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTY0MHB4ICl7XG5cdC5ob21lIC5zZWN0aW9uLmJsb2NrX2ltYWdlX2FuZF9jb250ZW50X2xlZnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jay5pbWFnZS1ibG9ja3tcblx0XHRmbGV4OiAxO1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDE0NDBweCApe1xuXHQuaG9tZSAuYmlnLWhlYWRlciAuY29udGFpbmVyIC5sZWZ0LXNpZGV7XG5cdFx0ZmxleDogMTtcblx0fVxuXHQuYmlnLWhlYWRlci5yZWd1bGFyLWhlYWRlciAuY29udGFpbmVyIC5sZWZ0LXNpZGV7XG5cdFx0ZmxleDogMCAxIDUwJTtcblx0fVxuXHRoMXtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDUycHggKTtcblx0fVxuXG5cdGgye1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggNDJweCApO1xuXHR9XG5cblx0aDN7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKCAzMHB4ICk7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTI4MHB4ICl7XG5cdGgxe1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggNDhweCApO1xuXHR9XG5cdC5ob21lIC5iaWctaGVhZGVye1xuXHRcdG1hcmdpbi10b3A6IDUwcHg7IFxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdFx0LmNvbnRhaW5lciAubGVmdC1zaWRle1xuXHRcdFx0LmlubmVyLXdyYXBwZXJ7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmNvbnRhaW5lciAucmlnaHQtc2lkZXtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCA3Ljk0NDFweCwgMHB4KTtcblx0XHR9XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfaW1hZ2VfYW5kX2NvbnRlbnRfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmltYWdlLWJsb2NrLCAuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2suaW1hZ2UtYmxvY2t7XG5cdFx0ZmxleDogMTtcblx0fVxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2suY29udGVudC1ibG9ja3tcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAxMjIwcHggKXtcblx0XG5cdC5iaWctaGVhZGVyLnJlZ3VsYXItaGVhZGVye1xuXHQgICAgbWFyZ2luLXRvcDogNTBweDtcblx0ICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfaW1hZ2VfYW5kX2NvbnRlbnRfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmltYWdlLWJsb2NrLCAuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2suaW1hZ2UtYmxvY2t7XG5cdFx0ZmxleDogMTtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAxMDgwcHggKXtcblx0cCwgYSwgc3Bhbiwgb2wsIHVsLCBsaSwgc3Ryb25nLCBlbSwgaSwgYiwgYmlnLCBzbWFsbCwgdHQsIGFiYnIsIGFjcm9ueW0sIGNpdGUsIGNvZGUsIGRmbiwgZW0sIGtiZCwgc2FtcCwgdmFyLCBiciwgc3ViLCBzdXAsIGJ1dHRvbiwgaW5wdXQsIGxhYmVsLCBzZWxlY3QsIHRleHRhcmVhe1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSAoIDE4cHggKTtcblx0fVxuXHQuYmxvY2suY29udGVudC1ibG9jayB1bCBsaXtcblx0XHRAaW5jbHVkZSBmb250LXNpemUgKCAxOHB4ICk7XG5cdH1cblx0Ly9Nb2JpbGUgTWVudVxuXHQubWFpbm1lbnUgbmF2e1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXHQubWFpbm1lbnUgLm1lbnUtc3dpdGNoIC5pY29uOmJlZm9yZXtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL21lbnUtZGFyay5zdmcpO1xuXHR9XG5cdC5tYWlubWVudSAubWVudS1zd2l0Y2ggLmZhLWJhcnM6YmVmb3Jle1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvbWVudS1kYXJrLnN2Zyk7XG5cdH1cblx0Lm1haW5tZW51IC5taW5pLW1lbnUtd3JhcHBlcntcblx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cdH1cblx0Lm1haW5tZW51IC5tZW51LXN3aXRjaHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdC8vcmlnaHQ6IDAlO1xuXHRcdG1hcmdpbi10b3A6IC0zMHB4O1xuXHRcdHotaW5kZXg6IDkxMDtcblx0XHRpIHtcblx0XHRcdGZvbnQtc2l6ZTogMDtcblx0XHR9XG5cdFx0Lm1vYmlsZS1idXR0b24tdGV4dHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdC5mYS1iYXJzOmJlZm9yZXtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9tZW51LWRhcmsuc3ZnKTtcblx0XHRcdGhlaWdodDogMzVweDtcblx0XHRcdHdpZHRoOiAzNXB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblx0XHR9XG5cdFx0Ji5jbGlja2VkLWJ1dHRvbntcblx0XHRcdC5mYS1iYXJzOmJlZm9yZXsgIFxuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL21lbnUtY2xvc2Uuc3ZnKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmJhY2tncm91bmQtd3JhcHBlcntcblx0XHR0cmFuc2l0aW9uOiAuM3M7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxuXHQuYmFja2dyb3VuZC13cmFwcGVyLmFjdGl2ZS1iZ3tcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHQubW9iaWxlLW5hdntcblx0XHR0b3A6IDExMHB4O1xuXHQgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTEwcHgpO1xuXHQgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXHQgICAgd2lkdGg6IDEwMCU7XG5cdCAgICBwb3NpdGlvbjogZml4ZWQ7XG5cdCAgICByaWdodDogMCU7XG5cdCAgICBsZWZ0OiAwO1xuXHQgICAgcGFkZGluZzogMCAwIDEwMHB4IDA7XG5cdCAgICBvcGFjaXR5OiAxO1xuXHQgICAgdHJhbnNpdGlvbjogLjNzO1xuXHQgICAgei1pbmRleDogOTAwO1xuXHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHQgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdCAgICBkaXNwbGF5OiBub25lO1xuXHQgICAgdWx7XG4gICAgXHQgICAgbWFyZ2luOiAwIGF1dG87XG5cdFx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0ICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuXHRcdCAgICBsaSBhLCBsaSBhOnZpc2l0ZWR7XG5cdFx0ICAgIFx0QGluY2x1ZGUgZm9udC1zaXplKCAyNHB4ICk7XG5cdFx0XHRcdHBhZGRpbmc6MTBweCAyMHB4O1xuXHRcdCAgICBcdGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcblx0XHQgICAgXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0ICAgIH1cblx0XHQgICAgbGkuY3VycmVudC1tZW51LWl0ZW0sIGxpLmN1cnJlbnQtcGFnZS1wYXJlbnQsIGxpLmN1cnJlbnRfcGFnZV9wYXJlbnR7XG5cdFx0ICAgIFx0JiA+IGEsICYgPiBhOnZpc2l0ZWR7XG5cdFx0ICAgIFx0XHRmb250LXdlaWdodDogICRib2xkLXdlaWdodDtcblx0XHQgICAgXHR9XG5cdFx0ICAgIH1cblx0XHQgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5jdXJyZW50X3BhZ2VfcGFyZW50e1xuXHRcdCAgICBcdCYgPiBhLCAmID4gYTp2aXNpdGVke1xuXHRcdCAgICBcdFx0YmFja2dyb3VuZDpub25lO1xuXHRcdCAgICBcdFx0Y29sb3I6JGJsYWNrO1xuXHRcdCAgICBcdH1cblx0XHQgICAgfVxuXHRcdH1cblx0XHRsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVue1xuXHRcdFx0JiA+IGEsICYgPiBhOnZpc2l0ZWR7XG5cdFx0XHRcdCY6YWZ0ZXJ7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcXGYwNzhcIjtcblx0XHRcdFx0ICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdCAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBmcmVlXCI7XG5cdFx0XHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdCAgICB6LWluZGV4OiAzO1xuXHRcdFx0XHQgICAgZm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHQgICAgbWFyZ2luLWxlZnQ6MTVweDtcblx0XHRcdFx0ICAgIHJpZ2h0OiAwO1xuXHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6MTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRsaS5mb2xkLW91dHtcblx0XHRcdC5zdWItbWVudXtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Lm1vYmlsZS1uYXYuZm9sZC1vdXR7XG5cdCAgICBwb2ludGVyLWV2ZW50czogYXV0bztcblx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHQgICAgYW5pbWF0aW9uOiBtZW51bW92ZSAuM3MgbGluZWFyO1xuXHR9XG5cdFxuXHQuYmFja2dyb3VuZC13cmFwcGVye1xuXHRcdGJhY2tncm91bmQ6ICRncmV5ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogMTAyNHB4ICl7XG5cdCNtYWluLXdyYXBwZXIgLnNlY3Rpb24ge1xuICAgIFx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XG5cdH1cblx0Lm5vLWhlYWRlciB7XG5cdCAgICBtYXJnaW4tdG9wOiAxMDBweDtcblx0fVxuXHQuaG9tZSAuYmlnLWhlYWRlciAuY29udGFpbmVyIC5yaWdodC1zaWRle1xuXHRcdGZsZXg6IDEwMCU7XG5cdFx0b3JkZXI6IC0xO1xuXHRcdHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cdC5ob21lIC5iaWctaGVhZGVye1xuXHQgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IFxuXHRcdC5jb250YWluZXIgLmxlZnQtc2lkZXtcblx0XHRcdGhlaWdodDogZml0LWNvbnRlbnQ7XG5cdFx0ICAgIG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xuXHRcdCAgICBwYWRkaW5nLXRvcDogMzBweDtcblx0XHQgICAgLmlubmVyLXdyYXBwZXJ7XG5cdFx0ICAgIFx0cGFkZGluZy1yaWdodDogMDtcblx0XHQgICAgXHQuYmxvY2stdGl0bGV7XG5cdFx0ICAgIFx0XHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cdFx0ICAgIFx0fVxuXHRcdCAgICBcdC5jb250ZW50LXdyYXBwZXJ7XG5cdFx0ICAgIFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0ICAgIFx0fVxuXHRcdCAgICB9XG5cdFx0fVxuXHR9XG5cdC5ob21lIC5zZWN0aW9uLmJsb2NrX2ltYWdlX2FuZF9jb250ZW50X2xlZnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jay5jb250ZW50LWJsb2NrIC5pbm5lci13cmFwcGVye1xuXHRcdC8vcGFkZGluZy1sZWZ0OjA7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfaW1hZ2VfYW5kX2NvbnRlbnRfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmNvbnRlbnQtYmxvY2ssIC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jay5jb250ZW50LWJsb2Nre1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG5cdC5iaWctaGVhZGVyLnJlZ3VsYXItaGVhZGVyIC5jb250YWluZXIgLmxlZnQtc2lkZXtcblx0XHRmbGV4OiAxMDAlO1xuXHQgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcblx0ICAgIG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xuXHQgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblx0ICAgIC5pbm5lci13cmFwcGVye1xuXHQgICAgXHRwYWRkaW5nOiAwO1xuXHQgICAgXHR3aWR0aDogMTAwJTtcblx0ICAgIFx0LmJsb2NrLXRpdGxle1xuXHQgICAgXHRcdG1hcmdpbjogMCAwIDIwcHggMDtcblx0ICAgIFx0fVxuXHQgICAgXHQuY29udGVudC13cmFwcGVye1xuXHQgICAgXHRcdHdpZHRoOiAxMDAlO1xuXHQgICAgXHRcdG1heC13aWR0aDogMTAwJTtcblx0ICAgIFx0fVxuXHQgICAgfVxuXHR9XG5cdC5iaWctaGVhZGVyLnJlZ3VsYXItaGVhZGVyIC5jb250YWluZXIgLnJpZ2h0LXNpZGV7XG5cdCAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgICAgb3JkZXI6IC0xO1xuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgaGVpZ2h0OiAzNDBweDtcblx0ICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0LmNvbGxlY3Rpb24tb3ZlcnZpZXctYmxvY2sgLmNvbGxlY3Rpb24td3JhcHBlciAuZ2xvYmFsLXBhcnQsIC5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrIC5jb2xsZWN0aW9uLXdyYXBwZXIgLmdsb2JhbC1wYXJ0OnZpc2l0ZWR7XG5cdFx0ZmxleDogMCAxIGNhbGMoNTAlIC0gMTVweCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xuXHRcdCY6bnRoLWxhc3Qtb2YtdHlwZSgzbiszKXtcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHR9XG5cdFx0JjpudGgtbGFzdC1vZi10eXBlKDJuKzIpe1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0fVxuXHR9XG5cdHNlY3Rpb24uZm9vdGVyLXNlY3Rpb257XG5cdFx0cGFkZGluZzogODVweCAwIDAgMDtcblx0XHQuYmxvY2stcm93e1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBsZWZ0O1xuXHRcdFx0LmJsb2Nre1xuXHRcdFx0ICAgIGZsZXg6IDAgMSBjYWxjKCA1MCUgLSAzMHB4ICk7XG5cdFx0XHQgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG5cdFx0XHQgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuXHRcdFx0fVxuXHRcdFx0LmJsb2NrLmxvZ28tYmxvY2t7XG5cdFx0XHRcdGZsZXg6IDE7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5zZWN0aW9uLmZvcm1fYmxvY2sgLmdmb3JtX2JvZHkgdWx7XG5cdFx0Ly9tYXgtd2lkdGg6IGZpdC1jb250ZW50O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDkyMHB4ICl7XG5cdC5ob21lIC5zZWN0aW9uLmJsb2NrX2ltYWdlX2FuZF9jb250ZW50X2xlZnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jay5pbWFnZS1ibG9ja3tcblx0XHRmbGV4OiAxMDAlO1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0LmhvbWUgLnNlY3Rpb24uYmxvY2tfaW1hZ2VfYW5kX2NvbnRlbnRfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmNvbnRlbnQtYmxvY2sgLmlubmVyLXdyYXBwZXJ7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2sgLmlubmVyLXdyYXBwZXIgLmJsb2NrLXRpdGxle1xuXHRcdGZsZXg6IDEwMCU7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfaW1hZ2VfYW5kX2NvbnRlbnRfbGVmdCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrLmltYWdlLWJsb2NrLCAuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0IC5jb250YWluZXIgLmJsb2NrLXJvdyAuYmxvY2suaW1hZ2UtYmxvY2t7XG5cdFx0ZmxleDogMTAwJTtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHR9XG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jay5pbWFnZS1ibG9ja3tcblx0XHRvcmRlcjogLTE7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2Nre1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblx0LnNlY3Rpb24uZm9ybV9ibG9jayAuZ2Zvcm1fZm9vdGVye1xuXHRcdGZsZXg6IDEwMCU7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0fVxuXHQuc2VjdGlvbi5mb3JtX2Jsb2NrIC5jb250YWluZXIgLmJsb2NrLmZvcm0tYmxvY2t7XG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuICAgIFx0cGFkZGluZzogNCU7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudCAuY29udGFpbmVye1xuXHRcdHBhZGRpbmc6IDAgNCU7XG5cdH1cblx0LnNlY3Rpb24uZm9ybV9ibG9jayAuZ2Zvcm1fYm9keSB1bCBsaS5nZmllbGQuZ2ZpZWxkX3ByaWNle1xuXHRcdGZsZXg6IDAgMSBjYWxjKCA1MCUgLSA1MHB4KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0fVxuXHQuc2VjdGlvbi5mb3JtX2Jsb2NrIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfcHJpY2UgLmdmaWVsZF9sYWJlbHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUgKDE2cHgpO1xuXHR9XG5cdC5zZWN0aW9uLmZvcm1fYmxvY2sgLmdmb3JtX2JvZHkgdWwgbGkuZ2ZpZWxkLmdmaWVsZF9wcmljZSAuZ2lucHV0X2NvbnRhaW5lcl9zaW5nbGVwcm9kdWN0e1xuXHRcdHNwYW57XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUgKDE0cHgpO1xuXHRcdH1cblx0fVxuXHQuc2VjdGlvbi5mb3JtX2Jsb2NrIC5nZm9ybV9ib2R5IHVsIGxpLmdmaWVsZC5nZmllbGRfcHJpY2UgLmdpbnB1dF9jb250YWluZXJfc2luZ2xlcHJvZHVjdCAuZ2lucHV0X3F1YW50aXR5e1xuXHRcdHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuXHR9XG5cdC5uby1oZWFkZXIge1xuXHQgICAgbWFyZ2luLXRvcDogODBweDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiA3NjhweCApe1xuXHQuc2VjdGlvbi5mb3JtX2Jsb2NrIC5nZm9ybV9ib2R5IHVsIGxpLmhhbGYtZmllbGR7XG5cdFx0ZmxleDogMTAwJTtcblx0fVxuXHQuY29sbGVjdGlvbi1vdmVydmlldy1ibG9jayAuY29sbGVjdGlvbi13cmFwcGVyIC5nbG9iYWwtcGFydCwgLmNvbGxlY3Rpb24tb3ZlcnZpZXctYmxvY2sgLmNvbGxlY3Rpb24td3JhcHBlciAuZ2xvYmFsLXBhcnQ6dmlzaXRlZHtcblx0XHRmbGV4OiAxMDAlO1xuXHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHR9XG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnQgLmNvbnRhaW5lciAuYmxvY2stcm93IC5ibG9jayAuaW5uZXItd3JhcHBlciAuYmxvY2stdGl0bGV7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6IDY2MHB4ICl7XG5cdC5tYWlubWVudSAubWluaS1tZW51LXdyYXBwZXIge1xuXHQgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuXHR9XG5cdC5zZWN0aW9uLmZvcm1fYmxvY2sgLmdmb3JtX2JvZHkgdWwgbGkuZ2ZpZWxkLmdmaWVsZF9wcmljZSAuZ2lucHV0X2NvbnRhaW5lcl9zaW5nbGVwcm9kdWN0e1xuXHRcdHNwYW4sIGlucHV0e1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cdFx0LmdpbnB1dF9xdWFudGl0eV9sYWJlbHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cdH1cblx0aDF7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKCAzOHB4ICk7IC8vNTJcblx0fVxuXG5cdGgye1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMzJweCApOyAvLzQyXG5cdH1cblxuXHRoM3tcblx0XHRAaW5jbHVkZSBmb250LXNpemUoIDI2cHggKTsgLy8zMFxuXHR9XG5cdGg0e1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSggMjJweCApO1xuXHR9XG5cblx0aDV7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKCAxOHB4ICk7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1heC13aWR0aDogNTIwcHggKXtcblx0LnNlY3Rpb24uYmxvY2tfY29udGVudCAuY29udGFpbmVyIC5ibG9jay1yb3cgLmJsb2NrIC5idXR0b257XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplICggMTZweCApO1xuXHR9XG5cdC5zZWN0aW9uLmZvcm1fYmxvY2sgLmdmb3JtX2JvZHkgdWwgbGkuZ2ZpZWxkLmdmaWVsZF9wcmljZXtcblx0XHRmbGV4OiAxMDAlO1xuXHR9XG5cdC5zZWN0aW9uLmZvcm1fYmxvY2sgLmdmb3JtX2JvZHkgdWwgbGl7XG5cdFx0ZmxleDogMTAwJTtcblx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0fVxuXHQuc2VjdGlvbi5mb3JtX2Jsb2NrIC5uaWV1d3NicmllZiAuZ2Zvcm1fYm9keXtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblx0LnNlY3Rpb24uZm9ybV9ibG9jayAuZ2Zvcm1fYm9keSB1bCBsaTpmaXJzdC1jaGlsZHtcblx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0fVxuXHRzZWN0aW9uLmZvb3Rlci1zZWN0aW9uIC5ibG9jay1yb3cgLmJsb2Nre1xuXHRcdGZsZXg6IDEwMCU7XG5cdH1cbn0iXX0= */
