/* ==========================================================================
   Get global options
   ========================================================================== */
/* ==========================================================================
   Vars
   ========================================================================== */
/* ==========================================================================
   Queries
   ========================================================================== */
/* ==========================================================================
   Fonts
   ========================================================================== */
@font-face {
  font-family: 'agency';
  src: url("../font/AgencyFB-Reg.woff2") format("woff2"), url("../font/AgencyFB-Reg.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'hanley';
  src: url("../font/HanleyPro-Monoline.woff2") format("woff2"), url("../font/HanleyPro-Monoline.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'agency';
  src: url("../font/AgencyFB-Bold.woff2") format("woff2"), url("../font/AgencyFB-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

/* ==========================================================================
   Includes
   ========================================================================== */
.separate-containers .entry:not(.post) .featured-image {
  margin-top: 0; }

body {
  font-size: 18px; }

p:last-child,
ul:last-child,
ol:last-child {
  margin-bottom: 0; }

/* ==========================================================================
   All headings
   ========================================================================== */
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
  margin-bottom: 0; }

@media (max-width: 600px) {
  h1 br,
  h2 br,
  h3 br,
  h4 br,
  h5 br,
  h6 br {
    display: none; } }

h1,
h2,
h3 {
  margin-top: 50px; }
  h1:first-child,
  h2:first-child,
  h3:first-child {
    margin-top: 0; }

@media (min-width: 960px) {
  .inner-add-margin, body.first-block-is-section .entry-content > :first-child.gb-container > .gb-container, body.first-block-is-section .entry-content > :first-child.wp-block-cover > .wp-block-cover__inner-container, body.first-block-is-section .entry-content > :first-child.elodin-section > .section-content, body.first-block-is-section .entry-content > :first-child.gutenberg-section .content-wrap, body.first-block-is-section .entry-content > :first-child.wp-block-genesis-blocks-gb-container > .gb-container-inside, body.first-block-is-section .entry-content > :first-child.wp-block-genesis-blocks-gb-columns > .gb-layout-column-wrap, body.first-block-is-section .entry-content > :first-child.wp-block-atomic-blocks-ab-container > .ab-container-inside, body.first-block-is-section .entry-content > :first-child.wp-block-atomic-blocks-ab-columns > .ab-layout-column-wrap, body.first-block-is-section .entry-content > :first-child.wp-block-getwid-section > .wp-block-getwid-section__wrapper > .wp-block-getwid-section__inner-wrapper, body.first-block-is-section .entry-content > :first-child.wp-block-uagb-section > .uagb-section__inner-wrap {
    margin-top: 100px; } }

@media (min-width: 960px) {
  body.first-block-is-section header.site-header {
    margin-bottom: calc(100px * -1); } }

body.first-block-is-section .site-inner {
  margin-top: 0 !important; }

@media (min-width: 960px) {
  body.first-block-is-section .entry-content > :first-child.checkerboard > .checkerboard-content {
    margin-top: 100px; } }

@media (min-width: 600px) and (max-width: 960px) {
  body.first-block-is-section .entry-content > :first-child.checkerboard {
    margin-top: 60px; } }

@media (max-width: 600px) {
  body.first-block-is-section .entry-content > :first-child.checkerboard {
    margin-top: 60px; } }

@media (min-width: 960px) {
  body.first-block-is-section .entry-content > :first-child.gutenberg-section {
    padding-top: 10vh;
    padding-bottom: 10vh; } }

@media (min-width: 1200px) {
  body.first-block-is-section .entry-content > :first-child.gutenberg-section {
    padding-top: 15vh;
    padding-bottom: 15vh; } }

@media (min-width: 960px) {
  body.full-width-content.first-block-is-section .site-header {
    background-color: transparent;
    position: relative;
    z-index: 1000; }
  body.full-width-content.first-block-is-section .main-navigation {
    background-color: transparent; }
  body.full-width-content.first-block-is-section .main-navigation.navigation-clone {
    background-color: var(--accent); }
  body.full-width-content.first-block-is-section .main-navigation:not(.navigation-clone) .main-nav > ul > li > a {
    background-color: transparent;
    color: var(--white-color); }
  body.full-width-content.first-block-is-section .main-title a,
  body.full-width-content.first-block-is-section .main-title a:hover {
    color: white; } }

nav.is_stuck ul#menu-main > li > a {
  color: var(--white-color); }

nav.is_stuck ul#menu-main > li.nav-button > a {
  background-color: var(--white-color) !important;
  color: var(--accent) !important; }

nav.is_stuck .navigation-branding img.is-logo-image {
  height: 50px; }

.background-video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  z-index: 10; }

video[poster] {
  object-fit: cover;
  width: 100%;
  height: 100%; }

.pelican:before {
  z-index: 20 !important; }

.footer-widgets-container.grid-container {
  padding: 70px 40px; }
  @media (max-width: 600px) {
    .footer-widgets-container.grid-container {
      padding: 25px; } }

#mobile-header.mobile-header-navigation {
  background-color: var(--accent) !important;
  z-index: 99999;
  position: relative; }
  #mobile-header.mobile-header-navigation button.menu-toggle {
    color: white; }
  #mobile-header.mobile-header-navigation .site-logo.mobile-header-logo img {
    height: 40px !important; }

#mobile-menu ul.menu > li > a {
  color: white; }

@media (min-width: 1025px) {
  body.home nav:not(.is_stuck) #primary-menu ul.menu > li > a {
    color: var(--accent); } }

.menu a[target='_blank']:after,
.sf-menu a[target='_blank']:after {
  content: '\f504';
  font-family: 'dashicons';
  opacity: 0.5;
  margin-left: 2px;
  transform: translateY(1.5px);
  display: inline-block;
  line-height: 0;
  font-weight: normal; }

@media (min-width: 600px) {
  .site-header .main-navigation .main-nav ul li.nav-button {
    margin-left: 20px; } }

@media (min-width: 600px) {
  .site-header .main-navigation .main-nav ul li.nav-button a {
    background-color: var(--accent) !important;
    border-radius: 3px;
    color: white !important;
    padding: 15px 20px !important;
    line-height: 1;
    transition: 0.3s all ease; }
    .site-header .main-navigation .main-nav ul li.nav-button a:hover {
      background-color: var(--accent-2) !important;
      color: white !important; }
    .site-header .main-navigation .main-nav ul li.nav-button a:after {
      display: none; } }

.site-header .main-navigation .main-nav ul ul {
  width: 250px; }
  .site-header .main-navigation .main-nav ul ul li a {
    padding: 15px 20px; }

.sticky-enabled .main-navigation.is_stuck {
  z-index: 50 !important; }

.secondary-navigation.has-top-bar {
  padding-left: 20px !important;
  padding-right: 10px !important; }

.prefooter iframe {
  margin-bottom: -9px; }

div.top-bar .inside-top-bar {
  justify-content: flex-end; }
  @media (max-width: 600px) {
    div.top-bar .inside-top-bar {
      justify-content: center; } }
  div.top-bar .inside-top-bar .widget:first-child {
    margin-left: 0 !important;
    margin-right: auto; }
  div.top-bar .inside-top-bar .widget:last-child {
    margin-right: 0 !important; }

div.top-bar p {
  margin-bottom: 0; }

div.top-bar a {
  text-decoration: none; }
  div.top-bar a:hover {
    text-decoration: none; }

.widget h2,
.widget h3 {
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 1.5em; }

.widget a {
  text-decoration: none; }

div[data-type='core/buttons'] .block-list-appender__toggle {
  opacity: 1 !important;
  transform: none !important; }

/* ==========================================================================
   Generic
   ========================================================================== */
.btn, .gb-button-wrapper .gb-button, .gform_footer input[type='submit'], .read-more.button, .wp-block-button a.wp-block-button__link,
.wp-block-button div.wp-block-button__link, body #sb_instagram .sbi_follow_btn a {
  font-weight: bold;
  cursor: pointer;
  padding: 15px 25px !important;
  text-decoration: none !important;
  font-size: 18px !important;
  font-weight: 600;
  text-transform: uppercase;
  display: inline-block !important;
  position: static;
  border-radius: 3px;
  transition: all 0.3s ease-in-out;
  font-family: agency; }
  @media (max-width: 600px) {
    .btn, .gb-button-wrapper .gb-button, .gform_footer input[type='submit'], .read-more.button, .wp-block-button a.wp-block-button__link,
    .wp-block-button div.wp-block-button__link, body #sb_instagram .sbi_follow_btn a {
      display: block;
      width: 100%; } }

/* ==========================================================================
   Core buttons
   ========================================================================== */
.wp-block-buttons {
  margin-top: 30px; }
  @media (max-width: 600px) {
    .wp-block-buttons {
      margin-top: 20px; } }
  .wp-block-buttons:first-child {
    margin-top: 0; }
  @media (max-width: 600px) {
    .wp-block-buttons .wp-block-button {
      display: block;
      width: 100%; } }

/* ==========================================================================
   GeneratePress buttons
   ========================================================================== */
/* ==========================================================================
   Gravity forms buttons
   ========================================================================== */
.gform_footer input[type='submit'] {
  font-family: 'agency' !important;
  text-transform: uppercase !important;
  font-weight: bold !important;
  padding: 15px 25px !important;
  text-decoration: none !important;
  font-size: 18px !important;
  background-color: var(--accent) !important; }
  .gform_footer input[type='submit']:hover {
    background-color: var(--accent-2) !important; }
  .gform_footer input[type='submit']:last-child {
    margin-bottom: 0;
    margin-right: 0; }
  .gform_footer input[type='submit'].gform-button--width-full {
    width: 100% !important;
    text-align: center; }

/* ==========================================================================
   Blog buttons
   ========================================================================== */
/* ==========================================================================
   Buttons
   ========================================================================== */
/* ==========================================================================
   Nav buttons
   ========================================================================== */
@media (min-width: 960px) {
  .nav-button > a {
    font-weight: bold;
    cursor: pointer;
    padding: 15px 25px !important;
    text-decoration: none !important;
    display: inline-block !important;
    position: static;
    border-radius: 3px;
    background-color: var(--accent);
    color: white; }
    .nav-button > a:hover {
      background-color: var(--accent-2);
      color: white; } }

.wp-block-gallery {
  margin-bottom: 1.5em; }
  .wp-block-gallery:last-child {
    margin-bottom: 0; }

h1.wp-block-heading,
h2.wp-block-heading,
h3.wp-block-heading {
  margin-top: 50px; }
  h1.wp-block-heading:first-child,
  h2.wp-block-heading:first-child,
  h3.wp-block-heading:first-child {
    margin-top: 0; }

.is-style-kicker + h1.wp-block-heading,
.is-style-kicker + h2.wp-block-heading,
.is-style-kicker + h3.wp-block-heading {
  margin-top: 0; }

.wp-block-image.is-style-rounded img {
  border-radius: 3px; }

ul.is-style-checkmark,
ol.is-style-checkmark {
  margin-left: 0;
  padding-left: 0; }
  ul.is-style-checkmark:last-child,
  ol.is-style-checkmark:last-child {
    margin-bottom: 0; }
  ul.is-style-checkmark > li,
  ol.is-style-checkmark > li {
    position: relative;
    list-style: none;
    padding-left: 40px;
    margin-bottom: 8px;
    line-height: 1.4; }
    ul.is-style-checkmark > li:last-child,
    ol.is-style-checkmark > li:last-child {
      margin-bottom: 0; }
    @media (max-width: 600px) {
      ul.is-style-checkmark > li,
      ol.is-style-checkmark > li {
        padding-left: 30px; } }
    ul.is-style-checkmark > li:before,
    ol.is-style-checkmark > li:before {
      content: '\f147';
      font-family: 'dashicons';
      font-size: 1.5em;
      position: absolute;
      line-height: 1em;
      left: 0;
      top: 0;
      color: var(--accent); }
    ul.is-style-checkmark > li > ul,
    ul.is-style-checkmark > li > ol,
    ol.is-style-checkmark > li > ul,
    ol.is-style-checkmark > li > ol {
      margin-top: 10px;
      margin-bottom: 15px; }

.wp-block-social-links li.wp-social-link,
.widget ul.wp-block-social-links li.wp-social-link {
  margin-bottom: 0; }
  .wp-block-social-links li.wp-social-link a,
  .widget ul.wp-block-social-links li.wp-social-link a {
    display: block; }

.block-editor-block-list__block.wp-block-spacer {
  background-color: rgba(128, 128, 128, 0.1); }

/* ==========================================================================
   Padding on the frontend
   ========================================================================== */
@media (min-width: 600px) and (max-width: 960px) {
  :where(.entry-content > .gb-container) {
    padding-left: 40px;
    padding-right: 40px; } }

@media (max-width: 1260px) {
  :where(.entry-content > .gb-container) {
    padding-left: 25px;
    padding-right: 25px; } }

/* ==========================================================================
   Padding in the editor AND on the frontend
   ========================================================================== */
:where(.entry-content > .gb-container),
:where(.gb-is-root-block > .gb-container),
:where(.gb-root-block-generateblocks-container > .gb-container),
:where(.block-library-block__reusable-block-container > .gb-container) {
  padding-top: 60px;
  padding-bottom: 60px; }
  @media (min-width: 600px) and (max-width: 960px) {
    :where(.entry-content > .gb-container),
    :where(.gb-is-root-block > .gb-container),
    :where(.gb-root-block-generateblocks-container > .gb-container),
    :where(.block-library-block__reusable-block-container > .gb-container) {
      padding-top: 45px;
      padding-bottom: 45px; } }
  @media (max-width: 600px) {
    :where(.entry-content > .gb-container),
    :where(.gb-is-root-block > .gb-container),
    :where(.gb-root-block-generateblocks-container > .gb-container),
    :where(.block-library-block__reusable-block-container > .gb-container) {
      padding-top: 25px;
      padding-bottom: 25px; } }

/* ==========================================================================
   Default to left alignment when we set it on the block
   ========================================================================== */
@media (max-width: 600px) {
  .entry-content > .gb-container,
  .prefooter > .gb-container {
    text-align: left; } }

/* ==========================================================================
   Positioning
   ========================================================================== */
.gb-container > .gb-container {
  position: relative; }

/* ==========================================================================
   Dotted line on containers
   ========================================================================== */
.gb-inside-container .block-editor-inner-blocks,
.block-editor-block-list__block.gb-container > .gb-container {
  outline: 1px dashed rgba(128, 128, 128, 0.4); }

.is-style-kicker {
  color: var(--accent); }

body #sb_instagram {
  position: relative;
  margin: 0 0 10px !important;
  padding: 0 !important; }
  body #sb_instagram .sbi_follow_btn {
    position: absolute;
    bottom: 0;
    left: 50%;
    top: auto;
    transform: translateY(-50%) translateX(-50%);
    text-transform: uppercase;
    z-index: 50;
    margin: 0 !important; }
    body #sb_instagram .sbi_follow_btn a {
      background: var(--white-color) !important;
      box-shadow: none !important;
      color: var(--accent) !important;
      margin: 0 !important; }
      body #sb_instagram .sbi_follow_btn a:hover {
        background: var(--accent-2) !important;
        box-shadow: none !important;
        color: var(--white-color) !important; }
  body #sb_instagram #sbi_images {
    margin: 0 !important;
    padding: 0 !important; }
    body #sb_instagram #sbi_images .sbi_item {
      position: relative;
      cursor: pointer;
      padding: 0 !important;
      margin: 0 !important; }
      @media (max-width: 600px) {
        body #sb_instagram #sbi_images .sbi_item:last-child {
          display: none; } }
      body #sb_instagram #sbi_images .sbi_item:before {
        content: '+';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        font-size: 100px;
        color: white;
        z-index: 20;
        opacity: 0;
        transition: 0.6s all ease;
        pointer-events: none; }
      body #sb_instagram #sbi_images .sbi_item:after {
        opacity: 0;
        content: '';
        background-color: var(--accent);
        position: absolute;
        inset: 0;
        transition: 0.3s all ease;
        pointer-events: none;
        z-index: 10; }
      body #sb_instagram #sbi_images .sbi_item:hover:after {
        opacity: 0.85; }
      body #sb_instagram #sbi_images .sbi_item:hover:before {
        opacity: 1;
        transform: translateY(-50%) translateX(-50%) rotate(180deg); }

@media (max-width: 600px) {
  body .na-attractions-categories-wrap {
    grid-template-columns: 1fr; } }

body .na-attractions-categories-wrap li button.attraction-type-button {
  background-color: #2050ff1a;
  color: var(--accent);
  transition: 0.3s all ease;
  font-weight: bold;
  font-size: 15px;
  padding: 20px 15px; }
  @media (max-width: 600px) {
    body .na-attractions-categories-wrap li button.attraction-type-button {
      padding: 10px; } }
  body .na-attractions-categories-wrap li button.attraction-type-button.active, body .na-attractions-categories-wrap li button.attraction-type-button:hover {
    background-color: var(--accent-2);
    color: white; }

body .attractions-content h3 {
  font-size: 18px !important;
  color: var(--accent); }

body .na-attractions-wrap .hentry {
  transition: 0.3s all ease; }
  body .na-attractions-wrap .hentry.active, body .na-attractions-wrap .hentry:active, body .na-attractions-wrap .hentry:focus, body .na-attractions-wrap .hentry:hover {
    background-color: var(--base); }

.gm-style-iw-chr {
  position: absolute;
  right: 0; }

.suites-default-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 25px; }

.loop-container.loop-layout-suites,
.suites-default-grid {
  margin-top: 0;
  padding-top: 0; }
  .loop-container.loop-layout-suites .featured-image,
  .suites-default-grid .featured-image {
    margin: 0 0 10px !important; }
  .loop-container.loop-layout-suites .entry h3,
  .loop-container.loop-layout-suites .inner h3,
  .suites-default-grid .entry h3,
  .suites-default-grid .inner h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: var(--accent); }
  .loop-container.loop-layout-suites .entry .excerpt p,
  .loop-container.loop-layout-suites .inner .excerpt p,
  .suites-default-grid .entry .excerpt p,
  .suites-default-grid .inner .excerpt p {
    font-size: 16px; }
  .loop-container.loop-layout-suites .entry .suites-slider,
  .loop-container.loop-layout-suites .inner .suites-slider,
  .suites-default-grid .entry .suites-slider,
  .suites-default-grid .inner .suites-slider {
    margin-bottom: 10px;
    border-radius: 3px;
    overflow: hidden; }
    .loop-container.loop-layout-suites .entry .suites-slider .the-image-slide .featured-image,
    .loop-container.loop-layout-suites .inner .suites-slider .the-image-slide .featured-image,
    .suites-default-grid .entry .suites-slider .the-image-slide .featured-image,
    .suites-default-grid .inner .suites-slider .the-image-slide .featured-image {
      padding-top: 55%;
      height: 0;
      display: block;
      background-size: cover;
      background-position: center center;
      border-radius: 3px; }
    .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow,
    .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow,
    .suites-default-grid .entry .suites-slider .slick-arrow,
    .suites-default-grid .inner .suites-slider .slick-arrow {
      position: absolute;
      left: auto;
      right: auto;
      bottom: auto;
      z-index: 50;
      top: 50%;
      height: 40px;
      width: 40px;
      background-color: var(--accent);
      border-radius: 3px;
      opacity: 0;
      transition: 0.3s opacity ease-in-out; }
      .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow:before,
      .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow:before,
      .suites-default-grid .entry .suites-slider .slick-arrow:before,
      .suites-default-grid .inner .suites-slider .slick-arrow:before {
        font-size: 25px; }
      .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow.slick-prev,
      .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow.slick-prev,
      .suites-default-grid .entry .suites-slider .slick-arrow.slick-prev,
      .suites-default-grid .inner .suites-slider .slick-arrow.slick-prev {
        left: 20px;
        right: auto;
        transform: translateY(-50%); }
        .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow.slick-prev:before,
        .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow.slick-prev:before,
        .suites-default-grid .entry .suites-slider .slick-arrow.slick-prev:before,
        .suites-default-grid .inner .suites-slider .slick-arrow.slick-prev:before {
          content: '\f341';
          font-family: 'dashicons'; }
      .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow.slick-next,
      .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow.slick-next,
      .suites-default-grid .entry .suites-slider .slick-arrow.slick-next,
      .suites-default-grid .inner .suites-slider .slick-arrow.slick-next {
        right: 20px;
        left: auto;
        transform: translateY(-50%); }
        .loop-container.loop-layout-suites .entry .suites-slider .slick-arrow.slick-next:before,
        .loop-container.loop-layout-suites .inner .suites-slider .slick-arrow.slick-next:before,
        .suites-default-grid .entry .suites-slider .slick-arrow.slick-next:before,
        .suites-default-grid .inner .suites-slider .slick-arrow.slick-next:before {
          content: '\f345';
          font-family: 'dashicons'; }
  .loop-container.loop-layout-suites .entry .suites-slider:hover .slick-arrow,
  .loop-container.loop-layout-suites .inner .suites-slider:hover .slick-arrow,
  .suites-default-grid .entry .suites-slider:hover .slick-arrow,
  .suites-default-grid .inner .suites-slider:hover .slick-arrow {
    opacity: 1; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc3R5bGUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS1zdHlsZS5zY3NzIiwiX2dsb2JhbC5zY3NzIiwiaW5pdGlhbC9fZ2VuZXJhbC5zY3NzIiwiaW5pdGlhbC9fdHlwb2dyYXBoeS5zY3NzIiwidHJhbnNwYXJlbnQtaGVhZGVyL19maXJzdC1ibG9jay1pcy1zZWN0aW9uLnNjc3MiLCJ0cmFuc3BhcmVudC1oZWFkZXIvX2hlYWRlci10cmFuc3BhcmVudC1jb2xvcnMuc2NzcyIsInRlbXBsYXRlL19iYWNrZ3JvdW5kLXZpZGVvLnNjc3MiLCJ0ZW1wbGF0ZS9fY29weXJpZ2h0LWJhci5zY3NzIiwidGVtcGxhdGUvX2Zvb3Rlci13aWRnZXRzLnNjc3MiLCJ0ZW1wbGF0ZS9faGVhZGVyLW1vYmlsZS5zY3NzIiwidGVtcGxhdGUvX25hdi1ob21lLXBhZ2Utb3ZlcnJpZGVzLnNjc3MiLCJ0ZW1wbGF0ZS9fbmF2aWdhdGlvbi1leHRlcm5hbC1saW5rcy5zY3NzIiwidGVtcGxhdGUvX25hdmlnYXRpb24tbWFpbi5zY3NzIiwidGVtcGxhdGUvX25hdmlnYXRpb24tc2Vjb25kYXJ5LnNjc3MiLCJ0ZW1wbGF0ZS9fcHJlZm9vdGVyLnNjc3MiLCJ0ZW1wbGF0ZS9fdG9wLWJhci5zY3NzIiwidGVtcGxhdGUvX3dpZGdldHMuc2NzcyIsImd1dGVuYmVyZy9fY29yZS1idXR0b25zX2FwcGVuZGVyLWZpeC5zY3NzIiwiZ3V0ZW5iZXJnL19jb3JlLWJ1dHRvbnMuc2NzcyIsImd1dGVuYmVyZy9fY29yZS1nYWxsZXJ5LnNjc3MiLCJndXRlbmJlcmcvX2NvcmUtaGVhZGluZ3Muc2NzcyIsImd1dGVuYmVyZy9fY29yZS1pbWFnZXMuc2NzcyIsImd1dGVuYmVyZy9fY29yZS1saXN0LWNoZWNrbWFyay5zY3NzIiwiZ3V0ZW5iZXJnL19jb3JlLXNvY2lhbC1pY29ucy5zY3NzIiwiZ3V0ZW5iZXJnL19jb3JlLXNwYWNlci5zY3NzIiwiZ3V0ZW5iZXJnL19nYi1jb250YWluZXJfZGVmYXVsdHMuc2NzcyIsImd1dGVuYmVyZy9fZ2ItZ3JpZC1jb2x1bW5zLnNjc3MiLCJndXRlbmJlcmcvX2tpY2tlci5zY3NzIiwiZ3V0ZW5iZXJnL19zb2NpYWwtYmFsbG9vbi1pbnN0YWdyYW0uc2NzcyIsImxheW91dC9fYXR0cmFjdGlvbnMuc2NzcyIsImxheW91dC9fc3VpdGVzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdldCBnbG9iYWwgb3B0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEluY2x1ZGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyogRWFybHktbG9hZCBkZWZhdWx0c1xuQGltcG9ydCBcImluaXRpYWwvX2dlbmVyYWwuc2Nzc1wiO1xuQGltcG9ydCBcImluaXRpYWwvX3R5cG9ncmFwaHkuc2Nzc1wiO1xuXG4vLyogVHJhbnNwYXJlbnQgaGVhZGVyXG5AaW1wb3J0IFwidHJhbnNwYXJlbnQtaGVhZGVyL19maXJzdC1ibG9jay1pcy1zZWN0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ0cmFuc3BhcmVudC1oZWFkZXIvX2hlYWRlci10cmFuc3BhcmVudC1jb2xvcnMuc2Nzc1wiO1xuXG4vLyogVGhlIG5vcm1hbCB0aGVtZSBmaWxlc1xuQGltcG9ydCBcInRlbXBsYXRlL19iYWNrZ3JvdW5kLXZpZGVvLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS9fY29weXJpZ2h0LWJhci5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUvX2Zvb3Rlci13aWRnZXRzLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS9faGVhZGVyLW1vYmlsZS5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUvX25hdi1ob21lLXBhZ2Utb3ZlcnJpZGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS9fbmF2aWdhdGlvbi1leHRlcm5hbC1saW5rcy5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUvX25hdmlnYXRpb24tbWFpbi5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUvX25hdmlnYXRpb24tc2Vjb25kYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS9fcHJlZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS9fdG9wLWJhci5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUvX3dpZGdldHMuc2Nzc1wiO1xuXG4vLyogR3V0ZW5iZXJnXG5AaW1wb3J0IFwiZ3V0ZW5iZXJnL19jb3JlLWJ1dHRvbnNfYXBwZW5kZXItZml4LnNjc3NcIjtcbkBpbXBvcnQgXCJndXRlbmJlcmcvX2NvcmUtYnV0dG9ucy5zY3NzXCI7XG5AaW1wb3J0IFwiZ3V0ZW5iZXJnL19jb3JlLWdhbGxlcnkuc2Nzc1wiO1xuQGltcG9ydCBcImd1dGVuYmVyZy9fY29yZS1oZWFkaW5ncy5zY3NzXCI7XG5AaW1wb3J0IFwiZ3V0ZW5iZXJnL19jb3JlLWltYWdlcy5zY3NzXCI7XG5AaW1wb3J0IFwiZ3V0ZW5iZXJnL19jb3JlLWxpc3QtY2hlY2ttYXJrLnNjc3NcIjtcbkBpbXBvcnQgXCJndXRlbmJlcmcvX2NvcmUtc29jaWFsLWljb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJndXRlbmJlcmcvX2NvcmUtc3BhY2VyLnNjc3NcIjtcbkBpbXBvcnQgXCJndXRlbmJlcmcvX2diLWNvbnRhaW5lcl9kZWZhdWx0cy5zY3NzXCI7XG5AaW1wb3J0IFwiZ3V0ZW5iZXJnL19nYi1ncmlkLWNvbHVtbnMuc2Nzc1wiO1xuQGltcG9ydCBcImd1dGVuYmVyZy9fa2lja2VyLnNjc3NcIjtcbkBpbXBvcnQgXCJndXRlbmJlcmcvX3NvY2lhbC1iYWxsb29uLWluc3RhZ3JhbS5zY3NzXCI7XG5cbi8vKiBSZW1haW5pbmcgZGVmYXVsdHNcblxuXG4vLyogTGF5b3V0c1xuQGltcG9ydCBcImxheW91dC9fYXR0cmFjdGlvbnMuc2Nzc1wiO1xuQGltcG9ydCBcImxheW91dC9fc3VpdGVzLnNjc3NcIjtcblxuLy8qIE91dGxpbmVkIGJ1dHRvbnNcbi8vIEBpbXBvcnQgJ2J1dHRvbi1vdXRsaW5lZC9fKic7XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVmFyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJGJveHNoYWRvdzogMCAxMHB4IDMwcHggMCByZ2JhKGJsYWNrLCAwLjEyKTtcbiRtYXJnaW5ib3R0b206IDIwcHg7XG5cbiRoZWFkZXJoZWlnaHRkZXNrdG9wOiAxMDBweDtcbiRoZWFkZXJoZWlnaHR0YWJsZXQ6IDYwcHg7XG4kaGVhZGVyaGVpZ2h0bW9iaWxlOiA2MHB4O1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUXVlcmllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJHRoaW46IDYwMHB4O1xuJG1lZGl1bTogOTYwcHg7XG4kd2lkZTogMTIwMHB4O1xuXG5AbWl4aW4gbW9iaWxlIHtcblx0QG1lZGlhIChtYXgtd2lkdGg6ICN7JHRoaW59KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIHRhYmxldCB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyR0aGlufSkgYW5kIChtYXgtd2lkdGg6ICN7JG1lZGl1bX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbm90ZGVza3RvcCB7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtZWRpdW19KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG5vdG1vYmlsZSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyR0aGlufSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JG1lZGl1bX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gZGVza3RvcC13aWRlIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHdpZGV9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdhZ2VuY3knO1xuXHRzcmM6IHVybCgnLi4vZm9udC9BZ2VuY3lGQi1SZWcud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG5cdFx0dXJsKCcuLi9mb250L0FnZW5jeUZCLVJlZy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdoYW5sZXknO1xuXHRzcmM6IHVybCgnLi4vZm9udC9IYW5sZXlQcm8tTW9ub2xpbmUud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG5cdFx0dXJsKCcuLi9mb250L0hhbmxleVByby1Nb25vbGluZS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdhZ2VuY3knO1xuXHRzcmM6IHVybCgnLi4vZm9udC9BZ2VuY3lGQi1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuXHRcdHVybCgnLi4vZm9udC9BZ2VuY3lGQi1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xufVxuIiwiLnNlcGFyYXRlLWNvbnRhaW5lcnMgLmVudHJ5Om5vdCgucG9zdCkgLmZlYXR1cmVkLWltYWdlIHtcblx0bWFyZ2luLXRvcDogMDtcbn1cbiIsImJvZHkge1xuXHRmb250LXNpemU6IDE4cHg7XG59XG5cbnA6bGFzdC1jaGlsZCxcbnVsOmxhc3QtY2hpbGQsXG5vbDpsYXN0LWNoaWxkIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFsbCBoZWFkaW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRiciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuXG5oMSxcbmgyLFxuaDMge1xuXHRtYXJnaW4tdG9wOiA1MHB4O1xuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cbn1cbiIsIi8vKiBEZWZhdWx0IGZvciBAZXh0ZW5kaW5nXG4uaW5uZXItYWRkLW1hcmdpbiB7XG5cdEBpbmNsdWRlIGRlc2t0b3Age1xuXHRcdG1hcmdpbi10b3A6ICRoZWFkZXJoZWlnaHRkZXNrdG9wO1xuXHR9XG5cblx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHQvLyBtYXJnaW4tdG9wOiAkaGVhZGVyaGVpZ2h0dGFibGV0O1xuXHR9XG5cblx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHQvLyBtYXJnaW4tdG9wOiAkaGVhZGVyaGVpZ2h0bW9iaWxlO1xuXHR9XG59XG5cbmJvZHkuZmlyc3QtYmxvY2staXMtc2VjdGlvbiB7XG5cdGhlYWRlci5zaXRlLWhlYWRlciB7XG5cdFx0Ly8gbWFyZ2luLWJvdHRvbSBpcyBuZWdhdGl2ZSBzbyB0aGF0IHRoZSBoZWFkZXIgaXMgbm90IGNvdW50ZWQgaW4gdGhlIGhlaWdodCBvZiB0aGUgZmlyc3QgYmxvY2tcblx0XHRAaW5jbHVkZSBkZXNrdG9wIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IGNhbGMoI3skaGVhZGVyaGVpZ2h0ZGVza3RvcH0gKiAtMSk7XG5cdFx0fVxuXHR9XG5cblx0LnNpdGUtaW5uZXIge1xuXHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50ID4gOmZpcnN0LWNoaWxkIHtcblx0XHQvLyogR0VORVJBVEVCTE9DS1Ncblx0XHQmLmdiLWNvbnRhaW5lciB7XG5cdFx0XHQ+IC5nYi1jb250YWluZXIge1xuXHRcdFx0XHRAZXh0ZW5kIC5pbm5lci1hZGQtbWFyZ2luO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vKiBDT1JFIENPVkVSXG5cdFx0Ji53cC1ibG9jay1jb3ZlciB7XG5cdFx0XHQ+IC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcblx0XHRcdFx0QGV4dGVuZCAuaW5uZXItYWRkLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyogRUxPRElOIFNFQ1RJT05cblx0XHQmLmVsb2Rpbi1zZWN0aW9uIHtcblx0XHRcdD4gLnNlY3Rpb24tY29udGVudCB7XG5cdFx0XHRcdEBleHRlbmQgLmlubmVyLWFkZC1tYXJnaW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8qIENIRUNLRVJCT0FSRFxuXHRcdCYuY2hlY2tlcmJvYXJkIHtcblx0XHRcdD4gLmNoZWNrZXJib2FyZC1jb250ZW50IHtcblx0XHRcdFx0Ly8gdGhpcyB0eXBlIG9mIHNlY3Rpb24gbmVlZHMgdGhlIHBhZGRpbmcgYXBwbGllZCBkaWZmZXJlbnRseSBvbiBtb2JpbGUgYW5kIGRlc2t0b3Bcblx0XHRcdFx0QGluY2x1ZGUgZGVza3RvcCB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogJGhlYWRlcmhlaWdodGRlc2t0b3A7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRcdFx0bWFyZ2luLXRvcDogJGhlYWRlcmhlaWdodHRhYmxldDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogJGhlYWRlcmhlaWdodG1vYmlsZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyogR1VURU5CRVJHIFNFQ1RJT05TXG5cdFx0Ji5ndXRlbmJlcmctc2VjdGlvbiB7XG5cdFx0XHRAaW5jbHVkZSBkZXNrdG9wIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDEwdmg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHZoO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBkZXNrdG9wLXdpZGUge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMTV2aDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1dmg7XG5cdFx0XHR9XG5cblx0XHRcdC5jb250ZW50LXdyYXAge1xuXHRcdFx0XHRAZXh0ZW5kIC5pbm5lci1hZGQtbWFyZ2luO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vKiAgR0VORVNJUyBCTE9DS1MgQ09OVEFJTkVSXG5cdFx0Ji53cC1ibG9jay1nZW5lc2lzLWJsb2Nrcy1nYi1jb250YWluZXIge1xuXHRcdFx0PiAuZ2ItY29udGFpbmVyLWluc2lkZSB7XG5cdFx0XHRcdEBleHRlbmQgLmlubmVyLWFkZC1tYXJnaW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8qIEdFTkVTSVMgQkxPQ0tTIENPTFVNTlNcblx0XHQmLndwLWJsb2NrLWdlbmVzaXMtYmxvY2tzLWdiLWNvbHVtbnMge1xuXHRcdFx0PiAuZ2ItbGF5b3V0LWNvbHVtbi13cmFwIHtcblx0XHRcdFx0QGV4dGVuZCAuaW5uZXItYWRkLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyogIEFUT01JQyBCTE9DS1MgQ09OVEFJTkVSXG5cdFx0Ji53cC1ibG9jay1hdG9taWMtYmxvY2tzLWFiLWNvbnRhaW5lciB7XG5cdFx0XHQ+IC5hYi1jb250YWluZXItaW5zaWRlIHtcblx0XHRcdFx0QGV4dGVuZCAuaW5uZXItYWRkLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyogQVRPTUlDIEJMT0NLUyBDT0xVTU5TXG5cdFx0Ji53cC1ibG9jay1hdG9taWMtYmxvY2tzLWFiLWNvbHVtbnMge1xuXHRcdFx0PiAuYWItbGF5b3V0LWNvbHVtbi13cmFwIHtcblx0XHRcdFx0QGV4dGVuZCAuaW5uZXItYWRkLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyogR0VUV0lEIEJMT0NLUyBTRUNUSU9OXG5cdFx0Ji53cC1ibG9jay1nZXR3aWQtc2VjdGlvbiB7XG5cdFx0XHQ+IC53cC1ibG9jay1nZXR3aWQtc2VjdGlvbl9fd3JhcHBlciB7XG5cdFx0XHRcdD4gLndwLWJsb2NrLWdldHdpZC1zZWN0aW9uX19pbm5lci13cmFwcGVyIHtcblx0XHRcdFx0XHRAZXh0ZW5kIC5pbm5lci1hZGQtbWFyZ2luO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8qIFVMVElNQVRFIEFERE9OUyBTRUNUSU9OXG5cdFx0Ji53cC1ibG9jay11YWdiLXNlY3Rpb24ge1xuXHRcdFx0PiAudWFnYi1zZWN0aW9uX19pbm5lci13cmFwIHtcblx0XHRcdFx0QGV4dGVuZCAuaW5uZXItYWRkLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsImJvZHkuZnVsbC13aWR0aC1jb250ZW50LmZpcnN0LWJsb2NrLWlzLXNlY3Rpb24ge1xuXHRAaW5jbHVkZSBkZXNrdG9wIHtcblx0XHQuc2l0ZS1oZWFkZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAxMDAwO1xuXHRcdH1cblxuXHRcdC5tYWluLW5hdmlnYXRpb24ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXG5cdFx0Lm1haW4tbmF2aWdhdGlvbi5uYXZpZ2F0aW9uLWNsb25lIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudCk7XG5cdFx0fVxuXG5cdFx0Lm1haW4tbmF2aWdhdGlvbjpub3QoLm5hdmlnYXRpb24tY2xvbmUpIC5tYWluLW5hdiA+IHVsID4gbGkgPiBhIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Y29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcblx0XHR9XG5cblx0XHQubWFpbi10aXRsZSBhLFxuXHRcdC5tYWluLXRpdGxlIGE6aG92ZXIge1xuXHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdH1cblx0fVxufVxuXG5uYXYuaXNfc3R1Y2sge1xuXHR1bCNtZW51LW1haW4ge1xuXHRcdD4gbGkge1xuXHRcdFx0PiBhIHtcblx0XHRcdFx0Y29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQ+IGxpLm5hdi1idXR0b24ge1xuXHRcdFx0PiBhIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtY29sb3IpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1hY2NlbnQpICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5hdmlnYXRpb24tYnJhbmRpbmcge1xuXHRcdGltZy5pcy1sb2dvLWltYWdlIHtcblx0XHRcdGhlaWdodDogNTBweDtcblx0XHR9XG5cdH1cbn1cbiIsIi5iYWNrZ3JvdW5kLXZpZGVvIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuXHRib3R0b206IDA7XG5cdG9wYWNpdHk6IDE7XG5cdHotaW5kZXg6IDEwO1xufVxuXG52aWRlb1twb3N0ZXJdIHtcblx0b2JqZWN0LWZpdDogY292ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5wZWxpY2FuIHtcblx0JjpiZWZvcmUge1xuXHRcdHotaW5kZXg6IDIwICFpbXBvcnRhbnQ7XG5cdH1cbn1cbiIsIi8vIC5jb3B5cmlnaHQtYmFyIHtcbi8vICAgICBkaXNwbGF5OiBmbGV4O1xuLy8gICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4vLyAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4vLyAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuLy8gICAgIHNwYW4ge1xuLy8gICAgICAgICBtYXJnaW46IDEwcHggMTBweDtcbi8vICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gICAgICAgICB3aWR0aDogYXV0bztcbi8vICAgICB9XG5cbi8vICAgICBpbWcge1xuLy8gICAgICAgICBoZWlnaHQ6IDIwcHg7XG4vLyAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gfVxuXG4vLyAuaW5zaWRlLXNpdGUtaW5mbyB7XG4vLyAgICAgcGFkZGluZzogMTBweCA0MHB4ICFpbXBvcnRhbnQ7XG4vLyB9XG4iLCIuZm9vdGVyLXdpZGdldHMtY29udGFpbmVyLmdyaWQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA3MHB4IDQwcHg7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgIH1cbn1cbiIsIiNtb2JpbGUtaGVhZGVyLm1vYmlsZS1oZWFkZXItbmF2aWdhdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudCkgIWltcG9ydGFudDtcblx0ei1pbmRleDogOTk5OTk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRidXR0b24ubWVudS10b2dnbGUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxuXG5cdC5zaXRlLWxvZ28ubW9iaWxlLWhlYWRlci1sb2dvIGltZyB7XG5cdFx0aGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuI21vYmlsZS1tZW51IHtcblx0dWwubWVudSB7XG5cdFx0PiBsaSB7XG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCJAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG5cdGJvZHkuaG9tZSB7XG5cdFx0bmF2Om5vdCguaXNfc3R1Y2spIHtcblx0XHRcdCNwcmltYXJ5LW1lbnUge1xuXHRcdFx0XHR1bC5tZW51IHtcblx0XHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLm1lbnUsXG4uc2YtbWVudSB7XG5cdGFbdGFyZ2V0PSdfYmxhbmsnXTphZnRlciB7XG5cdFx0Y29udGVudDogJ1xcZjUwNCc7XG5cdFx0Zm9udC1mYW1pbHk6ICdkYXNoaWNvbnMnO1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRtYXJnaW4tbGVmdDogMnB4O1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxLjVweCk7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdH1cbn1cbiIsIi5zaXRlLWhlYWRlciB7XG5cdC5tYWluLW5hdmlnYXRpb24ge1xuXHRcdC5tYWluLW5hdiB7XG5cdFx0XHQvLyBNYWluIG1lbnVcblx0XHRcdHVsIHtcblx0XHRcdFx0bGkubmF2LWJ1dHRvbiB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgbm90bW9iaWxlIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbm90bW9iaWxlIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50KSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAxNXB4IDIwcHggIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2U7XG5cblx0XHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LTIpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gU3VibWVudVxuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0d2lkdGg6IDI1MHB4O1xuXG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDE1cHggMjBweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnN0aWNreS1lbmFibGVkIC5tYWluLW5hdmlnYXRpb24uaXNfc3R1Y2sge1xuXHR6LWluZGV4OiA1MCAhaW1wb3J0YW50O1xufVxuIiwiLnNlY29uZGFyeS1uYXZpZ2F0aW9uLmhhcy10b3AtYmFyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4iLCIucHJlZm9vdGVyIHtcbiAgICBpZnJhbWUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtOXB4O1xuICAgIH1cbn1cbiIsImRpdi50b3AtYmFyIHtcbiAgICAuaW5zaWRlLXRvcC1iYXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aWRnZXQge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAvLyBzcGFuIHtcbiAgICAgICAgLy8gbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIC8vIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgLy8gZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvLyBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMyk7XG5cbiAgICAgICAgLy8gICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAvLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAvLyAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgLy8gICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndpZGdldCB7XG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cbiIsImRpdltkYXRhLXR5cGU9J2NvcmUvYnV0dG9ucyddIHtcblx0LmJsb2NrLWxpc3QtYXBwZW5kZXJfX3RvZ2dsZSB7XG5cdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXHRcdHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgR2VuZXJpY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmJ0biB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IDE1cHggMjVweCAhaW1wb3J0YW50O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRwb3NpdGlvbjogc3RhdGljO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRmb250LWZhbWlseTogYWdlbmN5O1xuXG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvcmUgYnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLndwLWJsb2NrLWJ1dHRvbnMge1xuXHRtYXJnaW4tdG9wOiAzMHB4O1xuXG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQud3AtYmxvY2stYnV0dG9uIHtcblx0XHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdlbmVyYXRlUHJlc3MgYnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmdiLWJ1dHRvbi13cmFwcGVyIHtcblx0LmdiLWJ1dHRvbiB7XG5cdFx0QGV4dGVuZCAuYnRuO1xuXHR9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBHcmF2aXR5IGZvcm1zIGJ1dHRvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5nZm9ybV9mb290ZXIgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuXHRAZXh0ZW5kIC5idG47XG5cblx0Zm9udC1mYW1pbHk6ICdhZ2VuY3knICFpbXBvcnRhbnQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcblx0cGFkZGluZzogMTVweCAyNXB4ICFpbXBvcnRhbnQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXHRmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50KSAhaW1wb3J0YW50O1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC0yKSAhaW1wb3J0YW50O1xuXHR9XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0fVxuXG5cdCYuZ2Zvcm0tYnV0dG9uLS13aWR0aC1mdWxsIHtcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmxvZyBidXR0b25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ucmVhZC1tb3JlLmJ1dHRvbiB7XG5cdEBleHRlbmQgLmJ0bjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJ1dHRvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uIGRpdi53cC1ibG9jay1idXR0b25fX2xpbmsge1xuXHRAZXh0ZW5kIC5idG47XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBOYXYgYnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLm5hdi1idXR0b24gPiBhIHtcblx0QGluY2x1ZGUgZGVza3RvcCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHBhZGRpbmc6IDE1cHggMjVweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdC8vIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuXHRcdC8vIGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50KTtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC0yKTtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XG5cdH1cbn1cbiIsIi53cC1ibG9jay1nYWxsZXJ5IHtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG4iLCJoMS53cC1ibG9jay1oZWFkaW5nLFxuaDIud3AtYmxvY2staGVhZGluZyxcbmgzLndwLWJsb2NrLWhlYWRpbmcge1xuXHRtYXJnaW4tdG9wOiA1MHB4O1xuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cbn1cblxuLmlzLXN0eWxlLWtpY2tlciB7XG5cdCsgaDEud3AtYmxvY2staGVhZGluZyxcblx0KyBoMi53cC1ibG9jay1oZWFkaW5nLFxuXHQrIGgzLndwLWJsb2NrLWhlYWRpbmcge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cbn1cbiIsIi53cC1ibG9jay1pbWFnZS5pcy1zdHlsZS1yb3VuZGVkIHtcblx0aW1nIHtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdH1cbn1cbiIsInVsLmlzLXN0eWxlLWNoZWNrbWFyayxcbm9sLmlzLXN0eWxlLWNoZWNrbWFyayB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0PiBsaSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0XHRsaW5lLWhlaWdodDogMS40O1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnXFxmMTQ3Jztcblx0XHRcdGZvbnQtZmFtaWx5OiAnZGFzaGljb25zJztcblx0XHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsaW5lLWhlaWdodDogMWVtO1xuXHRcdFx0Ly8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0Y29sb3I6IHZhcigtLWFjY2VudCk7XG5cdFx0fVxuXG5cdFx0PiB1bCxcblx0XHQ+IG9sIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdH1cblx0fVxufVxuIiwiLndwLWJsb2NrLXNvY2lhbC1saW5rcyxcbi53aWRnZXQgdWwud3AtYmxvY2stc29jaWFsLWxpbmtzIHtcblx0bGkud3Atc29jaWFsLWxpbmsge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuIiwiLmJsb2NrLWVkaXRvci1ibG9jay1saXN0X19ibG9jay53cC1ibG9jay1zcGFjZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGdyYXksIDAuMSk7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGFkZGluZyBvbiB0aGUgZnJvbnRlbmRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjp3aGVyZSguZW50cnktY29udGVudCA+IC5nYi1jb250YWluZXIpIHtcblx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogNDBweDtcblx0fVxuXG5cdEBtZWRpYSAobWF4LXdpZHRoOiAxMjYwcHgpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjVweDtcblx0fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGFkZGluZyBpbiB0aGUgZWRpdG9yIEFORCBvbiB0aGUgZnJvbnRlbmRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjp3aGVyZSguZW50cnktY29udGVudCA+IC5nYi1jb250YWluZXIpLFxuOndoZXJlKC5nYi1pcy1yb290LWJsb2NrID4gLmdiLWNvbnRhaW5lciksXG46d2hlcmUoLmdiLXJvb3QtYmxvY2stZ2VuZXJhdGVibG9ja3MtY29udGFpbmVyID4gLmdiLWNvbnRhaW5lciksXG46d2hlcmUoLmJsb2NrLWxpYnJhcnktYmxvY2tfX3JldXNhYmxlLWJsb2NrLWNvbnRhaW5lciA+IC5nYi1jb250YWluZXIpIHtcblx0cGFkZGluZy10b3A6IDYwcHg7XG5cdHBhZGRpbmctYm90dG9tOiA2MHB4O1xuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0cGFkZGluZy10b3A6IDQ1cHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDQ1cHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdHBhZGRpbmctdG9wOiAyNXB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAyNXB4O1xuXHR9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEZWZhdWx0IHRvIGxlZnQgYWxpZ25tZW50IHdoZW4gd2Ugc2V0IGl0IG9uIHRoZSBibG9ja1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmVudHJ5LWNvbnRlbnQgPiAuZ2ItY29udGFpbmVyLFxuLnByZWZvb3RlciA+IC5nYi1jb250YWluZXIge1xuXHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBvc2l0aW9uaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZ2ItY29udGFpbmVyID4gLmdiLWNvbnRhaW5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERvdHRlZCBsaW5lIG9uIGNvbnRhaW5lcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5nYi1pbnNpZGUtY29udGFpbmVyIC5ibG9jay1lZGl0b3ItaW5uZXItYmxvY2tzLFxuLmJsb2NrLWVkaXRvci1ibG9jay1saXN0X19ibG9jay5nYi1jb250YWluZXIgPiAuZ2ItY29udGFpbmVyIHtcblx0b3V0bGluZTogMXB4IGRhc2hlZCByZ2JhKGdyYXksIDAuNCk7XG59XG4iLCIvLyAuZ2ItZ3JpZC13cmFwcGVyIHtcbi8vICAgICA+IC5nYi1ncmlkLWNvbHVtbjpsYXN0LWNoaWxkIHtcbi8vICAgICAgICAgQGluY2x1ZGUgbW9iaWxlIHtcbi8vICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuIiwiLmlzLXN0eWxlLWtpY2tlciB7XG5cdGNvbG9yOiB2YXIoLS1hY2NlbnQpO1xufVxuIiwiYm9keSAjc2JfaW5zdGFncmFtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuXHQuc2JpX2ZvbGxvd19idG4ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRvcDogYXV0bztcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdHotaW5kZXg6IDUwO1xuXHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG5cdFx0YSB7XG5cdFx0XHRAZXh0ZW5kIC5idG47XG5cdFx0XHQvLyBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0td2hpdGUtY29sb3IpICFpbXBvcnRhbnQ7XG5cdFx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRjb2xvcjogdmFyKC0tYWNjZW50KSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1hY2NlbnQtMikgIWltcG9ydGFudDtcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRjb2xvcjogdmFyKC0td2hpdGUtY29sb3IpICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0I3NiaV9pbWFnZXMge1xuXHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuXHRcdC5zYmlfaXRlbSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJysnO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHRcdFx0XHRmb250LXNpemU6IDEwMHB4O1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdHotaW5kZXg6IDIwO1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjZzIGFsbCBlYXNlO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGluc2V0OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjg1O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsImJvZHkgLm5hLWF0dHJhY3Rpb25zLWNhdGVnb3JpZXMtd3JhcCB7XG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdH1cblx0bGkge1xuXHRcdGJ1dHRvbi5hdHRyYWN0aW9uLXR5cGUtYnV0dG9uIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMyMDUwZmYxYTtcblx0XHRcdGNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuXHRcdFx0dHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdFx0cGFkZGluZzogMjBweCAxNXB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmLmFjdGl2ZSxcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtMik7XG5cdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuYm9keSAuYXR0cmFjdGlvbnMtY29udGVudCB7XG5cdGgzIHtcblx0XHRmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcblx0XHRjb2xvcjogdmFyKC0tYWNjZW50KTtcblx0fVxufVxuXG5ib2R5IHtcblx0Lm5hLWF0dHJhY3Rpb25zLXdyYXAge1xuXHRcdC5oZW50cnkge1xuXHRcdFx0dHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcblxuXHRcdFx0Ji5hY3RpdmUsXG5cdFx0XHQmOmFjdGl2ZSxcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFzZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5nbS1zdHlsZS1pdy1jaHIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xufVxuIiwiLnN1aXRlcy1kZWZhdWx0LWdyaWQge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMDBweCwgMWZyKSk7XG5cdGdhcDogMjVweDtcblxuXHQuaW5uZXIge1xuXHR9XG59XG5cbi5sb29wLWNvbnRhaW5lci5sb29wLWxheW91dC1zdWl0ZXMsXG4uc3VpdGVzLWRlZmF1bHQtZ3JpZCB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdHBhZGRpbmctdG9wOiAwO1xuXG5cdC5mZWF0dXJlZC1pbWFnZSB7XG5cdFx0bWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LmVudHJ5LFxuXHQuaW5uZXIge1xuXHRcdGgzIHtcblx0XHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHRjb2xvcjogdmFyKC0tYWNjZW50KTtcblx0XHR9XG5cblx0XHQuZXhjZXJwdCB7XG5cdFx0XHRwIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5zdWl0ZXMtc2xpZGVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHQudGhlLWltYWdlLXNsaWRlIHtcblx0XHRcdFx0LmZlYXR1cmVkLWltYWdlIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNTUlO1xuXHRcdFx0XHRcdGhlaWdodDogMDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5zbGljay1hcnJvdyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRcdGJvdHRvbTogYXV0bztcblx0XHRcdFx0ei1pbmRleDogNTA7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHRcdHdpZHRoOiA0MHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eSBlYXNlLWluLW91dDtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5zbGljay1wcmV2IHtcblx0XHRcdFx0XHRsZWZ0OiAyMHB4O1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGYzNDEnO1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdkYXNoaWNvbnMnO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuc2xpY2stbmV4dCB7XG5cdFx0XHRcdFx0cmlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnXFxmMzQ1Jztcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnZGFzaGljb25zJztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc3VpdGVzLXNsaWRlcjpob3ZlciB7XG5cdFx0XHQuc2xpY2stYXJyb3cge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztnRkFFZ0Y7QUNGaEY7O2dGQUVnRjtBQVNoRjs7Z0ZBRWdGO0FBMENoRjs7Z0ZBRWdGO0FBRWhGLFVBQVU7RUFDVCxXQUFXLEVBQUUsUUFBUTtFQUNyQixHQUFHLEVBQUUsaUNBQWlDLENBQUMsZUFBZSxFQUNyRCxnQ0FBZ0MsQ0FBQyxjQUFjO0VBQ2hELFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFlBQVksRUFBRSxJQUFJOztBQUduQixVQUFVO0VBQ1QsV0FB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 */
