/**
 * 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: */
@keyframes pulse-gradient-smooth {
  0%, 100% {
    opacity: 0.2;
    transform: scale(1);
    filter: brightness(1); }
  50% {
    opacity: 0.5;
    transform: scale(1.08);
    filter: brightness(1.15); } }

@media only screen and (min-width: 1481px) {
  .section.query-overview-block.post .container {
    max-width: 1440px; }
  .section.query-overview-block.cases .container, .section.query-overview-block.posts .container {
    max-width: 1440px; }
  .section.query-overview-block.cases .list-item.cases, .section.query-overview-block.posts .list-item.post {
    -ms-flex: 0 1 calc(33.33% - 20px);
        flex: 0 1 calc(33.33% - 20px); } }

@media only screen and (max-width: 1480px) {
  header.mainmenu .container {
    padding: 20px 20px; } }

@media only screen and (max-width: 1280px) {
  .container {
    padding: 0 4%; }
  header.mainmenu .container {
    padding: 20px 4%; }
  .section.slider_block .container {
    padding: 0; }
  .home .big-hero .container .content-wrapper, .home .big-hero .container .image-wrapper {
    -ms-flex: 1;
        flex: 1; } }

@media only screen and (max-width: 1080px) {
  header.mainmenu .container .big-menu-side {
    -ms-flex-pack: end;
        justify-content: flex-end; }
    header.mainmenu .container .big-menu-side .top-nav {
      display: none; }
    header.mainmenu .container .big-menu-side .call-to-action-button .button {
      display: none; }
    header.mainmenu .container .big-menu-side .toggle-menu-wrapper {
      display: none; }
    header.mainmenu .container .big-menu-side .mobile-toggle-menu-wrapper {
      display: block; }
  .background-wrapper {
    transition: 0.3s;
    display: block !important;
    background: #1F1A46; }
    .background-wrapper.active-bg {
      width: 100% !important; }
  .mobile-nav {
    position: fixed;
    top: 150px;
    left: 0;
    right: 0;
    height: calc(100vh - 150px);
    width: 100%;
    padding: 0 4% 100px;
    overflow-y: scroll;
    opacity: 1;
    transition: 0.3s;
    z-index: 900;
    text-align: center;
    pointer-events: none;
    display: none; }
    .mobile-nav.fold-out {
      pointer-events: auto;
      display: block;
      animation: menumove 0.3s linear; }
    .mobile-nav ul {
      margin: 0 auto;
      width: 100%;
      text-align: left; }
      .mobile-nav ul li a,
      .mobile-nav ul li a:visited {
        font-size: 20px;
        font-size: 1.25rem;
        padding: 10px 0;
        color: #fff; }
      .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, .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 {
        color: #fff; }
      .mobile-nav ul li.menu-item-has-children > a:after,
      .mobile-nav ul li.menu-item-has-children > a:visited:after {
        content: "\f078";
        font-family: "Font Awesome 5 free";
        font-weight: 600;
        display: inline-block;
        font-size: 12px;
        font-size: 0.75rem;
        line-height: 1;
        position: relative;
        top: -2px;
        margin-left: 15px; }
      .mobile-nav ul li.fold-out .sub-menu {
        display: block; }
    .mobile-nav:has(.menu-item.toggle) li:not(.toggle) {
      display: none; }
  .mobile-toggle-menu-wrapper .mobile-nav ul {
    gap: 0 !important; }
    .mobile-toggle-menu-wrapper .mobile-nav ul li {
      margin: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%; }
      .mobile-toggle-menu-wrapper .mobile-nav ul li a,
      .mobile-toggle-menu-wrapper .mobile-nav ul li a:visited,
      .mobile-toggle-menu-wrapper .mobile-nav ul li button {
        font-size: 15px;
        font-size: 0.9375rem;
        padding: 14px 0;
        width: 100%;
        text-align: left;
        line-height: 160%;
        color: #fff;
        background: none;
        border: none;
        outline: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        display: block; }
      .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu {
        display: none;
        position: relative;
        padding: 0;
        background: none;
        box-shadow: none;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
        transition: 0.3s; }
        .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li {
          display: block !important; }
          .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a,
          .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a:visited {
            font-size: 18px;
            font-size: 1.125rem;
            color: #000;
            background: none !important;
            text-decoration: none; }
            .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a:hover, .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a:focus,
            .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a:visited:hover,
            .mobile-toggle-menu-wrapper .mobile-nav ul li .sub-menu li a:visited:focus {
              background: none; }
      .mobile-toggle-menu-wrapper .mobile-nav ul li.toggle .sub-menu {
        display: -ms-flexbox !important;
        display: flex !important;
        box-shadow: none;
        width: calc(100% + 10px);
        padding-top: 0;
        transform: none; }
        .mobile-toggle-menu-wrapper .mobile-nav ul li.toggle .sub-menu li a {
          line-height: 140%;
          font-size: 15px;
          padding: 18px 30px;
          color: #fff !important; }
  .mainmenu .container nav ul li.menu-item-has-children:hover .sub-menu {
    display: none; }
  .mainmenu .mobile-nav > ul > li.menu-item-has-children:hover .sub-menu {
    display: block; }
  .mainmenu .mobile-nav > ul > li.menu-item-has-children > a,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:visited,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children > button {
    position: relative;
    padding-right: 40px;
    border: none;
    outline: none;
    border-radius: 0;
    font-family: "komet", sans-serif;
    font-weight: 400;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    transition: 0.3s;
    box-shadow: none !important;
    transform: none !important; }
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:before, .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:after,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:visited:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:visited:after,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > button:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > button:after {
      content: "";
      width: 24px;
      height: 12px;
      background-repeat: no-repeat;
      background-position: center;
      background-size: auto 100%;
      display: inline-block;
      position: absolute;
      top: 50%;
      margin-top: -6px;
      transition: 0.3s;
      left: auto !important;
      border-radius: 0 !important;
      background-color: none !important;
      transform: none !important; }
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:visited:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > button:before {
      left: 0;
      opacity: 0;
      background-image: url("../images/icons/arrow-right-white.svg");
      transform: rotate(180deg) !important;
      filter: none !important; }
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:after,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > a:visited:after,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children > button:after {
      right: 0;
      opacity: 1;
      background-image: url("../images/icons/arrow-right-white.svg"); }
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a:visited,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > button {
    padding-left: 40px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a:visited:before,
    .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > button:before {
      opacity: 1 !important;
      transition-delay: 0.15s;
      left: 0 !important; }
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a:before,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > a:visited:after,
  .mainmenu .mobile-nav > ul > li.menu-item-has-children.toggle > button:after {
    opacity: 0; }
  .logo:hover svg .st0 {
    transform: rotate(45deg) rotate(-45deg); } }

@media only screen and (max-width: 940px) {
  .section.block_content_and_image_left.layout-overflow .block.content-block {
    -ms-flex: 0 1 800px;
        flex: 0 1 800px;
    -ms-flex-order: -2;
        order: -2; }
  .section.block_content_and_image_left.layout-overflow .block.image-block {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%; }
  .section.block_content_and_image_left.layout-overflow:not(.variant-reverse)
.block.content-block {
    padding-top: 0;
    padding-right: 4%;
    padding-bottom: 30px; }
  .section.block_content_and_image_left.layout-overflow.variant-reverse
.block.content-block {
    padding-top: 0;
    padding-left: 4%;
    padding-bottom: 30px; }
  .section.block_content_and_image_left.layout-overflow .block.image-block {
    min-height: 0;
    aspect-ratio: 16/9; }
  .block.collection-overview-block.expertises .collection-wrapper .list-item.expertises {
    -ms-flex: 0 1 calc(50% - 15px);
        flex: 0 1 calc(50% - 15px); } }

@media only screen and (max-width: 820px) {
  .section.block_content_and_image_left.overflow.reverse .block.content-block,
  .section.block_content_and_image_left.overflow .block.content-block {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%;
    padding: 0; }
  .section.block_content_and_image_left.overflow .block-row {
    gap: 30px; }
  .section.block_content_and_image_left.overflow.regular:before {
    width: 100%; }
  .section.block_content_and_image_left.overflow.reverse .block.content-block {
    padding: 0; }
  .section.block_content_and_image_left.overflow .block.image-block {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%;
    min-height: 0;
    aspect-ratio: 16/9; } }

@media only screen and (max-width: 768px) {
  h2, .h2 {
    font-size: 28px;
    font-size: 1.75rem; }
  h3, .h3 {
    font-size: 24px;
    font-size: 1.5rem; }
  .hero.small-hero .container .content-wrapper .hero-title-wrapper .hero-subtitle {
    font-size: 36px;
    font-size: 2.25rem;
    line-height: 1.3; }
  .hero.small-hero .container {
    gap: 40px; }
  .section.content_block_double .block-row {
    gap: 20px; }
    .section.content_block_double .block-row .block.content-block {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
      margin: 0; }
  .section.block_content_and_image_left .block-row, .section.block_content_and_image_left.overflow.reverse .block-row {
    gap: 30px; }
    .section.block_content_and_image_left .block-row .block.image-block, .section.block_content_and_image_left.overflow.reverse .block-row .block.image-block {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
      margin: 0; }
    .section.block_content_and_image_left .block-row .block.content-block, .section.block_content_and_image_left.overflow.reverse .block-row .block.content-block {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
      margin: 0; }
  .section.block_content_and_image_left.overflow .block-row {
    gap: 30px; }
  .section.block_content_and_image_left.overflow .block.content-block {
    padding: 0; }
  .section.block_content_and_image_left.overflow .thumb-side {
    min-height: 400px;
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
    .section.block_content_and_image_left.overflow .thumb-side .bg {
      border-radius: 15px; }
  .hero.small-hero .container .bg {
    height: 400px; }
  .hero.cases-hero .content-wrapper .part-title {
    font-size: 28px;
    font-size: 1.75rem; }
  .cases-bottom .container .right-side {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .cases-bottom .container .left-side {
    gap: 22px; }
  .cases-bottom .container .left-side .cases-bottom-intro-label {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%;
    color: #FFB900; }
  .part.cases-part .inner-wrapper .part-intro {
    font-size: 22px;
    font-size: 1.375rem; }
  .block.collection-overview-block.team .collection-wrapper .list-item.team {
    -ms-flex: 0 1 calc(50% - 15px);
        flex: 0 1 calc(50% - 15px); }
  .section.link_repeater_block.layout-standard .block.link-block-repeater-block .inner-wrapper {
    gap: 30px; }
    .section.link_repeater_block.layout-standard .block.link-block-repeater-block .inner-wrapper .items-wrapper {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
      -ms-flex-pack: start;
          justify-content: flex-start; }
      .section.link_repeater_block.layout-standard .block.link-block-repeater-block .inner-wrapper .items-wrapper .item .inner-item .item-title {
        font-size: 28px;
        font-size: 1.75rem; }
    .section.link_repeater_block.layout-standard .block.link-block-repeater-block .inner-wrapper .title-wrapper {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%; }
  .section.slider_block .block.slider-block .img-wrapper {
    width: 88%; }
  .block.collection-overview-block.expertises .collection-wrapper .list-item.expertises {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; } }

@media only screen and (max-width: 600px) {
  .mainmenu .menu-switch {
    height: 46px; }
  .home .big-hero {
    min-height: 100vh;
    margin-top: -30px; }
    .home .big-hero .container {
      height: 70vh;
      min-height: 550px;
      padding-top: 91px; }
      .home .big-hero .container .image-wrapper {
        display: none; }
      .home .big-hero .container .content-wrapper {
        -ms-flex: 1 0 100%;
            flex: 1 0 100%; }
        .home .big-hero .container .content-wrapper .hero-title-wrapper .hero-title {
          font-size: 38px;
          font-size: 2.375rem;
          line-height: 1.4; }
        .home .big-hero .container .content-wrapper .hero-title-wrapper .hero-subtitle {
          margin-top: 10px; }
        .home .big-hero .container .content-wrapper .button {
          font-size: 15px;
          font-size: 0.9375rem; }
  .hero.small-hero .container .content-wrapper #breadcrumbs, .cases-bottom .container #breadcrumbs {
    font-size: 14px;
    font-size: 0.875rem; }
  .big-hero .container {
    padding-top: 100px; }
    .big-hero .container .content-wrapper .hero-title-wrapper .hero-title {
      font-size: 36px;
      font-size: 2.25rem; }
  .hero.small-hero .hero-shapes .shape.shape-left, .hero.small-hero.no-image .hero-shapes .shape.shape-left {
    left: -120px;
    top: 250px;
    height: 400px;
    width: 400px; }
  .hero.small-hero .hero-shapes .shape.shape-right, .hero.small-hero.no-image .hero-shapes .shape.shape-right {
    right: -100px;
    top: 100px;
    height: 200px;
    width: 200px; }
  .hero.cases-hero {
    height: 60vh;
    min-height: 520px; }
    .hero.cases-hero .bg:after {
      height: 240px;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0)); }
  .hero.small-hero.no-image .container {
    padding-bottom: 20px; }
  .big-hero .container .image-wrapper, .big-hero .container .content-wrapper {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .popup-buttons-wrapper {
    margin-bottom: 0; }
    .popup-buttons-wrapper .button {
      padding: 10px 20px;
      font-size: 14px;
      font-size: 0.875rem; }
  .hero.small-hero .container .content-wrapper .hero-title-wrapper .hero-subtitle {
    font-size: 36px;
    font-size: 2.25rem; }
  .hero.small-hero .container .bg {
    height: 300px; }
  .hero.small-hero .container {
    padding-bottom: 40px; }
  .section.image_block.background-fixed {
    min-height: 300px;
    max-height: 400px; }
  .section.content-block-animation {
    padding-top: 60px; }
    .section.content-block-animation .block.content-block * {
      font-size: 28px;
      font-size: 1.75rem; }
  .section {
    padding: 40px 0; }
  .section.block_content_and_image_left.background-color-gradient {
    padding: 40px 0; }
  .block_content .block.content-block .inner-wrapper .block-title.h2 {
    font-size: 22px;
    font-size: 1.375rem; }
  .section.handpicked-query-overview-block .block.collection-overview-block.cases .collection-wrapper.cases .list-item.cases {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .block.faq-block .inner-wrapper ul.faq-wrapper li.faq-item button.faq-question {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.3; }
  .block.collection-overview-block.team .collection-wrapper .list-item.team {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .section.query-overview-block.cases .list-item.cases {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .section.link_repeater_block.layout-content_repeater .container .block.link-block-repeater-block .inner-wrapper .items-wrapper {
    gap: 20px; }
    .section.link_repeater_block.layout-content_repeater .container .block.link-block-repeater-block .inner-wrapper .items-wrapper .item {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%; }
      .section.link_repeater_block.layout-content_repeater .container .block.link-block-repeater-block .inner-wrapper .items-wrapper .item:after {
        bottom: 0;
        top: auto;
        left: 0;
        right: 0;
        width: 100%;
        height: 1px;
        background: rgba(255, 255, 255, 0.1);
        opacity: 1;
        margin: 0 auto; }
  .part.cases-part .inner-wrapper .part-title {
    font-size: 15px;
    font-size: 0.9375rem; }
  .part.cases-part .inner-wrapper .part-intro {
    font-size: 22px;
    font-size: 1.375rem; }
  .block.collection-overview-block.team .collection-wrapper .list-item.team {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .section.gallery_block {
    padding: 50px 0; }
    .section.gallery_block .container .block.gallery-block .image-gallery-wrapper {
      gap: 20px 40px; }
    .section.gallery_block .container .block.gallery-block .images-per-row-5 .img-wrapper {
      -ms-flex: 0 1 calc(33% - 30px);
          flex: 0 1 calc(33% - 30px); }
  .section.link_repeater_block.layout-standard {
    padding-bottom: 60px; }
  .section.slider_block {
    padding-top: 100px;
    padding-bottom: 100px; }
    .section.slider_block .block.slider-block .img-wrapper {
      width: 92%; }
  .section.cta_with_button_block {
    padding: 60px 0; }
    .section.cta_with_button_block .block.cta-with-button-block .inner-wrapper .title-wrapper .block-title {
      font-size: 32px;
      font-size: 2rem; }
  .block.faq-block .inner-wrapper ul.faq-wrapper li.faq-item {
    padding: 35px 52px 35px 5px; }
  .footer .section.footer-nav .nav-block {
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
    .footer .section.footer-nav .nav-block nav > ul > li {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%; }
  .footer .copyright {
    padding: 20px 0; }
    .footer .copyright nav {
      -ms-flex-order: -1;
          order: -1;
      padding-bottom: 10px; }
      .footer .copyright nav ul li {
        -ms-flex: 0 1 100%;
            flex: 0 1 100%; }
        .footer .copyright nav ul li a {
          padding: 10px 0; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJyZXNwb25zaXZlLWdlbmVyYWwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQ0xIOzs7Ozs7R0FNRztBQWdCSCx5QkFBeUI7QUFPekIseUJBQXlCO0FBK0J6QiwyQkFBMkI7QUFnQjNCLG9CQUFvQjtBQWFwQix1QkFBdUI7QUF1RXZCLHFCQUFxQjtBQW9IckI7RUFDQztJQUNDLGFBQVk7SUFDWixvQkFBbUI7SUFDbkIsc0JBQXFCLEVBQUE7RUFFdEI7SUFDQyxhQUFZO0lBQ1osdUJBQXNCO0lBQ3RCLHlCQUF3QixFQUFBLEVBQUE7O0FDelIxQjtFQUVJO0lBRVEsa0JBQWlCLEVBQ3BCO0VBR0w7SUFFUSxrQkFBaUIsRUFDcEI7RUFHTDtJQUNJLGtDQUE2QjtRQUE3Qiw4QkFBNkIsRUFDaEMsRUFBQTs7QUFJTDtFQUVJO0lBQ0ksbUJBQWtCLEVBQ3JCLEVBQUE7O0FBSUw7RUFFSTtJQUNJLGNBQWEsRUFDaEI7RUFFRDtJQUNJLGlCQUFnQixFQUNuQjtFQUdEO0lBQ0ksV0FBVSxFQUNiO0VBRUQ7SUFFUSxZQUFPO1FBQVAsUUFBTyxFQUNWLEVBQUE7O0FBSVQ7RUFFSTtJQUNJLG1CQUF5QjtRQUF6QiwwQkFBeUIsRUFlNUI7SUFoQkQ7TUFHUSxjQUFhLEVBQ2hCO0lBSkw7TUFPWSxjQUFhLEVBQ2hCO0lBUlQ7TUFXUSxjQUFhLEVBQ2pCO0lBWko7TUFjUSxlQUFjLEVBQ2xCO0VBR0o7SUFDSSxpQkFBZ0I7SUFDaEIsMEJBQXlCO0lBQ3pCLG9CRjlEZ0IsRUVtRW5CO0lBUkQ7TUFNUSx1QkFBc0IsRUFDekI7RUFFTDtJQUNGLGdCQUFlO0lBQ2YsV0FBVTtJQUNWLFFBQU87SUFDUCxTQUFRO0lBQ1IsNEJBQTJCO0lBQzNCLFlBQVc7SUFDWCxvQkFBbUI7SUFDbkIsbUJBQWtCO0lBQ2xCLFdBQVU7SUFDVixpQkFBZ0I7SUFDaEIsYUFBWTtJQUNaLG1C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QUFlLEVBSWxCO0lBTEQ7TURsZkgsZ0JDcWZrQztNRHBmbEMsZ0JBVnVCLEVDK2ZmO0VBR0w7SUFDSSw0QkFBMkIsRUFDOUI7RUFFRDtJQUNJLG1CQUFjO1FBQWQsZUFBYyxFQUlqQjtJQUxEO01BR1EsbUJBQWM7VUFBZCxlQUFjLEVBQ2pCO0VBR0w7SUFDSSxnQkFBZSxFQVlsQjtJQWJEO01BR1EsbUJBQVM7VUFBVCxVQUFTO01BQ1QscUJBQW9CLEVBT3ZCO01BWEw7UUFNWSxtQkFBYztZQUFkLGVBQWMsRUFJakI7UUFWVDtVQVFnQixnQkFBZSxFQUNsQixFQUFBIiwiZmlsZSI6InJlc3BvbnNpdmUtZ2VuZXJhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhYmxlIGZpbGUgXG4gKiBwbGFjZSBnbG9iYWwgdmFyaWFibGVzIGhlcmU6XG4gKlxuICogQHBhY2thZ2UgQ2hlZiBHdXRlbmJlcmcgQ2hpbGQgVGhlbWVcbiAqL1xuXG4kZm9udC1zdGFjazogXCJrb21ldFwiLCBzYW5zLXNlcmlmO1xuJGhlYWQtc3RhY2s6IFwia29tZXRcIiwgc2Fucy1zZXJpZjtcblxuJHdoaXRlOiAjZmZmO1xuJGJsYWNrOiAjMDAwO1xuJGdyZXk6ICNGNEY0RjQ7XG4kcHVycGxlOiAjNjg1NjlFO1xuJGRhcmtQdXJwbGU6ICM0ODM1ODQ7XG4kcmVhbERhcmtQdXJwbGU6ICMxRjFBNDY7XG4kYmx1ZTogJHB1cnBsZTtcbiR5ZWxsb3c6ICNGRkI5MDA7XG5cbiRkYXJrR3JlZW46ICMwMDQyNTg7XG4kZ3JlZW46ICM0MEE1MzY7XG5cbiRib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4kcHJpbWFyeS1jb2xvcjogJGJsdWU7XG4kZm9ybS1pbnB1dC1jb2xvcjogIzk5OTtcbiRmb3JtLWlucHV0LWhvdmVyLWNvbG9yOiAjMDAwO1xuXG4kZXJyb3JDb2xvcjogI2FlMmQzMDtcblxuJGxpZ2h0LXdlaWdodDogMjAwO1xuJHJlZ3VsYXItd2VpZ2h0OiAzMDA7XG4kbWVkaXVtLXdlaWdodDogNDAwO1xuJHNlbWktd2VpZ2h0OiA1MDA7XG4kYm9sZC13ZWlnaHQ6IDYwMDtcblxuJGNvbnRhaW5lcldpZHRoOiAxMTQ4cHg7IiwiLyoqXG4gKiBNaXhpbiBmaWxlIFxuICogQWxsIG91ciBjdXN0b20gbWl4aW5zXG4gKlxuICogQHBhY2thZ2UgQ2hlZiBHdXRlbmJlcmcgQ2hpbGQgVGhlbWVcbiAqIEBzaW5jZSAyMDE5XG4gKi9cblxuLy9tYWtlIGZsZXggcm93cyBhIGJpdCBlYXNpZXI6XG5AbWl4aW4gZmxleC1yb3coJGVxdWFsaXplOiBzdHJldGNoKSB7XG5cdEBpbmNsdWRlIGRpc3BsYXkoZmxleCk7XG5cdEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdyk7XG5cdEBpbmNsdWRlIGFsaWduLWl0ZW1zKCRlcXVhbGl6ZSk7XG59XG5cbi8vbWFrZSBmbGV4IGNvbHVtbnMgYSBiaXQgZWFzaWVyOlxuQG1peGluIGZsZXgtY29sKCRlcXVhbGl6ZTogc3RyZXRjaCkge1xuXHRAaW5jbHVkZSBkaXNwbGF5KGZsZXgpO1xuXHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuXHRAaW5jbHVkZSBhbGlnbi1pdGVtcygkZXF1YWxpemUpO1xufVxuXG4vKiBCb3hzaXppbmcgc2hvcnRjdXQ6ICovXG5AbWl4aW4gYm9yZGVyYm94KCkge1xuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogVHJhbnNmb3JtIHNob3J0Y3V0cyAqL1xuXG4vLyByb3RhdGVcbkBtaXhpbiByb3RhdGUoJGRlZykge1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKCN7JGRlZ31kZWcpKTtcbn1cblxuLy8gc2NhbGVcbkBtaXhpbiBzY2FsZSgkc2NhbGUpIHtcblx0QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKCRzY2FsZSkpO1xufVxuXG4vLyB0cmFuc2xhdGVcbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG5cdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoJHgsICR5KSk7XG59XG5cbi8vIHNrZXdcbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0oc2tldygjeyR4fWRlZywgI3skeX1kZWcpKTtcbn1cblxuLy90cmFuc2Zvcm0gb3JpZ2luXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG5cdG1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuXHQtby10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuXHQtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG4vKiBTdHlsaW5nIHBsYWNlaG9sZGVyczogKi9cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG5cdCYucGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cdCY6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLyogUmV0aW5hIGltYWdlczogKi9cbkBtaXhpbiBpbWFnZS0yeCgkaW1hZ2UsICR3aWR0aCwgJGhlaWdodCkge1xuXHRAbWVkaWEgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcblx0XHQoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi42LzIpLFxuXHRcdCgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG5cdFx0KG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG5cdFx0KG1pbi1yZXNvbHV0aW9uOiAxLjNkcHB4KSB7XG5cdFx0Lyogb24gcmV0aW5hLCB1c2UgaW1hZ2UgdGhhdCdzIHNjYWxlZCBieSAyICovXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZSk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufVxuXG4vKiBcIkhhcmRcIiBncmFkaWVudHM6ICovXG5AbWl4aW4gZ3JhZGllbnQtaGFyZCgkc3RhcnQsICRlbmQ6ICNmZmYsICRkaXJlY3Rpb246IFwiaG9yaXpvbnRhbFwiKSB7XG5cdEBpZiAkZGlyZWN0aW9uID09IFwiaG9yaXpvbnRhbFwiIHtcblx0XHRAaW5jbHVkZSBncmFkaWVudC1oYXJkLWhvcml6b250YWwoJHN0YXJ0LCAkZW5kKTtcblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgZ3JhZGllbnQtaGFyZC12ZXJ0aWNhbCgkc3RhcnQsICRlbmQpO1xuXHR9XG59XG5cbkBtaXhpbiBncmFkaWVudC1oYXJkLWhvcml6b250YWwoJGZyb20sICR0bykge1xuXHRiYWNrZ3JvdW5kOiAkdG87XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQoXG5cdFx0bGluZWFyLFxuXHRcdGxlZnQgdG9wLFxuXHRcdHJpZ2h0IHRvcCxcblx0XHRjb2xvci1zdG9wKDAlLCAkZnJvbSksXG5cdFx0Y29sb3Itc3RvcCg1MCUsICRmcm9tKSxcblx0XHRjb2xvci1zdG9wKDUwJSwgJHRvKSxcblx0XHRjb2xvci1zdG9wKDEwMCUsICR0bylcblx0KTtcblx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoXG5cdFx0bGVmdCxcblx0XHQkZnJvbSAwJSxcblx0XHQkZnJvbSA1MCUsXG5cdFx0JHRvIDUwJSxcblx0XHQkdG8gMTAwJVxuXHQpO1xuXHRiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChcblx0XHRsZWZ0LFxuXHRcdCRmcm9tIDAlLFxuXHRcdCRmcm9tIDUwJSxcblx0XHQkdG8gNTAlLFxuXHRcdCR0byAxMDAlXG5cdCk7XG5cdGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgJGZyb20gMCUsICRmcm9tIDUwJSwgJHRvIDUwJSwgJHRvIDEwMCUpO1xuXHRiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJGZyb20gMCUsICRmcm9tIDUwJSwgJHRvIDUwJSwgJHRvIDEwMCUpO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRmcm9tIDAlLCAkZnJvbSA1MCUsICR0byA1MCUsICR0byAxMDAlKTtcblx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRmcm9tJywgZW5kQ29sb3JzdHI9JyR0bycsR3JhZGllbnRUeXBlPTEgKTtcbn1cblxuQG1peGluIGdyYWRpZW50LWhhcmQtdmVydGljYWwoJGZyb20sICR0bykge1xuXHRiYWNrZ3JvdW5kOiAkdG87XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQoXG5cdFx0bGluZWFyLFxuXHRcdHRvcCB0b3AsXG5cdFx0cmlnaHQgdG9wLFxuXHRcdGNvbG9yLXN0b3AoMCUsICRmcm9tKSxcblx0XHRjb2xvci1zdG9wKDUwJSwgJGZyb20pLFxuXHRcdGNvbG9yLXN0b3AoNTAlLCAkdG8pLFxuXHRcdGNvbG9yLXN0b3AoMTAwJSwgJHRvKVxuXHQpO1xuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChcblx0XHR0b3AsXG5cdFx0JGZyb20gMCUsXG5cdFx0JGZyb20gNTAlLFxuXHRcdCR0byA1MCUsXG5cdFx0JHRvIDEwMCVcblx0KTtcblx0YmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAkZnJvbSAwJSwgJGZyb20gNTAlLCAkdG8gNTAlLCAkdG8gMTAwJSk7XG5cdGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAkZnJvbSAwJSwgJGZyb20gNTAlLCAkdG8gNTAlLCAkdG8gMTAwJSk7XG5cdGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRmcm9tIDAlLCAkZnJvbSA1MCUsICR0byA1MCUsICR0byAxMDAlKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdHRvIGJvdHRvbSxcblx0XHQkZnJvbSAwJSxcblx0XHQkZnJvbSA1MCUsXG5cdFx0JHRvIDUwJSxcblx0XHQkdG8gMTAwJVxuXHQpO1xuXHRmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nJGZyb20nLCBlbmRDb2xvcnN0cj0nJHRvJyxHcmFkaWVudFR5cGU9MSApO1xufVxuXG4vKiBSRU0gZm9udCBzaXplczogKi9cbkBmdW5jdGlvbiBjYWxjdWxhdGVSZW0oJHNpemUpIHtcblx0JHJlbVNpemU6ICRzaXplIC8gMTZweDtcblx0QHJldHVybiAkcmVtU2l6ZSAqIDFyZW07XG59XG5cbkBtaXhpbiBicmVhay1jb250YWluZXIoKSB7XG5cdG1hcmdpbi1sZWZ0OiBjYWxjKC01MHZ3ICsgNTAlKTtcblx0bWFyZ2luLXJpZ2h0OiBjYWxjKC01MHZ3ICsgNTAlKTtcbn1cblxuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZSkge1xuXHRmb250LXNpemU6ICRzaXplO1xuXHRmb250LXNpemU6IGNhbGN1bGF0ZVJlbSgkc2l6ZSk7XG59XG5cbkBtaXhpbiBidXR0b24oKSB7XG5cdC8vIEJhc2UgZ3JhZGllbnQgYmFja2dyb3VuZCBtYXRjaGluZyB0aGUgaW1hZ2UgKGRhcmsgcHVycGxlIHdpdGggdmVydGljYWwgZ3JhZGllbnQpXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcblx0XHQxODBkZWcsXG5cdFx0cmdiYSgxMDQsIDg2LCAxNTgsIDEpIDAlLCAgICAgIC8vIExpZ2h0ZXIgcHVycGxlIGF0IHRvcCAoJHB1cnBsZSlcblx0XHRyZ2JhKDcyLCA1MywgMTMyLCAxKSA1MCUsICAgICAgIC8vIE1lZGl1bSBwdXJwbGUgaW4gbWlkZGxlICgkZGFya1B1cnBsZSlcblx0XHRyZ2JhKDMxLCAyNiwgNzAsIDEpIDEwMCUgICAgICAgIC8vIERhcmsgcHVycGxlL2JsYWNrIGF0IGJvdHRvbSAoJHJlYWxEYXJrUHVycGxlKVxuXHQpO1xuXHRwYWRkaW5nOiAxNXB4IDIycHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Ym9yZGVyLXJhZGl1czogMzBweDtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcblx0Y29sb3I6ICR3aGl0ZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGZvbnQtd2VpZ2h0OiAkbWVkaXVtLXdlaWdodDtcblx0XG5cdC8vIFB1bHNpbmcgZ3JhZGllbnQgb3ZlcmxheSAtIGNvbnRpbnVvdXNseSBwdWxzaW5nXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG5cdFx0XHQxODBkZWcsXG5cdFx0XHRyZ2JhKDEwNCwgODYsIDE1OCwgMC45KSAwJSxcblx0XHRcdHJnYmEoNzIsIDUzLCAxMzIsIDAuOTUpIDUwJSxcblx0XHRcdHJnYmEoMzEsIDI2LCA3MCwgMSkgMTAwJVxuXHRcdCk7XG5cdFx0b3BhY2l0eTogMC4zO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0YW5pbWF0aW9uOiBwdWxzZS1ncmFkaWVudC1zbW9vdGggNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG5cdFx0Ym9yZGVyLXJhZGl1czogMzBweDtcblx0fVxuXHRcblx0Ly8gU2hpbW1lci9zaGluZSBlZmZlY3Qgb24gaG92ZXJcblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC01MCU7XG5cdFx0bGVmdDogLTUwJTtcblx0XHR3aWR0aDogMjAwJTtcblx0XHRoZWlnaHQ6IDIwMCU7XG5cdFx0YmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuXHRcdFx0Y2lyY2xlLFxuXHRcdFx0cmdiYSgkd2hpdGUsIDAuMikgMCUsXG5cdFx0XHRyZ2JhKCR3aGl0ZSwgMC4xKSAzMCUsXG5cdFx0XHR0cmFuc3BhcmVudCA3MCVcblx0XHQpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDApO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG5cdFx0ei1pbmRleDogMjtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdH1cblx0XG5cdC8vIFRleHQvY29udGVudCBzaG91bGQgYmUgYWJvdmUgdGhlIGdyYWRpZW50c1xuXHQ+ICoge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAzO1xuXHR9XG5cdFxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcblx0XHRib3gtc2hhZG93OiBcblx0XHRcdDAgMTBweCAyNXB4IHJnYmEoNzIsIDUzLCAxMzIsIDAuNiksXG5cdFx0XHQwIDVweCAxMHB4IHJnYmEoMzEsIDI2LCA3MCwgMC40KTtcblx0XHRcblx0XHQvLyBJbnRlbnNpZnkgcHVsc2luZyBvbiBob3ZlclxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRhbmltYXRpb24tZHVyYXRpb246IDJzO1xuXHRcdFx0b3BhY2l0eTogMC41O1xuXHRcdH1cblx0XHRcblx0XHQvLyBFeHBhbmQgc2hpbW1lciBlZmZlY3Qgc21vb3RobHlcblx0XHQmOjphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjIpO1xuXHRcdH1cblx0fVxuXHRcblx0JjphY3RpdmUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblx0XHRib3gtc2hhZG93OiBcblx0XHRcdDAgNXB4IDE1cHggcmdiYSg3MiwgNTMsIDEzMiwgMC41KSxcblx0XHRcdDAgM3B4IDZweCByZ2JhKDMxLCAyNiwgNzAsIDAuMyk7XG5cdFx0XG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG5cdFx0fVxuXHR9XG59XG5cbi8vIFNtb290aCBwdWxzaW5nIGdyYWRpZW50IGFuaW1hdGlvbiAtIGNvbnRpbnVvdXNseSBwdWxzaW5nXG5Aa2V5ZnJhbWVzIHB1bHNlLWdyYWRpZW50LXNtb290aCB7XG5cdDAlLCAxMDAlIHtcblx0XHRvcGFjaXR5OiAwLjI7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRmaWx0ZXI6IGJyaWdodG5lc3MoMSk7XG5cdH1cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcblx0XHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4xNSk7XG5cdH1cbn1cblxuQG1peGluIHJlbW92ZS1lbGVtZW50KCkge1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IDFweDtcblx0d2lkdGg6IDFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy9Db250YWluZXIgd2hpdGVzcGFjZVxuQGZ1bmN0aW9uIGNhbGMtY29udGFpbmVyLXdoaXRlc3BhY2UoJGNvbnRhaW5lcikge1xuXHRAcmV0dXJuIGNhbGMoKCgxMDB2dyAtICN7JGNvbnRhaW5lcn0gLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDE3cHgpKSAvIDIpKTtcbn1cblxuXG4vL0ZsZXggc29sdXRpb25cbkBtaXhpbiBibG9jay1zaXplKCRzaXplLCAkaXRlbUluUm93LCAkZ2FwKSB7XG5cdGZsZXg6IDAgMSBjYWxjLXdoaXRlc3BhY2UoJHNpemUsICRpdGVtSW5Sb3csICRnYXApO1xufVxuXG5AZnVuY3Rpb24gY2FsYy13aGl0ZXNwYWNlKCRiYXNlLCAkaXRlbUluUm93LCAkZ2FwKSB7XG5cdEByZXR1cm4gY2FsYygjeyRiYXNlfSAtICgoI3skaXRlbUluUm93fSAtIDEpICogI3skZ2FwfSAvICN7JGl0ZW1JblJvd30pKTtcbn1cblxuLy9SZXR1cm5cbkBmdW5jdGlvbiByZXR1cm4tYmxvY2stc2l6ZSgkc2l6ZSwgJGl0ZW1JblJvdywgJGdhcCkge1xuXHRAcmV0dXJuIGNhbGMtd2hpdGVzcGFjZSgkc2l6ZSwgJGl0ZW1JblJvdywgJGdhcCk7XG59IiwiQGltcG9ydCBcImJhc2UvX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJhc2UvX21peGluc1wiO1xuXG4vL2JpZ2dlciB0aGFuIDE0ODBcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ4MXB4KSB7XG5cbiAgICAuc2VjdGlvbi5xdWVyeS1vdmVydmlldy1ibG9jay5wb3N0e1xuICAgICAgICAuY29udGFpbmVye1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNlY3Rpb24ucXVlcnktb3ZlcnZpZXctYmxvY2suY2FzZXMsIC5zZWN0aW9uLnF1ZXJ5LW92ZXJ2aWV3LWJsb2NrLnBvc3Rze1xuICAgICAgICAuY29udGFpbmVye1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi5xdWVyeS1vdmVydmlldy1ibG9jay5jYXNlcyAubGlzdC1pdGVtLmNhc2VzLCAuc2VjdGlvbi5xdWVyeS1vdmVydmlldy1ibG9jay5wb3N0cyAubGlzdC1pdGVtLnBvc3R7XG4gICAgICAgIGZsZXg6IDAgMSBjYWxjKDMzLjMzJSAtIDIwcHgpO1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0ODBweCkge1xuXHRcbiAgICBoZWFkZXIubWFpbm1lbnUgLmNvbnRhaW5lcntcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuXHRcbiAgICAuY29udGFpbmVye1xuICAgICAgICBwYWRkaW5nOiAwIDQlO1xuICAgIH1cblxuICAgIGhlYWRlci5tYWlubWVudSAuY29udGFpbmVye1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQlO1xuICAgIH1cblxuXG4gICAgLnNlY3Rpb24uc2xpZGVyX2Jsb2NrIC5jb250YWluZXJ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmhvbWUgLmJpZy1oZXJvIC5jb250YWluZXJ7XG4gICAgICAgIC5jb250ZW50LXdyYXBwZXIsIC5pbWFnZS13cmFwcGVye1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDgwcHgpIHtcblxuICAgIGhlYWRlci5tYWlubWVudSAuY29udGFpbmVyIC5iaWctbWVudS1zaWRle1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAudG9wLW5hdntcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNhbGwtdG8tYWN0aW9uLWJ1dHRvbntcbiAgICAgICAgICAgIC5idXR0b257XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgIC50b2dnbGUtbWVudS13cmFwcGVye1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICB9XG4gICAgICAgLm1vYmlsZS10b2dnbGUtbWVudS13cmFwcGVye1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgfVxuICAgIH1cblxuICAgIC5iYWNrZ3JvdW5kLXdyYXBwZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcmVhbERhcmtQdXJwbGU7XG4gICAgICAgIFxuICAgICAgICAmLmFjdGl2ZS1iZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tb2JpbGUtbmF2IHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0dG9wOiAxNTBweDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDE1MHB4KTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwYWRkaW5nOiAwIDQlIDEwMHB4O1xuXHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0ei1pbmRleDogOTAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRkaXNwbGF5OiBub25lO1xuXHQgIFxuXHRcdCYuZm9sZC1vdXQge1xuXHRcdCAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cdFx0ICBkaXNwbGF5OiBibG9jaztcblx0XHQgIGFuaW1hdGlvbjogbWVudW1vdmUgMC4zcyBsaW5lYXI7XG5cdFx0fVxuXHQgIFxuXHRcdHVsIHtcblx0XHQgIG1hcmdpbjogMCBhdXRvO1xuXHRcdCAgd2lkdGg6IDEwMCU7XG5cdFx0ICB0ZXh0LWFsaWduOiBsZWZ0O1xuXHQgIFxuXHRcdCAgbGkge1xuXHRcdFx0YSxcblx0XHRcdGE6dmlzaXRlZCB7XG5cdFx0XHQgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMHB4KTtcblx0XHRcdCAgcGFkZGluZzogMTBweCAwO1xuXHRcdFx0ICBjb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHQgIFxuXHRcdFx0Ji5jdXJyZW50LW1lbnUtaXRlbSxcblx0XHRcdCYuY3VycmVudC1wYWdlLXBhcmVudCxcblx0XHRcdCYuY3VycmVudF9wYWdlX3BhcmVudCxcblx0XHRcdCYubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5jdXJyZW50X3BhZ2VfcGFyZW50IHtcblx0XHRcdCAgPiBhLFxuXHRcdFx0ICA+IGE6dmlzaXRlZCB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHQgIH1cblx0XHRcdH1cblx0ICBcblx0XHRcdCYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG5cdFx0XHQgID4gYSxcblx0XHRcdCAgPiBhOnZpc2l0ZWQge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ICBjb250ZW50OiBcIlxcZjA3OFwiO1xuXHRcdFx0XHQgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IGZyZWVcIjtcblx0XHRcdFx0ICBmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ICBAaW5jbHVkZSBmb250LXNpemUoMTJweCk7XG5cdFx0XHRcdCAgbGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHQgIHRvcDogLTJweDtcblx0XHRcdFx0ICBtYXJnaW4tbGVmdDogMTVweDtcblx0XHRcdFx0fVxuXHRcdFx0ICB9XG5cdFx0XHR9XG5cdCAgXG5cdFx0XHQmLmZvbGQtb3V0IC5zdWItbWVudSB7XG5cdFx0XHQgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdCAgfVxuXHRcdH1cblx0ICBcblx0XHQmOmhhcygubWVudS1pdGVtLnRvZ2dsZSkgbGk6bm90KC50b2dnbGUpIHtcblx0XHQgIGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHQgIH1cblx0ICBcblx0ICAubW9iaWxlLXRvZ2dsZS1tZW51LXdyYXBwZXIgLm1vYmlsZS1uYXYgdWwge1xuXHRcdGdhcDogMCAhaW1wb3J0YW50O1xuXHQgIFxuXHRcdGxpIHtcblx0XHQgIG1hcmdpbjogMDtcblx0XHQgIGZsZXg6IDAgMSAxMDAlO1xuXHQgIFxuXHRcdCAgYSxcblx0XHQgIGE6dmlzaXRlZCxcblx0XHQgIGJ1dHRvbiB7XG5cdFx0XHRAaW5jbHVkZSBmb250LXNpemUoMTVweCk7XG5cdFx0XHRwYWRkaW5nOiAxNHB4IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRsaW5lLWhlaWdodDogMTYwJTtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4yKTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgfVxuXHQgIFxuXHRcdCAgLnN1Yi1tZW51IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXHRcdFx0dHJhbnNpdGlvbjogMC4zcztcblx0ICBcblx0XHRcdGxpIHtcblx0XHRcdCAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0ICBcblx0XHRcdCAgYSxcblx0XHRcdCAgYTp2aXNpdGVkIHtcblx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKDE4cHgpO1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0ICBcblx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdCAgYmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0ICB9XG5cdFx0XHR9XG5cdFx0ICB9XG5cdCAgXG5cdFx0ICAmLnRvZ2dsZSAuc3ViLW1lbnUge1xuXHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyAxMHB4KTtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0bGkgYSB7XG5cdFx0XHQgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuXHRcdFx0ICBmb250LXNpemU6IDE1cHg7XG5cdFx0XHQgIHBhZGRpbmc6IDE4cHggMzBweDtcblx0XHRcdCAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdCAgfVxuXHRcdH1cblx0ICB9XG5cdCAgLm1haW5tZW51IC5jb250YWluZXIgbmF2IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Yi1tZW51e1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdCAgfVxuXHQgIC5tYWlubWVudSAubW9iaWxlLW5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG5cdFx0Jjpob3ZlciAuc3ViLW1lbnV7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdFx0PiBhLFxuXHRcdD4gYTp2aXNpdGVkLFxuXHRcdD4gYnV0dG9uIHtcblx0XHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0ICBib3JkZXI6IG5vbmU7XG5cdFx0ICBvdXRsaW5lOiBub25lO1xuXHRcdCAgYm9yZGVyLXJhZGl1czogMDtcblx0XHQgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjaztcblx0XHQgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtLXdlaWdodDtcblx0XHQgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG5cdFx0ICB0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdCAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdCAgJjpiZWZvcmUsXG5cdFx0ICAmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR3aWR0aDogMjRweDtcblx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bWFyZ2luLXRvcDogLTZweDtcblx0XHRcdHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblx0XHQgIH1cblx0ICBcblx0XHQgICY6YmVmb3JlIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2Fycm93LXJpZ2h0LXdoaXRlLnN2Z1wiKTtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdCAgfVxuXHQgIFxuXHRcdCAgJjphZnRlciB7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvYXJyb3ctcmlnaHQtd2hpdGUuc3ZnXCIpO1xuXHRcdCAgfVxuXHRcdH1cblx0ICBcblx0XHQmLnRvZ2dsZSA+IGEsXG5cdFx0Ji50b2dnbGUgPiBhOnZpc2l0ZWQsXG5cdFx0Ji50b2dnbGUgPiBidXR0b24ge1xuXHRcdCAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRcdCAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjIpO1xuXHRcdCAgJjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG4gICAgICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdFx0ICB9XG5cdFx0fVxuXHQgIFxuXHRcdCYudG9nZ2xlID4gYTpiZWZvcmUsXG5cdFx0Ji50b2dnbGUgPiBhOnZpc2l0ZWQ6YWZ0ZXIsXG5cdFx0Ji50b2dnbGUgPiBidXR0b246YWZ0ZXIge1xuXHRcdCAgb3BhY2l0eTogMDtcblx0XHR9XG4gICAgfVxuICAgIC5sb2dve1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgLnN0MCB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgIC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQubGF5b3V0LW92ZXJmbG93IC5ibG9jay5jb250ZW50LWJsb2NrIHtcblx0XHRmbGV4OiAwIDEgODAwcHg7XG5cdFx0b3JkZXI6IC0yO1xuXHR9XG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQubGF5b3V0LW92ZXJmbG93IC5ibG9jay5pbWFnZS1ibG9jayB7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdH1cblxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0LmxheW91dC1vdmVyZmxvdzpub3QoLnZhcmlhbnQtcmV2ZXJzZSlcblx0XHQuYmxvY2suY29udGVudC1ibG9jayB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogNCU7XG5cdFx0cGFkZGluZy1ib3R0b206IDMwcHg7XG5cdH1cblxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0LmxheW91dC1vdmVyZmxvdy52YXJpYW50LXJldmVyc2Vcblx0XHQuYmxvY2suY29udGVudC1ibG9jayB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0cGFkZGluZy1sZWZ0OiA0JTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcblx0fVxuXG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQubGF5b3V0LW92ZXJmbG93IC5ibG9jay5pbWFnZS1ibG9jayB7XG5cdFx0bWluLWhlaWdodDogMDtcblx0XHRhc3BlY3QtcmF0aW86IDE2Lzk7XG5cdH1cblxuICAgIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrLmV4cGVydGlzZXMgLmNvbGxlY3Rpb24td3JhcHBlciAubGlzdC1pdGVtLmV4cGVydGlzZXN7XG4gICAgICAgIGZsZXg6IDAgMSBjYWxjKDUwJSAtIDE1cHgpO1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgyMHB4KSB7XG5cbiAgICAuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0Lm92ZXJmbG93LnJldmVyc2UgLmJsb2NrLmNvbnRlbnQtYmxvY2ssXG4gICAgLnNlY3Rpb24uYmxvY2tfY29udGVudF9hbmRfaW1hZ2VfbGVmdC5vdmVyZmxvdyAuYmxvY2suY29udGVudC1ibG9ja3tcblx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cdC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQub3ZlcmZsb3cgLmJsb2NrLXJvd3tcblx0XHRnYXA6IDMwcHg7XG5cdH1cblx0LnNlY3Rpb24uYmxvY2tfY29udGVudF9hbmRfaW1hZ2VfbGVmdC5vdmVyZmxvdy5yZWd1bGFyOmJlZm9yZXtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0Lm92ZXJmbG93LnJldmVyc2UgLmJsb2NrLmNvbnRlbnQtYmxvY2t7XG5cdFx0cGFkZGluZzogMDtcblx0fVxuXHQuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0Lm92ZXJmbG93IC5ibG9jay5pbWFnZS1ibG9ja3tcblx0XHRmbGV4OiAwIDEgMTAwJTtcblx0XHRtaW4taGVpZ2h0OiAwO1xuXHRcdGFzcGVjdC1yYXRpbzogMTYvOTtcblx0fVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAgIGgyLCAuaDJ7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyOHB4KTtcbiAgICB9XG4gICAgXG4gICAgaDMsIC5oM3tcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDI0cHgpO1xuICAgIH1cblxuICAgIC5oZXJvLnNtYWxsLWhlcm8gLmNvbnRhaW5lciAuY29udGVudC13cmFwcGVyIC5oZXJvLXRpdGxlLXdyYXBwZXIgLmhlcm8tc3VidGl0bGV7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzNnB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB9XG5cbiAgICAuaGVyby5zbWFsbC1oZXJvIC5jb250YWluZXJ7XG4gICAgICAgIGdhcDogNDBweDtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi5jb250ZW50X2Jsb2NrX2RvdWJsZXtcbiAgICAgICAgLmJsb2NrLXJvd3tcbiAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICAgIC5ibG9jay5jb250ZW50LWJsb2Nre1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQgLmJsb2NrLXJvdywgLnNlY3Rpb24uYmxvY2tfY29udGVudF9hbmRfaW1hZ2VfbGVmdC5vdmVyZmxvdy5yZXZlcnNlIC5ibG9jay1yb3d7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgLmJsb2NrLmltYWdlLWJsb2Nre1xuICAgICAgICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrLmNvbnRlbnQtYmxvY2t7XG4gICAgICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLmJsb2NrX2NvbnRlbnRfYW5kX2ltYWdlX2xlZnQub3ZlcmZsb3d7XG4gICAgICAgIC5ibG9jay1yb3d7XG4gICAgICAgICAgICBnYXA6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrLmNvbnRlbnQtYmxvY2t7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIC50aHVtYi1zaWRle1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgICAgIC5iZ3tcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8uc21hbGwtaGVybyAuY29udGFpbmVyIC5iZ3tcbiAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICB9XG5cbiAgICAuaGVyby5jYXNlcy1oZXJvIC5jb250ZW50LXdyYXBwZXIgLnBhcnQtdGl0bGV7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyOHB4KTtcbiAgICB9XG5cbiAgICAuY2FzZXMtYm90dG9tIC5jb250YWluZXIgLnJpZ2h0LXNpZGV7XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cblxuICAgIC5jYXNlcy1ib3R0b20gLmNvbnRhaW5lciAubGVmdC1zaWRle1xuICAgICAgICBnYXA6IDIycHg7XG4gICAgfVxuICAgIC5jYXNlcy1ib3R0b20gLmNvbnRhaW5lciAubGVmdC1zaWRlIC5jYXNlcy1ib3R0b20taW50cm8tbGFiZWx7XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICB9XG5cbiAgICAucGFydC5jYXNlcy1wYXJ0IC5pbm5lci13cmFwcGVyIC5wYXJ0LWludHJve1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjJweCk7XG4gICAgfVxuXG4gICAgLmJsb2NrLmNvbGxlY3Rpb24tb3ZlcnZpZXctYmxvY2sudGVhbSAuY29sbGVjdGlvbi13cmFwcGVyIC5saXN0LWl0ZW0udGVhbXtcbiAgICAgICAgZmxleDogMCAxIGNhbGMoNTAlIC0gMTVweCk7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24ubGlua19yZXBlYXRlcl9ibG9jay5sYXlvdXQtc3RhbmRhcmQgLmJsb2NrLmxpbmstYmxvY2stcmVwZWF0ZXItYmxvY2sgLmlubmVyLXdyYXBwZXJ7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgLml0ZW1zLXdyYXBwZXJ7XG4gICAgICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIC5pdGVtIC5pbm5lci1pdGVtIC5pdGVtLXRpdGxle1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyOHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGl0bGUtd3JhcHBlcntcbiAgICAgICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb24uc2xpZGVyX2Jsb2NrIC5ibG9jay5zbGlkZXItYmxvY2sgLmltZy13cmFwcGVye1xuICAgICAgICB3aWR0aDogODglO1xuICAgIH1cblxuICAgIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrLmV4cGVydGlzZXMgLmNvbGxlY3Rpb24td3JhcHBlciAubGlzdC1pdGVtLmV4cGVydGlzZXN7XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cbiAgICBcblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG5cdFxuICAgIC5tYWlubWVudSAubWVudS1zd2l0Y2h7XG4gICAgICAgIGhlaWdodDogNDZweDtcbiAgICB9XG5cbiAgICBoZWFkZXIubWFpbm1lbnV7XG4gICAgICAgIC8vYmFja2dyb3VuZDogJHJlYWxEYXJrUHVycGxlO1xuICAgIH1cblxuICAgIC5ob21lIC5iaWctaGVyb3tcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICAuY29udGFpbmVye1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHZoO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOTFweDtcbiAgICAgICAgICAgIC5pbWFnZS13cmFwcGVye1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICAgICAgICAuaGVyby10aXRsZS13cmFwcGVyIC5oZXJvLXRpdGxle1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMzhweCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5oZXJvLXRpdGxlLXdyYXBwZXIgLmhlcm8tc3VidGl0bGV7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idXR0b257XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNXB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby5zbWFsbC1oZXJvIC5jb250YWluZXIgLmNvbnRlbnQtd3JhcHBlciAjYnJlYWRjcnVtYnMsIC5jYXNlcy1ib3R0b20gLmNvbnRhaW5lciAjYnJlYWRjcnVtYnN7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNHB4KTtcbiAgICB9XG5cbiAgICAuYmlnLWhlcm8gLmNvbnRhaW5lcntcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgICAgICAuY29udGVudC13cmFwcGVyIC5oZXJvLXRpdGxlLXdyYXBwZXIgLmhlcm8tdGl0bGV7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMzZweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby5zbWFsbC1oZXJvIC5oZXJvLXNoYXBlcywgLmhlcm8uc21hbGwtaGVyby5uby1pbWFnZSAuaGVyby1zaGFwZXN7XG4gICAgICAgIC5zaGFwZS5zaGFwZS1sZWZ0e1xuICAgICAgICAgICAgbGVmdDogLTEyMHB4O1xuICAgICAgICAgICAgdG9wOiAyNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnNoYXBlLnNoYXBlLXJpZ2h0e1xuICAgICAgICAgICAgcmlnaHQ6IC0xMDBweDtcbiAgICAgICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5oZXJvLmNhc2VzLWhlcm97XG4gICAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgICAgbWluLWhlaWdodDogNTIwcHg7XG4gICAgICAgIC5iZzphZnRlcntcbiAgICAgICAgICAgIGhlaWdodDogMjQwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNyksIHJnYmEoMCwgMCwgMCwgMCkpO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby5zbWFsbC1oZXJvLm5vLWltYWdlIC5jb250YWluZXJ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5iaWctaGVybyAuY29udGFpbmVyIC5pbWFnZS13cmFwcGVyLCAuYmlnLWhlcm8gLmNvbnRhaW5lciAuY29udGVudC13cmFwcGVye1xuICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB9XG5cbiAgICAucG9wdXAtYnV0dG9ucy13cmFwcGVye1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAuYnV0dG9ue1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8uc21hbGwtaGVybyAuY29udGFpbmVyIC5jb250ZW50LXdyYXBwZXIgLmhlcm8tdGl0bGUtd3JhcHBlciAuaGVyby1zdWJ0aXRsZXtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDM2cHgpO1xuICAgIH1cblxuICAgIC5oZXJvLnNtYWxsLWhlcm8gLmNvbnRhaW5lciAuYmd7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuXG4gICAgLmhlcm8uc21hbGwtaGVybyAuY29udGFpbmVye1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi5pbWFnZV9ibG9jay5iYWNrZ3JvdW5kLWZpeGVke1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24uY29udGVudC1ibG9jay1hbmltYXRpb257XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgICAuYmxvY2suY29udGVudC1ibG9jayAqe1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDI4cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb257XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi5ibG9ja19jb250ZW50X2FuZF9pbWFnZV9sZWZ0LmJhY2tncm91bmQtY29sb3ItZ3JhZGllbnR7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICB9XG5cbiAgICAuYmxvY2tfY29udGVudCAuYmxvY2suY29udGVudC1ibG9jayAuaW5uZXItd3JhcHBlciAuYmxvY2stdGl0bGUuaDJ7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMnB4KTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi5oYW5kcGlja2VkLXF1ZXJ5LW92ZXJ2aWV3LWJsb2NrIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrLmNhc2VzIC5jb2xsZWN0aW9uLXdyYXBwZXIuY2FzZXMgLmxpc3QtaXRlbS5jYXNlc3tcbiAgICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgfVxuXG4gICAgLmJsb2NrLmZhcS1ibG9jayAuaW5uZXItd3JhcHBlciB1bC5mYXEtd3JhcHBlciBsaS5mYXEtaXRlbSBidXR0b24uZmFxLXF1ZXN0aW9ue1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjJweCk7IFxuICAgICAgICBsaW5lLWhlaWdodDogMS4zOyAgICAgIFxuICAgIH1cblxuICAgIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrLnRlYW0gLmNvbGxlY3Rpb24td3JhcHBlciAubGlzdC1pdGVtLnRlYW17XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLnF1ZXJ5LW92ZXJ2aWV3LWJsb2NrLmNhc2VzIC5saXN0LWl0ZW0uY2FzZXN7XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLmxpbmtfcmVwZWF0ZXJfYmxvY2subGF5b3V0LWNvbnRlbnRfcmVwZWF0ZXIgLmNvbnRhaW5lciAuYmxvY2subGluay1ibG9jay1yZXBlYXRlci1ibG9jayAuaW5uZXItd3JhcHBlciAuaXRlbXMtd3JhcHBlcntcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAuaXRlbXtcbiAgICAgICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYXJ0LmNhc2VzLXBhcnQgLmlubmVyLXdyYXBwZXJ7XG4gICAgICAgIC5wYXJ0LXRpdGxle1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5wYXJ0LWludHJve1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIycHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5ibG9jay5jb2xsZWN0aW9uLW92ZXJ2aWV3LWJsb2NrLnRlYW0gLmNvbGxlY3Rpb24td3JhcHBlciAubGlzdC1pdGVtLnRlYW17XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuc2VjdGlvbi5nYWxsZXJ5X2Jsb2Nre1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICAgIC5jb250YWluZXIgLmJsb2NrLmdhbGxlcnktYmxvY2t7IFxuICAgICAgICAgICAgLmltYWdlLWdhbGxlcnktd3JhcHBlcntcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHggNDBweDs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW1hZ2VzLXBlci1yb3ctNSAuaW1nLXdyYXBwZXJ7XG4gICAgICAgICAgICAgICAgZmxleDogMCAxIGNhbGMoMzMlIC0gMzBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi5saW5rX3JlcGVhdGVyX2Jsb2NrLmxheW91dC1zdGFuZGFyZHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7O1xuICAgIH1cblxuICAgIC5zZWN0aW9uLnNsaWRlcl9ibG9ja3tcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgICAgIC5ibG9jay5zbGlkZXItYmxvY2sgLmltZy13cmFwcGVye1xuICAgICAgICAgICAgd2lkdGg6IDkyJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLmN0YV93aXRoX2J1dHRvbl9ibG9ja3tcbiAgICAgICAgcGFkZGluZzogNjBweCAwO1xuICAgICAgICAuYmxvY2suY3RhLXdpdGgtYnV0dG9uLWJsb2NrIC5pbm5lci13cmFwcGVyIC50aXRsZS13cmFwcGVyIC5ibG9jay10aXRsZXtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay5mYXEtYmxvY2sgLmlubmVyLXdyYXBwZXIgdWwuZmFxLXdyYXBwZXIgbGkuZmFxLWl0ZW17XG4gICAgICAgIHBhZGRpbmc6IDM1cHggNTJweCAzNXB4IDVweDtcbiAgICB9XG5cbiAgICAuZm9vdGVyIC5zZWN0aW9uLmZvb3Rlci1uYXYgLm5hdi1ibG9ja3tcbiAgICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICAgIG5hdiA+IHVsID4gbGl7XG4gICAgICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXIgLmNvcHlyaWdodHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICBuYXYge1xuICAgICAgICAgICAgb3JkZXI6IC0xO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB1bCBsaXtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgXG4gICAgfVxuXG59Il19 */
