@import url(../vendor/normalize.css);
body {
  overflow-x: hidden; }

/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
          animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  -webkit-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -webkit-transition: -webkit-transform 100ms ease;
  transition: -webkit-transform 100ms ease;
  transition: transform 100ms ease;
  transition: transform 100ms ease, -webkit-transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -webkit-transform: scale(1.3, 1.3);
          transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transition: opacity 400ms ease;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * Remove margin and padding from every selector including their
 * psuedo selectors.
 *
 * 1. More sensible default box sizing.
 *    (css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice).
 */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
  /* 1 */ }

/**
 * Set height of the document to maxium viewport height.
 *
 * 1. Set root font size to 10.
 */
html {
  height: 100vh;
  font-size: 62.5%;
  /* 1 */
  box-sizing: border-box; }

/**
 * Set minimal height of the body to maximum viewport height to
 * match the document's height.
 *
 * 1. Firefox 25+.
 * 2. Chrome 5+.
 */
body {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.875em;
  min-height: 100vh;
  background-color: #fff;
  color: #000;
  font-family: "Ubuntu";
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  /* 1 */
  -webkit-font-smoothing: antialiased;
  /* 2 */ }

/* ==========================================================================
   Reset
   ========================================================================== */
/**
 * Custom user agent resets and overrides that are not present in
 * Normalize 8.0.0. This mostly removes some annoying margin and padding
 * defaults, border radius, and outlines.
 */
a {
  color: inherit;
  text-decoration: none; }

/**
 * 1. Remove border radius on Chrome 62.0+ on macOS.
 */
button {
  border: 0;
  border-radius: 0;
  /* 1 */
  outline: none;
  background: none;
  cursor: pointer; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

figure {
  margin: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: inherit; }

hr {
  margin: 0;
  padding: 0; }

/**
 * 1. Remove white space.
 */
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  /* 1 */ }

/**
 * 1. Remove inherited user agent appearance.
 */
input,
select,
textarea {
  max-width: 100%;
  border: 0;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  /* 1 */ }

/**
 * 1. Only allow vertical resizing to prevent the textarea
 *    from overflowing the container.
 */
textarea {
  resize: vertical; }

ul,
ol {
  margin: 0;
  padding: 0;
  list-style-type: none; }

p {
  margin: 0; }

/**
 * 1. Collapse borders to prevent double sided borders.
 */
table {
  max-width: 100%;
  border-collapse: collapse;
  /* 1 */ }

strong {
  font-weight: 700; }

/* ==========================================================================
   Button
   ========================================================================== */
/**
 * Default button.
 */
.button {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  margin-top: 20px;
  padding: 10px 20px;
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  border-radius: 38px;
  font-size: 16px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
  text-shadow: none;
  cursor: pointer; }
  .button::before {
    margin-right: 10px;
    font-size: font-size("huge"); }
  .button::after {
    margin-left: 10px;
    font-size: font-size("huge"); }
  .button.button--font-medium {
    font-weight: 500; }

.button--small {
  padding: 11px 15px; }

.button--orange {
  background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%);
  color: #fff; }
  .button--orange:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    box-shadow: 0 2px 10px 0 rgba(255, 153, 51, 0.54); }

.button--white {
  background: #fff; }
  .button--white:hover {
    box-shadow: 0 2px 10px 2px rgba(255, 255, 255, 0.5); }

.button--secondary {
  color: #fff;
  border: 2px solid #fff; }
  .button--secondary:hover {
    opacity: 0.7; }

.button--blue {
  background: #008c9a;
  color: #fff; }
  .button--blue:hover {
    background: #005760; }

@media only screen and (max-width: 767px) {
  .button {
    display: block; } }

.contact-fixed {
  position: fixed;
  top: 45%;
  left: calc(100% - 50px);
  z-index: 2; }
  .contact-fixed .contact-fixed-item {
    position: relative;
    left: 0;
    margin-bottom: 10px;
    padding: 10px 20px 10px 10px;
    -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    border-radius: 10px 0 0 10px;
    background: #008c9a;
    color: #fff;
    box-shadow: 0 2px 5px 0 rgba(0, 140, 154, 0.39); }
    .contact-fixed .contact-fixed-item:hover {
      left: calc(-100% + 50px);
      -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
      transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
      background: #005760;
      box-shadow: 0 2px 5px 0 rgba(0, 87, 96, 0.5); }
    .contact-fixed .contact-fixed-item .contact-fixed-link {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row;
      -webkit-box-align: center;
              align-items: center; }
    .contact-fixed .contact-fixed-item svg {
      width: 30px;
      margin-right: 10px; }

@media only screen and (max-width: 1024px) {
  .contact-fixed {
    left: calc(100% - 50px); } }

@media only screen and (max-width: 767px) {
  .contact-fixed {
    position: fixed;
    top: auto;
    right: auto;
    bottom: -170px;
    left: 50%;
    margin-left: -135px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    z-index: 2; }
    .contact-fixed .contact-fixed-item svg {
      -webkit-transform: rotate(-90deg);
              transform: rotate(-90deg); }
    .contact-fixed .contact-fixed-item:hover {
      left: 0; } }

/* ==========================================================================
   Container
   ========================================================================== */
/**
 * The container object centers an element in the document.
 */
.container {
  max-width: calc(1024px + 50.66667px);
  padding: 0 25.33333px;
  width: 100%;
  margin: 0 auto;
  max-width: 1250px; }

@media only screen and (max-width: 1024px) {
  .container {
    padding: 0 40px; } }

@media only screen and (max-width: 767px) {
  .container {
    padding: 0 30px; } }

/* ==========================================================================
   Content Constraint
   ========================================================================== */
/**
 * The content constraint is a constraint for all the content within
 * the document. It can be manipulated by CSS or JavaScript without
 * influencing the body.
 */
.content-constraint {
  position: relative;
  min-height: 100vh; }

/* ==========================================================================
   Flex
   ========================================================================== */
/**
 * Example of a flex based column grid layout in practice:
 *
 * <div class="row">
 *   <div class="col col-xs-6 col-sm-12"></div>
 *   <div class="col col-xs-6 col-sm-12"></div>
 * </div>
 *
 * This example will create a row with two columns each filling half the width
 * of the row on all media, but will convert to a full width column on the
 * small `-sm` breakpoint alias, which is mobile only. Refer to
 * `settings/_definitions.scss` for all breakpoint alias.
 */
/**
 * Flex object.
 *
 * Tip: Use flex on a column to make the box the same height as the column.
 */
.flex {
  display: -webkit-box;
  display: flex; }

/**
 * Flex object with a column based layout system.
 */
.row {
  display: -webkit-box;
  display: flex;
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-flow: row wrap;
  margin: 0 -12.66667px; }

/**
 * Box, the inside of a column.
 */
.box {
  -webkit-box-flex: 1;
          flex: 1; }

/**
       * Column 1 for the `xs` breakpoint.
       */
.col-xs-1 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 8.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 1 for the `xs` breakpoint.
         */
.offset-xs-1 {
  margin-left: 8.33333%; }

/**
       * Column 2 for the `xs` breakpoint.
       */
.col-xs-2 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 16.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 2 for the `xs` breakpoint.
         */
.offset-xs-2 {
  margin-left: 16.66667%; }

/**
       * Column 3 for the `xs` breakpoint.
       */
.col-xs-3 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 25%;
  padding: 0 12.66667px; }

/**
         * Offset 3 for the `xs` breakpoint.
         */
.offset-xs-3 {
  margin-left: 25%; }

/**
       * Column 4 for the `xs` breakpoint.
       */
.col-xs-4 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 33.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 4 for the `xs` breakpoint.
         */
.offset-xs-4 {
  margin-left: 33.33333%; }

/**
       * Column 5 for the `xs` breakpoint.
       */
.col-xs-5 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 41.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 5 for the `xs` breakpoint.
         */
.offset-xs-5 {
  margin-left: 41.66667%; }

/**
       * Column 6 for the `xs` breakpoint.
       */
.col-xs-6 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 50%;
  padding: 0 12.66667px; }

/**
         * Offset 6 for the `xs` breakpoint.
         */
.offset-xs-6 {
  margin-left: 50%; }

/**
       * Column 7 for the `xs` breakpoint.
       */
.col-xs-7 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 58.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 7 for the `xs` breakpoint.
         */
.offset-xs-7 {
  margin-left: 58.33333%; }

/**
       * Column 8 for the `xs` breakpoint.
       */
.col-xs-8 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 66.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 8 for the `xs` breakpoint.
         */
.offset-xs-8 {
  margin-left: 66.66667%; }

/**
       * Column 9 for the `xs` breakpoint.
       */
.col-xs-9 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 75%;
  padding: 0 12.66667px; }

/**
         * Offset 9 for the `xs` breakpoint.
         */
.offset-xs-9 {
  margin-left: 75%; }

/**
       * Column 10 for the `xs` breakpoint.
       */
.col-xs-10 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 83.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 10 for the `xs` breakpoint.
         */
.offset-xs-10 {
  margin-left: 83.33333%; }

/**
       * Column 11 for the `xs` breakpoint.
       */
.col-xs-11 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 91.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 11 for the `xs` breakpoint.
         */
.offset-xs-11 {
  margin-left: 91.66667%; }

/**
       * Column 12 for the `xs` breakpoint.
       */
.col-xs-12 {
  -webkit-box-flex: 0;
          flex: 0 1 auto;
  width: 100%;
  padding: 0 12.66667px; }

/**
       * Align `stretch` for the xs breakpoint.
       */
.align-xs-stretch {
  -webkit-box-align: stretch;
          align-items: stretch; }

/**
       * Align `center` for the xs breakpoint.
       */
.align-xs-center {
  -webkit-box-align: center;
          align-items: center; }

/**
       * Align `flex-start` for the xs breakpoint.
       */
.align-xs-flex-start {
  -webkit-box-align: start;
          align-items: flex-start; }

/**
       * Align `flex-end` for the xs breakpoint.
       */
.align-xs-flex-end {
  -webkit-box-align: end;
          align-items: flex-end; }

/**
       * Align `baseline` for the xs breakpoint.
       */
.align-xs-baseline {
  -webkit-box-align: baseline;
          align-items: baseline; }

/**
       * Justify `start` for the xs breakpoint.
       */
.justify-xs-start {
  -webkit-box-pack: start;
          justify-content: start; }

/**
       * Justify `center` for the xs breakpoint.
       */
.justify-xs-center {
  -webkit-box-pack: center;
          justify-content: center; }

/**
       * Justify `space-between` for the xs breakpoint.
       */
.justify-xs-space-between {
  -webkit-box-pack: justify;
          justify-content: space-between; }

/**
       * Justify `space-around` for the xs breakpoint.
       */
.justify-xs-space-around {
  justify-content: space-around; }

/**
       * Justify `space-evenly` for the xs breakpoint.
       */
.justify-xs-space-evenly {
  -webkit-box-pack: space-evenly;
          justify-content: space-evenly; }

/**
       * Bleed left for the xs breakpoint.
       */
.bleed-xs-left {
  padding-left: 0; }

/**
       * Bleed right for the xs breakpoint.
       */
.bleed-xs-right {
  padding-right: 0; }

/**
     * Order first for the `xs` breakpoint.
     */
.first-xs {
  -webkit-box-ordinal-group: 0;
          order: -1; }

/**
     * Order last for the `xs` breakpoint.
     */
.last-xs {
  -webkit-box-ordinal-group: 2;
          order: 1; }

/**
     * Reverse order for the `xs` breakpoint.
     */
.reverse-xs {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
          flex-direction: row-reverse; }

@media only screen and (min-width: 600px) {
  /**
       * Column 1 for the `sm` breakpoint.
       */
  .col-sm-1 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `sm` breakpoint.
         */
  .offset-sm-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `sm` breakpoint.
       */
  .col-sm-2 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `sm` breakpoint.
         */
  .offset-sm-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `sm` breakpoint.
       */
  .col-sm-3 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `sm` breakpoint.
         */
  .offset-sm-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `sm` breakpoint.
       */
  .col-sm-4 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `sm` breakpoint.
         */
  .offset-sm-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `sm` breakpoint.
       */
  .col-sm-5 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `sm` breakpoint.
         */
  .offset-sm-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `sm` breakpoint.
       */
  .col-sm-6 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `sm` breakpoint.
         */
  .offset-sm-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `sm` breakpoint.
       */
  .col-sm-7 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `sm` breakpoint.
         */
  .offset-sm-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `sm` breakpoint.
       */
  .col-sm-8 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `sm` breakpoint.
         */
  .offset-sm-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `sm` breakpoint.
       */
  .col-sm-9 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `sm` breakpoint.
         */
  .offset-sm-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `sm` breakpoint.
       */
  .col-sm-10 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `sm` breakpoint.
         */
  .offset-sm-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `sm` breakpoint.
       */
  .col-sm-11 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `sm` breakpoint.
         */
  .offset-sm-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `sm` breakpoint.
       */
  .col-sm-12 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the sm breakpoint.
       */
  .align-sm-stretch {
    -webkit-box-align: stretch;
            align-items: stretch; }
  /**
       * Align `center` for the sm breakpoint.
       */
  .align-sm-center {
    -webkit-box-align: center;
            align-items: center; }
  /**
       * Align `flex-start` for the sm breakpoint.
       */
  .align-sm-flex-start {
    -webkit-box-align: start;
            align-items: flex-start; }
  /**
       * Align `flex-end` for the sm breakpoint.
       */
  .align-sm-flex-end {
    -webkit-box-align: end;
            align-items: flex-end; }
  /**
       * Align `baseline` for the sm breakpoint.
       */
  .align-sm-baseline {
    -webkit-box-align: baseline;
            align-items: baseline; }
  /**
       * Justify `start` for the sm breakpoint.
       */
  .justify-sm-start {
    -webkit-box-pack: start;
            justify-content: start; }
  /**
       * Justify `center` for the sm breakpoint.
       */
  .justify-sm-center {
    -webkit-box-pack: center;
            justify-content: center; }
  /**
       * Justify `space-between` for the sm breakpoint.
       */
  .justify-sm-space-between {
    -webkit-box-pack: justify;
            justify-content: space-between; }
  /**
       * Justify `space-around` for the sm breakpoint.
       */
  .justify-sm-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the sm breakpoint.
       */
  .justify-sm-space-evenly {
    -webkit-box-pack: space-evenly;
            justify-content: space-evenly; }
  /**
       * Bleed left for the sm breakpoint.
       */
  .bleed-sm-left {
    padding-left: 0; }
  /**
       * Bleed right for the sm breakpoint.
       */
  .bleed-sm-right {
    padding-right: 0; }
  /**
     * Order first for the `sm` breakpoint.
     */
  .first-sm {
    -webkit-box-ordinal-group: 0;
            order: -1; }
  /**
     * Order last for the `sm` breakpoint.
     */
  .last-sm {
    -webkit-box-ordinal-group: 2;
            order: 1; }
  /**
     * Reverse order for the `sm` breakpoint.
     */
  .reverse-sm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

@media only screen and (min-width: 768px) {
  /**
       * Column 1 for the `md` breakpoint.
       */
  .col-md-1 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `md` breakpoint.
         */
  .offset-md-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `md` breakpoint.
       */
  .col-md-2 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `md` breakpoint.
         */
  .offset-md-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `md` breakpoint.
       */
  .col-md-3 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `md` breakpoint.
         */
  .offset-md-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `md` breakpoint.
       */
  .col-md-4 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `md` breakpoint.
         */
  .offset-md-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `md` breakpoint.
       */
  .col-md-5 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `md` breakpoint.
         */
  .offset-md-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `md` breakpoint.
       */
  .col-md-6 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `md` breakpoint.
         */
  .offset-md-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `md` breakpoint.
       */
  .col-md-7 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `md` breakpoint.
         */
  .offset-md-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `md` breakpoint.
       */
  .col-md-8 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `md` breakpoint.
         */
  .offset-md-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `md` breakpoint.
       */
  .col-md-9 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `md` breakpoint.
         */
  .offset-md-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `md` breakpoint.
       */
  .col-md-10 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `md` breakpoint.
         */
  .offset-md-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `md` breakpoint.
       */
  .col-md-11 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `md` breakpoint.
         */
  .offset-md-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `md` breakpoint.
       */
  .col-md-12 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the md breakpoint.
       */
  .align-md-stretch {
    -webkit-box-align: stretch;
            align-items: stretch; }
  /**
       * Align `center` for the md breakpoint.
       */
  .align-md-center {
    -webkit-box-align: center;
            align-items: center; }
  /**
       * Align `flex-start` for the md breakpoint.
       */
  .align-md-flex-start {
    -webkit-box-align: start;
            align-items: flex-start; }
  /**
       * Align `flex-end` for the md breakpoint.
       */
  .align-md-flex-end {
    -webkit-box-align: end;
            align-items: flex-end; }
  /**
       * Align `baseline` for the md breakpoint.
       */
  .align-md-baseline {
    -webkit-box-align: baseline;
            align-items: baseline; }
  /**
       * Justify `start` for the md breakpoint.
       */
  .justify-md-start {
    -webkit-box-pack: start;
            justify-content: start; }
  /**
       * Justify `center` for the md breakpoint.
       */
  .justify-md-center {
    -webkit-box-pack: center;
            justify-content: center; }
  /**
       * Justify `space-between` for the md breakpoint.
       */
  .justify-md-space-between {
    -webkit-box-pack: justify;
            justify-content: space-between; }
  /**
       * Justify `space-around` for the md breakpoint.
       */
  .justify-md-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the md breakpoint.
       */
  .justify-md-space-evenly {
    -webkit-box-pack: space-evenly;
            justify-content: space-evenly; }
  /**
       * Bleed left for the md breakpoint.
       */
  .bleed-md-left {
    padding-left: 0; }
  /**
       * Bleed right for the md breakpoint.
       */
  .bleed-md-right {
    padding-right: 0; }
  /**
     * Order first for the `md` breakpoint.
     */
  .first-md {
    -webkit-box-ordinal-group: 0;
            order: -1; }
  /**
     * Order last for the `md` breakpoint.
     */
  .last-md {
    -webkit-box-ordinal-group: 2;
            order: 1; }
  /**
     * Reverse order for the `md` breakpoint.
     */
  .reverse-md {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

@media only screen and (min-width: 1024px) {
  /**
       * Column 1 for the `lg` breakpoint.
       */
  .col-lg-1 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `lg` breakpoint.
         */
  .offset-lg-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `lg` breakpoint.
       */
  .col-lg-2 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `lg` breakpoint.
         */
  .offset-lg-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `lg` breakpoint.
       */
  .col-lg-3 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `lg` breakpoint.
         */
  .offset-lg-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `lg` breakpoint.
       */
  .col-lg-4 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `lg` breakpoint.
         */
  .offset-lg-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `lg` breakpoint.
       */
  .col-lg-5 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `lg` breakpoint.
         */
  .offset-lg-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `lg` breakpoint.
       */
  .col-lg-6 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `lg` breakpoint.
         */
  .offset-lg-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `lg` breakpoint.
       */
  .col-lg-7 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `lg` breakpoint.
         */
  .offset-lg-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `lg` breakpoint.
       */
  .col-lg-8 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `lg` breakpoint.
         */
  .offset-lg-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `lg` breakpoint.
       */
  .col-lg-9 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `lg` breakpoint.
         */
  .offset-lg-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `lg` breakpoint.
       */
  .col-lg-10 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `lg` breakpoint.
         */
  .offset-lg-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `lg` breakpoint.
       */
  .col-lg-11 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `lg` breakpoint.
         */
  .offset-lg-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `lg` breakpoint.
       */
  .col-lg-12 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the lg breakpoint.
       */
  .align-lg-stretch {
    -webkit-box-align: stretch;
            align-items: stretch; }
  /**
       * Align `center` for the lg breakpoint.
       */
  .align-lg-center {
    -webkit-box-align: center;
            align-items: center; }
  /**
       * Align `flex-start` for the lg breakpoint.
       */
  .align-lg-flex-start {
    -webkit-box-align: start;
            align-items: flex-start; }
  /**
       * Align `flex-end` for the lg breakpoint.
       */
  .align-lg-flex-end {
    -webkit-box-align: end;
            align-items: flex-end; }
  /**
       * Align `baseline` for the lg breakpoint.
       */
  .align-lg-baseline {
    -webkit-box-align: baseline;
            align-items: baseline; }
  /**
       * Justify `start` for the lg breakpoint.
       */
  .justify-lg-start {
    -webkit-box-pack: start;
            justify-content: start; }
  /**
       * Justify `center` for the lg breakpoint.
       */
  .justify-lg-center {
    -webkit-box-pack: center;
            justify-content: center; }
  /**
       * Justify `space-between` for the lg breakpoint.
       */
  .justify-lg-space-between {
    -webkit-box-pack: justify;
            justify-content: space-between; }
  /**
       * Justify `space-around` for the lg breakpoint.
       */
  .justify-lg-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the lg breakpoint.
       */
  .justify-lg-space-evenly {
    -webkit-box-pack: space-evenly;
            justify-content: space-evenly; }
  /**
       * Bleed left for the lg breakpoint.
       */
  .bleed-lg-left {
    padding-left: 0; }
  /**
       * Bleed right for the lg breakpoint.
       */
  .bleed-lg-right {
    padding-right: 0; }
  /**
     * Order first for the `lg` breakpoint.
     */
  .first-lg {
    -webkit-box-ordinal-group: 0;
            order: -1; }
  /**
     * Order last for the `lg` breakpoint.
     */
  .last-lg {
    -webkit-box-ordinal-group: 2;
            order: 1; }
  /**
     * Reverse order for the `lg` breakpoint.
     */
  .reverse-lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

@media only screen and (min-width: 1200px) {
  /**
       * Column 1 for the `xl` breakpoint.
       */
  .col-xl-1 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `xl` breakpoint.
         */
  .offset-xl-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `xl` breakpoint.
       */
  .col-xl-2 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `xl` breakpoint.
         */
  .offset-xl-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `xl` breakpoint.
       */
  .col-xl-3 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `xl` breakpoint.
         */
  .offset-xl-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `xl` breakpoint.
       */
  .col-xl-4 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `xl` breakpoint.
         */
  .offset-xl-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `xl` breakpoint.
       */
  .col-xl-5 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `xl` breakpoint.
         */
  .offset-xl-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `xl` breakpoint.
       */
  .col-xl-6 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `xl` breakpoint.
         */
  .offset-xl-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `xl` breakpoint.
       */
  .col-xl-7 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `xl` breakpoint.
         */
  .offset-xl-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `xl` breakpoint.
       */
  .col-xl-8 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `xl` breakpoint.
         */
  .offset-xl-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `xl` breakpoint.
       */
  .col-xl-9 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `xl` breakpoint.
         */
  .offset-xl-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `xl` breakpoint.
       */
  .col-xl-10 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `xl` breakpoint.
         */
  .offset-xl-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `xl` breakpoint.
       */
  .col-xl-11 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `xl` breakpoint.
         */
  .offset-xl-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `xl` breakpoint.
       */
  .col-xl-12 {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the xl breakpoint.
       */
  .align-xl-stretch {
    -webkit-box-align: stretch;
            align-items: stretch; }
  /**
       * Align `center` for the xl breakpoint.
       */
  .align-xl-center {
    -webkit-box-align: center;
            align-items: center; }
  /**
       * Align `flex-start` for the xl breakpoint.
       */
  .align-xl-flex-start {
    -webkit-box-align: start;
            align-items: flex-start; }
  /**
       * Align `flex-end` for the xl breakpoint.
       */
  .align-xl-flex-end {
    -webkit-box-align: end;
            align-items: flex-end; }
  /**
       * Align `baseline` for the xl breakpoint.
       */
  .align-xl-baseline {
    -webkit-box-align: baseline;
            align-items: baseline; }
  /**
       * Justify `start` for the xl breakpoint.
       */
  .justify-xl-start {
    -webkit-box-pack: start;
            justify-content: start; }
  /**
       * Justify `center` for the xl breakpoint.
       */
  .justify-xl-center {
    -webkit-box-pack: center;
            justify-content: center; }
  /**
       * Justify `space-between` for the xl breakpoint.
       */
  .justify-xl-space-between {
    -webkit-box-pack: justify;
            justify-content: space-between; }
  /**
       * Justify `space-around` for the xl breakpoint.
       */
  .justify-xl-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the xl breakpoint.
       */
  .justify-xl-space-evenly {
    -webkit-box-pack: space-evenly;
            justify-content: space-evenly; }
  /**
       * Bleed left for the xl breakpoint.
       */
  .bleed-xl-left {
    padding-left: 0; }
  /**
       * Bleed right for the xl breakpoint.
       */
  .bleed-xl-right {
    padding-right: 0; }
  /**
     * Order first for the `xl` breakpoint.
     */
  .first-xl {
    -webkit-box-ordinal-group: 0;
            order: -1; }
  /**
     * Order last for the `xl` breakpoint.
     */
  .last-xl {
    -webkit-box-ordinal-group: 2;
            order: 1; }
  /**
     * Reverse order for the `xl` breakpoint.
     */
  .reverse-xl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

h1,
h2,
h3 {
  font-family: "Noto Serif JP";
  word-break: break-word; }
  h1.heading--white,
  h2.heading--white,
  h3.heading--white {
    color: #fff; }
  h1.heading--orange,
  h2.heading--orange,
  h3.heading--orange {
    color: #fb811c; }
  h1.heading--align-center,
  h2.heading--align-center,
  h3.heading--align-center {
    text-align: center; }

h1 {
  margin-bottom: 30px;
  color: #008c9a;
  font-size: 40px;
  font-weight: 700;
  line-height: 57px; }
  h1.heading--color-black {
    color: #000; }

.section-article h1 {
  margin-bottom: 0; }

h2,
.section-article h1 {
  color: #000;
  font-size: 30px;
  font-weight: 700;
  line-height: 44px; }
  h2.heading--border-bottom:after,
  .section-article h1.heading--border-bottom:after {
    display: block;
    width: 150px;
    height: 1px;
    margin-top: 10px;
    margin-bottom: 30px;
    border-bottom: 1px;
    background: #008c9a;
    content: ''; }
  h2.heading--border-bottom.heading--align-center:after,
  .section-article h1.heading--border-bottom.heading--align-center:after {
    margin: auto;
    margin-top: 10px;
    margin-bottom: 30px; }

.section-article .section-article__main-content h2:after {
  width: 95%; }

.section-article .section-article__main-content h3 {
  margin-bottom: 20px; }
  .section-article .section-article__main-content h3:after {
    display: none; }

h3 {
  color: #000;
  font-size: 20px;
  font-weight: 700;
  line-height: 29px; }
  h3.heading--border-bottom:after {
    display: block;
    width: 150px;
    height: 1px;
    margin-top: 10px;
    margin-bottom: 30px;
    border-bottom: 1px;
    background: #008c9a;
    content: ''; }
  h3.heading--border-bottom.heading--align-center:after {
    margin: auto;
    margin-top: 10px;
    margin-bottom: 30px; }

@media only screen and (max-width: 767px) {
  h1 {
    font-size: 30px;
    line-height: 44px; }
  h2:not(.branches-menu__trigger) {
    font-size: 25px;
    line-height: 36px; }
  h3 {
    font-size: 20px;
    line-height: 29px; }
  h1.heading--border-bottom:after,
  h2.heading--border-bottom:after,
  h3.heading--border-bottom:after {
    margin-bottom: 0; } }

.select {
  padding: 5px 15px;
  background: none;
  color: #008c9a;
  font-weight: 100;
  -webkit-appearance: none; }
  .select:hover {
    cursor: pointer; }

form input {
  width: 100%;
  padding: 5px 0;
  border-bottom: 1px solid #fff;
  background: none;
  color: #fff;
  -webkit-appearance: none; }

form input[type='submit'] {
  width: auto; }

form .gfield_contains_required label {
  display: none; }

form ::-webkit-input-placeholder {
  color: #3d3d3d; }

form ::-moz-placeholder {
  color: #3d3d3d; }

form :-ms-input-placeholder {
  color: #3d3d3d; }

form ::-ms-input-placeholder {
  color: #3d3d3d; }

form ::placeholder, form label {
  color: #3d3d3d; }

form .gform_validation_container {
  display: none !important; }

form .validation_message {
  font-style: italic;
  font-weight: 300; }

form textarea {
  width: 100%;
  margin-top: 10px;
  padding: 5px;
  border: 1px solid #fff;
  background: none; }

form input[type='checkbox'],
form input[type='radio'] {
  display: inline-block;
  width: 11px;
  height: 11px;
  padding: 0;
  border: 1px solid #3d3d3d;
  background-color: transparent;
  overflow: hidden;
  box-sizing: border-box;
  -webkit-appearance: none; }
  form input[type='checkbox']:checked,
  form input[type='radio']:checked {
    position: relative; }
    form input[type='checkbox']:checked:before,
    form input[type='radio']:checked:before {
      display: block;
      position: absolute;
      top: 0;
      left: 6px;
      width: 10px;
      height: 10px;
      -webkit-transform: rotate(225deg);
              transform: rotate(225deg);
      border-width: 0.08em 0.08em 0 0;
      border-style: solid;
      border-color: #3d3d3d;
      content: ''; }
    form input[type='checkbox']:checked:after,
    form input[type='radio']:checked:after {
      display: block;
      position: absolute;
      top: 0;
      left: -7px;
      width: 10px;
      height: 10px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      border-width: 0.08em 0.08em 0 0;
      border-style: solid;
      border-color: #3d3d3d;
      content: ''; }

form ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  form ul.gfield_checkbox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: start;
    margin-top: 0; }
    form ul.gfield_checkbox li {
      margin-right: 20px; }
  form ul .gfield {
    display: inline-block;
    width: 48%;
    margin-bottom: 30px; }
    form ul .gfield.textarea {
      width: 100%; }
      form ul .gfield.textarea label {
        display: block; }

.validation_error {
  margin: 30px 0;
  padding: 20px 0;
  border-radius: 10px;
  background: #008c9a;
  font-family: "Noto Serif JP";
  text-align: center; }

.contact-form--background-orange form .button {
  background: #fff;
  color: #000; }
  .contact-form--background-orange form .button:hover {
    box-shadow: 0 2px 10px 2px rgba(255, 255, 255, 0.5); }

.contact-form--background-orange form ::-webkit-input-placeholder {
  color: #fff; }

.contact-form--background-orange form ::-moz-placeholder {
  color: #fff; }

.contact-form--background-orange form :-ms-input-placeholder {
  color: #fff; }

.contact-form--background-orange form ::-ms-input-placeholder {
  color: #fff; }

.contact-form--background-orange form label,
.contact-form--background-orange form ::placeholder {
  color: #fff; }

.contact-form--background-orange ::-webkit-input-placeholder {
  color: #fff; }

.contact-form--background-orange ::-webkit-input-placeholder,
.contact-form--background-orange :-ms-input-placeholder,
.contact-form--background-orange ::placeholder {
  color: #fff; }

@media only screen and (max-width: 767px) {
  form ul li,
  form ul .gfield {
    width: 100%; }
  form .button,
  form input[type='submit'] {
    width: 100%;
    cursor: pointer; } }

p a {
  color: #fb811c; }
  p a:hover {
    text-decoration: underline; }

.link.link--orange {
  color: #fb811c;
  text-decoration: none; }

.link.link--blue {
  color: #008c9a; }

ul {
  margin-top: 20px; }
  ul.text-image__usp-list {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    margin-top: 12px; }
  ul.ul-list--orange {
    color: #fb811c; }
  ul li.text-image__usp-item {
    margin-right: 20px; }
    ul li.text-image__usp-item svg {
      width: 100%;
      max-width: 14px;
      margin-right: 7px; }

.footer__block-appointment li {
  color: #fff; }
  .footer__block-appointment li:before {
    display: inline-block;
    margin-right: 11px; }

.logo {
  width: 300px; }
  @media only screen and (min-width: 0px) and (max-width: 767px) {
    .logo {
      width: 60px;
      height: 60px; } }

p {
  color: #3d3d3d;
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 0.44px;
  line-height: 30px; }

.default-text__content {
  width: 100%;
  max-width: 820px;
  margin: auto; }
  .default-text__content a {
    display: inline-block;
    margin-top: 30px; }

.text-image.text-image.text-image--align-center .slider {
  position: relative;
  right: 0; }

.section.section-slider {
  position: relative; }
  .section.section-slider .js-slideshow {
    max-height: 500px; }
  .section.section-slider .text-image__slider-item img {
    -o-object-fit: cover;
       object-fit: cover;
    max-height: 500px;
    width: 100%; }

.slideshow:hover {
  cursor: -webkit-grab;
  cursor: grab; }

.slider-arrow {
  display: -webkit-box;
  display: flex;
  width: 15px;
  color: #008c9a;
  z-index: 1; }
  .slider-arrow:hover {
    cursor: pointer; }
  .slider-arrow.slider-nav__arrow-left {
    margin-right: 30px; }
  .slider-arrow svg {
    width: 15px; }

.owl-nav {
  position: absolute;
  bottom: 10px;
  display: -webkit-box;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
          justify-content: center;
  align-content: center;
  z-index: 1; }
  .owl-nav .slider-test {
    position: relative;
    height: 100%;
    width: auto;
    background: rgba(255, 255, 255, 0.7);
    padding: 5px 10px;
    border-radius: 38px;
    display: -webkit-box;
    display: flex; }
  .owl-nav .owl-next,
  .owl-nav .owl-prev {
    display: block;
    width: 40px;
    color: #008c9a !important;
    border: none;
    height: 100%;
    background: rgba(255, 255, 255, 0.7) !important; }
    .owl-nav .owl-next:hover,
    .owl-nav .owl-prev:hover {
      cursor: pointer; }
    .owl-nav .owl-next svg,
    .owl-nav .owl-prev svg {
      position: relative;
      top: 3px;
      width: 15px; }
  .owl-nav .owl-prev {
    border-top-left-radius: 38px;
    border-bottom-left-radius: 38px; }
  .owl-nav .owl-next {
    border-top-right-radius: 38px;
    border-bottom-right-radius: 38px; }

.section-article .owl-nav {
  width: 95%; }

.slider-item {
  width: auto;
  height: 100%;
  max-height: 500px; }

.slider-nav {
  display: -webkit-box;
  display: flex;
  position: absolute;
  bottom: 10px;
  left: calc(50% - 40px);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  max-width: 80px;
  max-height: 30px;
  padding: 7px 10px;
  border-radius: 38px;
  z-index: 1; }
  .slider-nav svg {
    vertical-align: middle; }
    .slider-nav svg:hover {
      cursor: pointer; }
  .slider-nav .blur {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 38px;
    background: rgba(255, 255, 255, 0.7); }

@media only screen and (max-width: 1100px) {
  .section-article .owl-nav {
    width: 90%; } }

@media only screen and (max-width: 900px) {
  .text-image__slider-item {
    max-height: 350px; }
    .text-image__slider-item img {
      -o-object-fit: cover;
         object-fit: cover;
      height: 100%; } }

@media only screen and (max-width: 768px) and (orientation: portrait) {
  .slider {
    position: relative;
    max-height: 350px;
    overflow: hidden; }
  .slider-item {
    max-width: none;
    margin: auto;
    overflow: hidden; }
    .slider-item img {
      width: 100%;
      max-width: none; } }

@media only screen and (max-width: 767px) {
  .section-tabs__tab-images .owl-nav {
    bottom: 20px !important; }
  .owl-nav {
    width: 100% !important; }
  .text-image__slider-item {
    height: 300px; } }

/* ==========================================================================
   CMS Output
   ========================================================================== */
/**
 * Every conceivable HTML element within a `.cms-output` wrapper.
 *
 * 1. Exclude last childs.
 */
.cms-output > *:not(:last-child) {
  margin-bottom: 1em;
  /* 1 */ }

.cms-output ul {
  list-style-type: disc; }

.cms-output ol {
  list-style-type: decimal; }

.cms-output p > a {
  color: linear-gradient(225deg, #ff9256 0%, #ffa107 100%); }
  .cms-output p > a:hover {
    text-decoration: underline; }

/* ==========================================================================
   Main Menu
   ========================================================================== */
/**
 * WordPress main menu.
 */
/**
 * Main menu.
 */
.main-header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100; }
  .main-header .main-header__wrapper {
    position: relative;
    padding: 20px 0;
    background: #fff;
    z-index: 100; }
    .main-header .main-header__wrapper.is-active {
      -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
      transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
      background: -webkit-gradient(linear, right top, left top, from(#04bbcc), to(#008c9a));
      background: linear-gradient(to left, #04bbcc 0%, #008c9a 100%); }
    .main-header .main-header__wrapper:after {
      display: block;
      clear: both;
      content: ''; }
    .main-header .main-header__wrapper .main-header__container {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center;
      max-width: 1250px;
      margin: auto; }
    .main-header .main-header__wrapper .logo-container--mobile {
      display: none; }

.main-header__block {
  position: relative;
  width: 50%;
  float: left;
  z-index: 100; }
  .main-header__block .logo-container {
    display: inline; }
    .main-header__block .logo-container.hide {
      display: none; }

.main-header__block.main-header__block-right {
  text-align: right; }

.language-switch,
.js-main-menu-button {
  vertical-align: middle; }

/**
 * Main menu item has children.
 */
.main-menu > .menu-item-has-children {
  position: relative; }
  @media only screen and (min-width: 1200px) {
    .main-menu > .menu-item-has-children:hover .submenu-container {
      display: block; } }

.language-switch {
  display: inline-block;
  margin-right: 30px; }
  .language-switch .language-switch__list {
    display: -webkit-box;
    display: flex;
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    padding-right: 5px;
    color: #008c9a;
    cursor: pointer;
    text-transform: uppercase; }
    .language-switch .language-switch__list .js-language-list {
      display: none;
      position: absolute;
      top: 30px;
      right: 0;
      padding: 15px;
      border-bottom-left-radius: 10px;
      border-bottom-right-radius: 10px;
      background: #e1f2f4;
      text-align: left; }
      .language-switch .language-switch__list .js-language-list .language-switch__option {
        -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }
        .language-switch .language-switch__list .js-language-list .language-switch__option:hover {
          color: #fff; }
  .language-switch ul {
    margin-top: 0; }
  .language-switch.select--white .language-switch__list.chevron:after,
  .language-switch.select--white .language-switch__option,
  .language-switch.select--white span {
    color: #fff; }
  .language-switch.select--white .js-language-list .language-switch__option:hover {
    color: #008c9a; }
  .language-switch .language-switch__list.chevron:after {
    top: 10px;
    left: 8px;
    border-width: 1px 1px 0 0;
    color: #008c9a; }

.line {
  width: 1px;
  height: 100%;
  max-height: 658px;
  margin: 0 auto;
  border: 1px solid #fff;
  box-sizing: border-box; }

@media only screen and (max-width: 1300px) {
  .main-header .main-header__wrapper .main-header__container {
    padding: 0 20px; } }

@media only screen and (max-width: 767px) {
  .main-header__wrapper .logo-container {
    display: none; }
    .main-header__wrapper .logo-container.logo-container--mobile {
      display: block; }
  .main-header__wrapper.is-active .main-header__container .main-header__block {
    width: 100%; }
    .main-header__wrapper.is-active .main-header__container .main-header__block .logo-container--mobile {
      display: none; }
    .main-header__wrapper.is-active .main-header__container .main-header__block .logo-container--white {
      display: block;
      margin-top: 20px; }
      .main-header__wrapper.is-active .main-header__container .main-header__block .logo-container--white .logo {
        width: 300px;
        height: auto; }
  .main-header__container {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row; }
    .main-header__container:after {
      display: block;
      clear: both;
      content: ''; }
  .main-header__block {
    width: 50%; } }

/* ==========================================================================
   Submenu
   ========================================================================== */
/**
 * Submenu button.
 */
.submenu-button {
  position: absolute; }

/**
 * Submenu container.
 */
.submenu-container {
  display: none; }

/**
 * Submenu.
 */
/**
 * Submenu item.
 */
/**
 * Submenu item link.
 */
.bar1,
.bar2,
.bar3 {
  width: 35px;
  height: 5px;
  margin: 6px 0;
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  background-color: #008c9a; }

.is-active .bar1 {
  transform: rotate(-45deg) translate(-9px, 7px);
  background-color: #fff;
  -webkit-transform: rotate(-45deg) translate(-9px, 7px); }

.is-active .bar2 {
  opacity: 0; }

.is-active .bar3 {
  transform: rotate(45deg) translate(-8px, -7px);
  background-color: #fff;
  -webkit-transform: rotate(45deg) translate(-8px, -7px); }

.main-navigation {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 20px 0;
  background: -webkit-gradient(linear, right top, left top, from(#04bbcc), to(#008c9a));
  background: linear-gradient(to left, #04bbcc 0%, #008c9a 100%);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  z-index: 90;
  overflow-y: scroll; }
  .main-navigation .main-menu .menu-item {
    margin-bottom: 30px; }
    .main-navigation .main-menu .menu-item a {
      display: inline-block;
      font-family: "Noto Serif JP";
      font-size: 30px;
      font-weight: 700; }
      .main-navigation .main-menu .menu-item a:after {
        display: block;
        width: 0;
        height: 1px;
        -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
        background: #fff;
        content: ''; }
      .main-navigation .main-menu .menu-item a:hover {
        -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
        text-shadow: 2px 2px #008c9a; }
        .main-navigation .main-menu .menu-item a:hover:after {
          width: 100%; }
  .main-navigation .main-navigation__contact {
    margin-top: 80px; }
    .main-navigation .main-navigation__contact .main-navigation__contact-title {
      margin-bottom: 10px; }
    .main-navigation .main-navigation__contact .main-navigation__contact-teaser p {
      color: #fff; }
  .main-navigation .main-navigation__left-column {
    padding: 0; }
    .main-navigation .main-navigation__left-column .branches-menu__trigger.chevron:after {
      display: none;
      top: 16px; }
    .main-navigation .main-navigation__left-column .branches-menu__trigger.chevron.open:after {
      top: 22px; }

.main-navigation.is-active {
  padding: 150px 10px 70px;
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  opacity: 1;
  visibility: visible; }
  .main-navigation.is-active .language-switch {
    color: #fff; }

.main-navigation::-webkit-scrollbar {
  display: none; }

.js-navigation {
  position: relative; }

.main-navigation__branches {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  flex-wrap: wrap;
  margin: 30px 0; }
  .main-navigation__branches a {
    padding: 0; }
  .main-navigation__branches .main-navigation__branches-item {
    padding: 20px 5px;
    -webkit-transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    border-radius: 10px;
    text-align: center; }
    .main-navigation__branches .main-navigation__branches-item:hover {
      background-color: var(--branche-color); }
    .main-navigation__branches .main-navigation__branches-item .main-navigation__branches-icon {
      max-height: 60px; }
    .main-navigation__branches .main-navigation__branches-item .main-navigation__branches-title h3 {
      color: #fff;
      font-family: "Ubuntu";
      font-size: 15px;
      font-weight: 400; }

.chevron:after {
  display: inline-block;
  position: relative;
  top: 11px;
  left: 0.75em;
  width: 0.45em;
  height: 0.45em;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  border-width: 0.08em 0.08em 0 0;
  border-style: solid;
  content: '';
  vertical-align: top;
  z-index: -1; }

.chevron.open:after {
  top: 14px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg); }

@media only screen and (max-width: 767px) {
  .js-navigation {
    margin-top: 50px; }
  .main-navigation .main-navigation__left-column {
    width: 100%; }
    .main-navigation .main-navigation__left-column .branches-menu__trigger.chevron:after {
      display: inline-block; }
  .main-navigation__middle-column {
    display: none; }
  .main-navigation__main-menu {
    margin-top: 20px; }
  .main-navigation__contact .button {
    display: -webkit-inline-box;
    display: inline-flex; }
  .main-navigation__branches {
    display: none;
    margin: 20px 0 50px; }
    .main-navigation__branches .main-navigation__branches-item {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center;
      padding: 0; }
      .main-navigation__branches .main-navigation__branches-item .main-navigation__branches-icon {
        width: 100%;
        max-width: 31px;
        max-height: 30px;
        margin-right: 24px;
        padding-left: 0; }
      .main-navigation__branches .main-navigation__branches-item .main-navigation__branches-title {
        display: inline-block; }
        .main-navigation__branches .main-navigation__branches-item .main-navigation__branches-title h3 {
          font-size: 20px; } }

.footer {
  position: relative;
  padding-top: 50px;
  overflow: hidden;
  box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.06); }
  .footer .footer__social-icons svg {
    height: 30px;
    max-height: 30px;
    -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }
    .footer .footer__social-icons svg:hover {
      color: #fb811c; }
  .footer .footer__block {
    margin-bottom: 30px; }
    .footer .footer__block ul {
      margin-top: 0; }
    .footer .footer__block.footer__block--extra-padding {
      padding-left: 20px; }
    .footer .footer__block.footer__block-contact .footer__block-content p {
      margin-bottom: 30px; }
    .footer .footer__block.footer__block-socials .footer__social-item {
      margin-right: 10px; }
    .footer .footer__block.footer__block-sitemap {
      display: -webkit-box;
      display: flex; }
    .footer .footer__block.footer__block-appointment.block-appointment--desktop {
      display: block; }
    .footer .footer__block.footer__block-appointment.block-appointment--mobile, .footer .footer__block.footer__block-appointment.block-appointment--tablet {
      display: none; }
    .footer .footer__block.footer__block-appointment h3,
    .footer .footer__block.footer__block-appointment p {
      color: #fff; }
    .footer .footer__block.footer__block-appointment ul {
      margin-top: 20px; }
    .footer .footer__block.footer__block-appointment svg {
      position: relative;
      top: 2px;
      max-width: 18px;
      max-height: 33px;
      margin-right: 10px; }
    .footer .footer__block .footer__block-title {
      margin-bottom: 10px; }
    .footer .footer__block .footer__block-content a {
      color: #fb811c;
      text-decoration: underline; }
      .footer .footer__block .footer__block-content a:hover {
        text-decoration: none; }
  .footer .footer__block-copyright-wrapper {
    padding: 20px 100px;
    background: #f9f9f9;
    color: #3d3d3d; }
    .footer .footer__block-copyright-wrapper .footer__block-copyright {
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: justify;
              justify-content: space-between; }
  .footer .footer__block-privacy {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.14286em; }
    @media only screen and (min-width: 1100px) {
      .footer .footer__block-privacy {
        width: 33%; }
        .footer .footer__block-privacy:nth-child(2) {
          text-align: center; }
        .footer .footer__block-privacy:nth-child(3) {
          text-align: right; } }
    .footer .footer__block-privacy a:hover {
      text-decoration: underline; }
  .footer .footer__background {
    position: absolute;
    top: -20px;
    left: 62%;
    right: 0;
    width: 60%;
    height: 130%;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
    background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%);
    z-index: -1; }
  .footer .chevron:after {
    display: none; }

@media only screen and (min-width: 2300px) {
  .footer .footer__background {
    left: 60%;
    right: 0;
    width: 60%;
    height: 130%; } }

@media only screen and (max-width: 1800px) {
  .footer .footer__background {
    left: 65%; }
  .footer .footer__block-copyright-wrapper {
    padding: 20px 0px; } }

@media only screen and (max-width: 1500px) {
  .footer .footer__background {
    left: 67%; }
  .footer .footer__block-copyright-wrapper {
    padding: 20px 0px; } }

@media only screen and (max-width: 1300px) {
  .footer .footer__background {
    left: 70%; } }

@media only screen and (max-width: 1100px) {
  .footer .footer__background {
    left: 69%; } }

@media only screen and (min-width: 1030px) and (max-width: 1200px) {
  .footer__block-copyright {
    width: 100%; } }

@media only screen and (min-width: 1024px) and (max-width: 1030px) {
  .footer__block.footer__block-contact {
    width: 50%; } }

@media only screen and (max-width: 1030px) {
  .footer .footer__background {
    z-index: 0; }
  .footer .footer__background.show-desktop {
    display: none; }
  .footer .footer__block-appointment.block-appointment--tablet:before {
    position: absolute;
    top: -20px;
    left: 20px;
    right: 0;
    width: 110%;
    height: 130%;
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
    background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%);
    z-index: -1;
    content: ''; }
  .footer .footer__block-copyright-wrapper {
    padding: 0;
    overflow: hidden; }
    .footer .footer__block-copyright-wrapper .footer__block-copyright {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      -webkit-box-pack: center;
              justify-content: center; }
      .footer .footer__block-copyright-wrapper .footer__block-copyright .footer__block-privacy {
        margin-bottom: 30px; }
    .footer .footer__block-copyright-wrapper .appointment-wrapper--mobile {
      display: none; }
  .footer .footer__block.footer__block--extra-padding {
    padding-left: inherit; }
  .footer .footer__block.footer__block-appointment {
    position: relative; }
    .footer .footer__block.footer__block-appointment.block-appointment--desktop {
      display: none; }
    .footer .footer__block.footer__block-appointment.block-appointment--tablet {
      display: block;
      position: relative;
      padding: 50px;
      padding-left: 150px;
      z-index: 1; }
    .footer .footer__block.footer__block-appointment h3,
    .footer .footer__block.footer__block-appointment p,
    .footer .footer__block.footer__block-appointment .footer__block-content,
    .footer .footer__block.footer__block-appointment .button {
      position: relative;
      z-index: 1; }
    .footer .footer__block.footer__block-appointment .footer__block-content {
      display: block; }
      .footer .footer__block.footer__block-appointment .footer__block-content p {
        display: none; }
      .footer .footer__block.footer__block-appointment .footer__block-content ul {
        display: block; } }

@media only screen and (min-device-width: 767px) and (max-width: 768px) and (orientation: portrait) {
  .footer .footer__block .footer__block-content {
    display: none; }
  .footer .footer__block.footer__block-contact .footer__block-content {
    display: block; }
  .footer .footer__block.footer__block-sitemap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
  .footer .chevron:after {
    display: inline-block; } }

@media only screen and (max-width: 767px) {
  .footer .footer__block {
    width: 100%;
    text-align: center;
    margin-bottom: 0; }
    .footer .footer__block.footer__block-contact {
      margin-bottom: 0; }
    .footer .footer__block.footer__block-socials {
      display: none; }
    .footer .footer__block.footer__block-sitemap {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      margin-bottom: 50px; }
    .footer .footer__block .footer__block-content {
      display: none; }
    .footer .footer__block.footer__block-appointment {
      margin-bottom: 0;
      text-align: left; }
      .footer .footer__block.footer__block-appointment.block-appointment--mobile, .footer .footer__block.footer__block-appointment.block-appointment--tablet {
        padding: 50px 20px;
        text-align: left; }
        .footer .footer__block.footer__block-appointment.block-appointment--mobile .footer__background, .footer .footer__block.footer__block-appointment.block-appointment--tablet .footer__background {
          width: calc(100% + 40px);
          top: 0;
          right: -20px;
          left: -20px;
          -webkit-transform: rotate(0deg);
                  transform: rotate(0deg); }
      .footer .footer__block.footer__block-appointment.block-appointment--mobile {
        display: -webkit-box;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
                flex-direction: column; }
      .footer .footer__block.footer__block-appointment.block-appointment--tablet {
        display: none; }
  .footer .footer__block-copyright-wrapper {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse;
    padding: 0;
    overflow: hidden; }
    .footer .footer__block-copyright-wrapper .footer__block-appointment-wrapper {
      overflow: hidden; }
      .footer .footer__block-copyright-wrapper .footer__block-appointment-wrapper.appointment-wrapper--mobile {
        display: -webkit-box;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
                flex-direction: column; }
    .footer .footer__block-copyright-wrapper .footer__block-copyright {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      -webkit-box-pack: center;
              justify-content: center;
      width: 100%;
      padding: 50px 45px;
      text-align: center; }
      .footer .footer__block-copyright-wrapper .footer__block-copyright .footer__block-privacy {
        margin-bottom: 30px; }
        .footer .footer__block-copyright-wrapper .footer__block-copyright .footer__block-privacy:last-child {
          margin-bottom: 0; }
  .footer .chevron:after {
    display: inline-block; } }

@media screen and (min-width: 0px) and (max-width: 769px) {
  .footer__certificate {
    display: none; }
  .footer__certificate__mobile {
    max-height: 75px;
    -o-object-fit: contain;
       object-fit: contain;
    position: relative;
    z-index: 1;
    margin-top: 25px;
    display: block; } }

@media screen and (min-width: 770px) {
  .footer__certificate__mobile {
    display: none; }
  .footer__certificate {
    max-width: 75px;
    -o-object-fit: contain;
       object-fit: contain;
    position: relative;
    z-index: 1; } }

/* ==========================================================================
   Section
   ========================================================================== */
.js-page-load {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: white;
  z-index: 999;
  display: block;
  top: 0; }

.section__intro-wrapper {
  max-width: 610px;
  padding-bottom: 50px; }

.section--align-center {
  text-align: center; }
  .section--align-center .section__intro-wrapper {
    margin-right: auto;
    margin-left: auto; }

.section {
  position: relative;
  overflow: hidden; }
  .section.text-image, .section.section-news, .section.section__default-text, .section.section-tabs, .section.contact-form {
    margin-top: 100px; }
  .section.teasers__wrapper {
    margin-top: 100px; }
  .section.section-sectors, .section.section-slider {
    margin-top: 100px; }
  .section.teasers__wrapper {
    padding-bottom: 100px; }
  .section.section__default-text {
    margin: 200px 0 200px; }
  .section.section-news {
    padding-bottom: 50px; }
  .section.section-slider {
    max-height: 500px; }

.section:first-of-type:not(.section-slider) {
  margin-top: 200px !important; }

.section:last-of-type.text-image:not(.section-article) {
  padding-bottom: 150px !important; }

@media only screen and (max-width: 1024px) {
  .section.section-sectors, .section.section-slider {
    margin-top: 50px; }
  .section.section__default-text {
    margin: 100px 0 100px; }
  .section.teasers__wrapper {
    margin-top: 150px; } }

@media only screen and (max-width: 800px) {
  .section.section-sectors {
    margin-bottom: 0; }
  .section.text-image, .section.teasers__wrapper, .section.section-news, .section.section__default-text, .section.section-tabs, .section.contact-form {
    margin-top: 70px; }
  .section.section__default-text {
    padding: 50px 60px;
    margin: 0; } }

@media only screen and (max-width: 768px) and (orientation: portrait) {
  .section__default-text {
    padding-right: 20px;
    padding-left: 20px; } }

@media only screen and (max-width: 767px) {
  .section:first-of-type:not(.section-slider) {
    margin-top: 100px !important; }
  .section.section--set-margin {
    margin: 50px 0; }
  .section.section__default-text {
    padding-right: 20px;
    padding-left: 20px; }
  .section.teasers__wrapper, .section.section__default-text {
    padding-bottom: 50px; }
  .section__intro-wrapper {
    padding-bottom: 0; }
  .section:first-of-type {
    margin-top: 100px !important; } }

.text-image__wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
          align-items: stretch;
  align-content: center;
  max-width: 1250px;
  margin: auto; }
  .text-image__wrapper .text-image__text-container,
  .text-image__wrapper .text-image__image-container {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: stretch;
            align-items: stretch;
    width: 50%; }
  .text-image__wrapper .text-image__text-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-pack: center;
            justify-content: center;
    padding: 50px 0; }
    .text-image__wrapper .text-image__text-container .text-image__text-content p {
      margin-bottom: 20px; }
    .text-image__wrapper .text-image__text-container .button {
      align-self: flex-start; }
  .text-image__wrapper .text-image__image-container {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: stretch;
            align-items: stretch;
    width: 50%; }
    .text-image__wrapper .text-image__image-container .text-image__slider-item img {
      height: 100%; }

.section.text-image:not(.text-image--first-section) .slideshow {
  height: 100%;
  max-height: 550px; }
  .section.text-image:not(.text-image--first-section) .slideshow .owl-stage, .section.text-image:not(.text-image--first-section) .slideshow .owl-item {
    height: 100%; }
  .section.text-image:not(.text-image--first-section) .slideshow .text-image__slider-item {
    height: 100%; }
    .section.text-image:not(.text-image--first-section) .slideshow .text-image__slider-item img {
      max-width: none;
      -o-object-fit: cover;
         object-fit: cover; }

.section.text-image:not(.text-image--first-section).text-image--position-right.text-image--align-right .slideshow {
  position: absolute;
  right: 0; }

.section.text-image:not(.text-image--first-section).text-image--position-left.text-image--align-right .slideshow {
  position: absolute;
  left: 0; }

.section.text-image.text-image--first-section img {
  max-height: 500px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain; }

.text-image--position-left.text-image--align-right .text-image__image-container img {
  position: absolute;
  left: 0;
  max-width: 50%; }

.text-image--position-left .text-image__wrapper {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
          flex-direction: row-reverse; }
  .text-image--position-left .text-image__wrapper .text-image__text-container {
    padding-left: 80px; }

.text-image--position-right.text-image--align-right .text-image__image-container img {
  position: absolute;
  right: 0;
  max-width: 50%;
  -o-object-fit: cover;
     object-fit: cover; }

.text-image--position-right .text-image__wrapper .text-image__text-container {
  padding-right: 80px; }

.section-article.text-image--position-right.text-image--align-right .text-image__image-container {
  position: absolute;
  right: -20px;
  height: 100%;
  max-height: 500px; }
  .section-article.text-image--position-right.text-image--align-right .text-image__image-container img {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: 500px !important;
    position: static; }

@media only screen and (min-width: 900px) and (max-width: 1300px) {
  .section-article.text-image--position-right.text-image--align-right .text-image__image-container {
    -webkit-box-align: center;
            align-items: center;
    height: auto !important; }
  .section.text-image.text-image--position-right.text-image--first-section.slider-wrapper .text-image__wrapper {
    -webkit-box-align: center;
            align-items: center; } }

@media only screen and (max-width: 1300px) {
  .text-image__wrapper .text-image__text-container {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 40px; } }

@media only screen and (max-width: 1200px) {
  .text-image__usp-list {
    flex-wrap: wrap; }
  .section-article .text-image__wrapper {
    -webkit-box-align: center;
            align-items: center; } }

@media only screen and (max-width: 1024px) {
  .section-article .text-image__wrapper {
    padding-bottom: 0; }
  .text-image__wrapper {
    padding-bottom: 0; }
    .text-image__wrapper .text-image__usp-list {
      flex-wrap: wrap; }
      .text-image__wrapper .text-image__usp-list .text-image__usp-item {
        margin-bottom: 20px; }
  .text-image--position-right .text-image__wrapper .text-image__text-container {
    padding-right: 40px; }
  .text-image--position-left .text-image__wrapper .text-image__text-container {
    padding-left: 40px; } }

@media only screen and (min-width: 900px) {
  .section-article.text-image--position-right.text-image--align-right .text-image__image-container img {
    width: 100%;
    max-width: 50%;
    height: 100%;
    max-height: 500px; } }

@media only screen and (max-width: 900px) {
  .text-image .text-image__wrapper {
    padding-right: 0;
    padding-left: 0; }
    .text-image .text-image__wrapper .text-image__text-container {
      padding-right: 40px; }
    .text-image .text-image__wrapper .text-image__image-container .text-image__slider-item img {
      position: relative;
      max-width: none;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      max-height: 350px; }
  .text-image:not(.text-image--first-section) .text-image__slider {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    max-height: 350px; }
  .text-image .text-image__image-container {
    position: relative !important;
    padding-left: 40px;
    padding-right: 40px; }
  .text-image .text-image__slider-item {
    width: 100%; }
  .text-image .text-image__slider {
    max-height: 350px;
    overflow: hidden;
    width: 100%; }
  .text-image--position-right.text-image--align-right .text-image__image-container img {
    position: relative;
    height: auto;
    left: initial;
    right: initial;
    width: 100%;
    max-width: none; }
  .text-image.text-image.text-image--align-right.text-image--position-right .text-image__slider .text-image__slider-item img {
    left: auto;
    position: relative;
    right: auto;
    height: auto;
    width: 100%; }
  .text-image.text-image.text-image--align-right.text-image--position-left .text-image__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
  .text-image.text-image.text-image--align-right.text-image--position-left .text-image__slider .text-image__slider-item img {
    left: auto;
    position: relative;
    right: auto;
    height: auto;
    width: 100%; }
  .text-image.text-image.text-image--align-right .text-image.text-image--position-right img {
    left: 0;
    right: 0;
    position: relative; }
  .text-image__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .text-image__wrapper .text-image__image-container,
    .text-image__wrapper .text-image__text-container {
      width: 100%;
      margin-bottom: 30px;
      position: relative; }
  .text-image--position-left.text-image--align-right .text-image__wrapper .text-image__image-container,
  .text-image--position-right.text-image--align-right .text-image__wrapper .text-image__image-container {
    position: relative;
    right: 0; }
  .owl-nav {
    width: 90%; }
  .section.section-slider .owl-nav,
  .section.section-tabs .owl-nav {
    width: 100%; } }

@media only screen and (max-width: 768px) {
  .text-image__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .text-image__wrapper .text-image__image-container {
      margin-bottom: 30px; }
      .text-image__wrapper .text-image__image-container .text-image__slider-item {
        max-width: none;
        margin: auto;
        overflow: hidden; }
  .text-image--position-left .text-image__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .text-image--position-left .text-image__wrapper .text-image__text-container {
      margin-bottom: 0; }
  .text-image--position-right .text-image__wrapper .text-image__text-container {
    margin-bottom: 0; }
  .text-image--position-right .text-image__wrapper .text-image__slider {
    position: relative;
    overflow: hidden; }
  .text-image__text-container,
  .text-image__image-container {
    padding: 0; } }

@media only screen and (max-width: 767px) {
  .text-image .text-image__wrapper .text-image__text-container {
    padding-top: 0;
    padding-right: 20px;
    padding-left: 20px; }
  .text-image .text-image__image-container {
    padding: 0; }
  .text-image .text-image__usp-list .text-image__usp-item {
    margin-right: 10px;
    margin-bottom: 15px; }
    .text-image .text-image__usp-list .text-image__usp-item svg {
      margin-right: 2px; }
  .text-image--position-left .text-image__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .text-image--position-left .text-image__wrapper .text-image__text-container {
      margin-bottom: 0; }
  .text-image--position-right .text-image__wrapper .text-image__text-container {
    margin-bottom: 0; } }

.section.section-sectors {
  margin-bottom: 100px; }
  .section.section-sectors:before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc(100% - 100px);
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    background: #e1f2f4;
    content: '';
    overflow: visible;
    z-index: -1; }

.sectors__content-wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row; }
  .sectors__content-wrapper .sectors__content-container {
    width: 25%;
    padding: 30px;
    padding-left: 0;
    overflow: visible; }
    .sectors__content-wrapper .sectors__content-container .sectors-heading {
      font-size: 25px; }

.sectors__sectors-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  flex-wrap: wrap;
  width: 75%; }

.sectors__sector-item-link {
  display: none;
  -webkit-box-pack: center;
          justify-content: center;
  width: 25%;
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  border-radius: 10px;
  visibility: hidden; }
  .sectors__sector-item-link:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    background-color: var(--branche-color);
    color: #fff; }
  .sectors__sector-item-link.main-sector {
    display: -webkit-box;
    display: flex;
    visibility: visible; }
  .sectors__sector-item-link .sectors__sector-item-title {
    font-size: 20px; }
  .sectors__sector-item-link .sectors__sector-item-wrapper {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: center;
            justify-content: center; }
    .sectors__sector-item-link .sectors__sector-item-wrapper svg {
      width: 100%;
      max-width: 60px;
      height: 100%;
      max-height: 60px;
      margin-bottom: 10px; }

.section-sectors--show-sectors .sectors__sector-item-link:hover {
  -webkit-transform: scale(1);
          transform: scale(1); }

.section-sectors--show-sectors .sectors__sector-item-link {
  display: -webkit-box !important;
  display: flex !important;
  padding: 30px 0 45px;
  visibility: visible; }

@media only screen and (max-width: 1400px) {
  .sectors__sector-item-link {
    width: 22%; } }

@media only screen and (min-width: 1300px) {
  .section.section-sectors {
    overflow: visible; }
    .section.section-sectors .container {
      padding: 0; } }

@media only screen and (max-width: 1300px) {
  .section.section-sectors .container {
    padding: 0 40px; } }

@media only screen and (max-width: 1050px) {
  .section.section-sectors:before {
    width: calc(100% - 40px); }
  .section-sectors {
    overflow: hidden; }
    .section-sectors .sectors__sectors-container {
      overflow: hidden; }
    .section-sectors .sectors__content-wrapper .sectors__content-container {
      max-width: 30%;
      padding: 30px 0;
      padding-left: 20px; }
      .section-sectors .sectors__content-wrapper .sectors__content-container .sectors-heading {
        font-size: 22px; }
    .section-sectors .sectors__content-wrapper .sectors__sector-item-link {
      width: 30%; }
      .section-sectors .sectors__content-wrapper .sectors__sector-item-link.main-sector:nth-child(4) {
        display: none; } }

@media only screen and (max-width: 850px) {
  .section-sectors .sectors__content-wrapper .sectors__sectors-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    width: 50%;
    max-width: 100%;
    margin: 30px 0; }
  .section-sectors .sectors__content-wrapper .sectors__content-container {
    width: 40%;
    max-width: 100%;
    margin-right: 10%; }
  .section-sectors .sectors__content-wrapper .sectors__sector-item-link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: start;
            justify-content: start;
    width: 100%;
    margin-bottom: 30px; }
    .section-sectors .sectors__content-wrapper .sectors__sector-item-link.main-sector:nth-child(4) {
      display: -webkit-box;
      display: flex;
      margin-bottom: 0; }
    .section-sectors .sectors__content-wrapper .sectors__sector-item-link .sectors__sector-item-wrapper {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row; }
      .section-sectors .sectors__content-wrapper .sectors__sector-item-link .sectors__sector-item-wrapper svg {
        max-height: 30px;
        margin: 0;
        margin-right: 10px; }
  .section-sectors--show-sectors .sectors__content-wrapper .sectors__sector-item-link {
    margin-bottom: 30px;
    padding: 0; }
    .section-sectors--show-sectors .sectors__content-wrapper .sectors__sector-item-link.main-sector:nth-child(4) {
      margin-bottom: 30px; } }

@media only screen and (min-width: 768px) {
  .show-sectors--show-mobile {
    display: none !important; }
  .show-sectors--hide-mobile {
    display: -webkit-inline-box;
    display: inline-flex; } }

@media only screen and (max-width: 767px) {
  .section.section-sectors {
    overflow-x: hidden;
    margin-bottom: 50px; }
    .section.section-sectors:before {
      width: calc(100% - 20px); }
  .sectors__content-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
    .sectors__content-wrapper .sectors__content-container,
    .sectors__content-wrapper .sectors__sectors-container {
      width: 100%; }
    .sectors__content-wrapper .sectors__content-container {
      padding: 0;
      padding-top: 30px; }
    .sectors__content-wrapper .sectors__sectors-container {
      padding: 0; }
    .sectors__content-wrapper .sectors__sector-item-link {
      margin-bottom: 30px;
      padding: 0; }
      .sectors__content-wrapper .sectors__sector-item-link.main-sector:nth-child(4) {
        margin-bottom: 30px; }
    .sectors__content-wrapper .show-sectors--show-mobile {
      display: -webkit-inline-box;
      display: inline-flex;
      min-width: 150px;
      max-width: 170px; }
    .sectors__content-wrapper .show-sectors--hide-mobile {
      display: none !important; }
  .section-sectors .sectors__content-wrapper .sectors__sectors-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    width: 100%;
    max-width: 100%;
    margin: 0 0 30px; }
  .section-sectors .sectors__content-wrapper .sectors__content-container {
    width: 100%;
    padding-left: 10px; } }

.section-tabs__wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  padding: 20px 0; }
  .section-tabs__wrapper .section-tabs__tabs-container {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    width: 25%;
    border-left: 1px solid #ffb81c; }
    .section-tabs__wrapper .section-tabs__tabs-container .tabs-list {
      width: 100%;
      margin: 0; }
  .section-tabs__wrapper .tabs-list-item,
  .section-tabs__wrapper .mobile-accordion {
    position: relative;
    width: 100%;
    margin-top: 20px;
    padding: 10px 17px;
    -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }
    .section-tabs__wrapper .tabs-list-item:before,
    .section-tabs__wrapper .mobile-accordion:before {
      position: absolute;
      top: 0;
      left: -3px;
      height: 100%;
      border-left: 5px solid transparent;
      border-radius: 2.5px;
      content: ''; }
    .section-tabs__wrapper .tabs-list-item:hover,
    .section-tabs__wrapper .mobile-accordion:hover {
      cursor: pointer; }
      .section-tabs__wrapper .tabs-list-item:hover:before,
      .section-tabs__wrapper .mobile-accordion:hover:before {
        border-color: #ffb81c; }
    .section-tabs__wrapper .tabs-list-item.active,
    .section-tabs__wrapper .mobile-accordion.active {
      border-top-right-radius: 10px;
      border-bottom-right-radius: 10px;
      background: rgba(255, 184, 28, 0.1); }
      .section-tabs__wrapper .tabs-list-item.active:before,
      .section-tabs__wrapper .mobile-accordion.active:before {
        border-left: 5px solid #ffb81c; }
  .section-tabs__wrapper .mobile-accordion {
    display: none;
    margin: 0;
    font-family: "Noto Serif JP";
    font-weight: 700; }
    .section-tabs__wrapper .mobile-accordion.active {
      border: 0;
      background: rgba(255, 184, 28, 0.1); }
  .section-tabs__wrapper .section-tabs__tab-images {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px;
    overflow: hidden; }
    .section-tabs__wrapper .section-tabs__tab-images .section-tabs__single-image {
      max-width: 48%;
      margin-bottom: 20px; }
  .section-tabs__wrapper .section-tabs__tab-content .tab-single-content {
    margin: 10px 0; }
  .section-tabs__wrapper .section-tabs__tab-content .tab-single__lists {
    display: -webkit-box;
    display: flex;
    margin-top: 30px; }
  .section-tabs__wrapper .section-tabs__tab-content .tab-single__list {
    width: 50%;
    margin-top: 0; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__list .tab-single__list-title {
      font-weight: 700; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__list .tab-single__list-bullets {
      margin-top: 10px; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__list .tab-single__list-single-bullet {
      margin-bottom: 10px; }
      .section-tabs__wrapper .section-tabs__tab-content .tab-single__list .tab-single__list-single-bullet .tab-single__list-icon {
        max-width: 15px;
        max-height: 30px;
        margin-right: 10px;
        vertical-align: middle; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__list.tab-single__list-pros .tab-single__list-single-bullet {
      color: #499835; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__list.tab-single__list-cons .tab-single__list-single-bullet {
      color: #db3855; }
  .section-tabs__wrapper .section-tabs__content-container {
    width: 75%;
    margin-left: 2%;
    padding: 50px 100px;
    border-radius: 10px;
    box-shadow: 0 0 10px 0 rgba(36, 69, 73, 0.14); }
    .section-tabs__wrapper .section-tabs__content-container .section-tabs__tab-content {
      display: none; }
      .section-tabs__wrapper .section-tabs__content-container .section-tabs__tab-content.active {
        display: block; }
      .section-tabs__wrapper .section-tabs__content-container .section-tabs__tab-content a:hover {
        text-decoration: underline; }

.section-tabs__single-image-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }

@media only screen and (max-width: 1024px) {
  .section-tabs__wrapper .section-tabs__tabs-container {
    width: 30%; }
  .section-tabs__wrapper .section-tabs__content-container {
    width: 100%;
    padding: 30px; } }

@media only screen and (max-width: 900px) {
  .section-tabs__wrapper .section-tabs__tabs-container {
    display: none; }
  .section-tabs__wrapper .section-tabs__content-container {
    width: 100%;
    margin: 0;
    padding: 0;
    border-radius: 0;
    box-shadow: none; }
    .section-tabs__wrapper .section-tabs__content-container .section-tabs__tab-content.active {
      margin: 20px 0; }
  .section-tabs__wrapper .tab-wrapper {
    border-top: 1px solid #ffb81c; }
    .section-tabs__wrapper .tab-wrapper:first-child {
      border-top: 0; }
    .section-tabs__wrapper .tab-wrapper:last-child {
      border-bottom: 1px solid #ffb81c; }
  .section-tabs__wrapper .mobile-accordion {
    display: block; }
    .section-tabs__wrapper .mobile-accordion:hover:before {
      border: 0; }
    .section-tabs__wrapper .mobile-accordion.active {
      margin-top: 20px;
      border-top-right-radius: 10px;
      border-bottom-right-radius: 10px;
      background: rgba(255, 184, 28, 0.1); }
      .section-tabs__wrapper .mobile-accordion.active:before {
        border-left: 5px solid #ffb81c; }
  .section-tabs__wrapper .section-tabs__tab-content {
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 0 10px 0 rgba(36, 69, 73, 0.14); } }

@media only screen and (max-width: 767px) {
  .section-tabs__wrapper .section-tabs__content-container .section-tabs__tab-content.active {
    margin: 20px 0;
    padding: 20px 10px; }
  .section-tabs__wrapper .section-tabs__tab-images {
    max-height: 200px; }
    .section-tabs__wrapper .section-tabs__tab-images .section-tabs__single-image {
      max-width: 100%; }
  .section-tabs__wrapper .section-tabs__tab-content .tab-single__lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__lists .tab-single__list-pros {
      margin-bottom: 30px; }
    .section-tabs__wrapper .section-tabs__tab-content .tab-single__lists .tab-single__list {
      width: 100%; } }

.contact-form.contact-form--background-orange .contact-form__contact-info,
.contact-form.contact-form--background-orange .contact-form__contact-form-wrapper {
  background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%);
  color: #fff; }

.contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info,
.contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper {
  background: #e1f2f4;
  color: #000; }
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info .contact-form__info-email,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info .heading.heading--white,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info form input,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper .contact-form__info-phone,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper .contact-form__info-email,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper .heading.heading--white,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper form input {
    color: #3d3d3d; }
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info form input,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info form textarea,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper form input,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper form textarea {
    border-color: #3d3d3d; }
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper .contact-form__info-content p,
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper .contact-form__info-content-wrapper .contact-form__info-content p {
    color: #3d3d3d; }
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info input[type='submit'],
  .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper input[type='submit'] {
    background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%);
    color: #fff;
    border: none; }
    .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-info input[type='submit']:hover,
    .contact-form.contact-form--background-green .contact-form__contact-container .contact-form__contact-form-wrapper input[type='submit']:hover {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
      box-shadow: 0 2px 10px 0 rgba(255, 153, 51, 0.54); }

.contact-form .contact-form__contact-container .contact-form__contact-form-container {
  margin-top: 65px; }

.contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper .contact-form__info-content p {
  color: #3d3d3d; }

.contact-form .contact-form__contact-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  .contact-form .contact-form__contact-container .contact-form__contact-info {
    width: 34%;
    border-radius: 10px; }
    .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-image img {
      width: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper {
      padding: 30px 20px;
      color: #fff; }
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper .contact-form__info-content {
        margin-bottom: 30px; }
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper .contact-form__info-content p {
          color: #fff; }
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper svg {
        width: 100%;
        max-width: 21px;
        margin-right: 10px; }
    .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone,
    .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-email {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row;
      -webkit-box-align: center;
              align-items: center;
      font-family: "Noto Serif JP";
      font-size: 20px;
      line-height: 29px; }
    .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone {
      margin-bottom: 20px; }
  .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper {
    width: 64%;
    padding: 50px 30px;
    border-radius: 10px; }
    .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper .heading {
      max-width: 60%; }

@media only screen and (max-width: 1024px) {
  .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper .heading {
    max-width: 100%; }
  .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper .contact-form__contact-form-wrapper {
    padding: 50px 30px; } }

@media only screen and (max-width: 1024px) {
  .contact-form .contact-form__contact-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      margin-bottom: 20px; }
    .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper,
    .contact-form .contact-form__contact-container .contact-form__contact-info,
    .contact-form .contact-form__contact-container .contact-form__info-image {
      width: 100%; }
    .contact-form .contact-form__contact-container .contact-form__info-image img {
      height: 100%; }
    .contact-form .contact-form__contact-container .contact-form__contact-info {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row; } }

@media only screen and (max-width: 767px) {
  .contact-form .contact-form__contact-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse; }
    .contact-form .contact-form__contact-container .contact-form__contact-form-wrapper {
      padding: 30px 20px; }
    .contact-form .contact-form__contact-container .contact-form__contact-info {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column; }
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-content-wrapper svg {
        margin: 0; }
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone,
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-email {
        display: inline-block;
        width: 47%;
        margin: 0 1%; }
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone a,
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-email a {
          display: -webkit-box;
          display: flex;
          align-content: center;
          -webkit-box-pack: center;
                  justify-content: center;
          width: 100%;
          padding: 7px;
          border: 2px solid #fff;
          border-radius: 38px; }
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-phone span,
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-email span {
          display: none; }
      .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-image {
        width: 100%; }
        .contact-form .contact-form__contact-container .contact-form__contact-info .contact-form__info-image img {
          width: 100%;
          height: 100%; } }

.section.teasers__wrapper {
  position: relative;
  background: -webkit-repeating-linear-gradient(#fff, #fff 69.9%, #e1f2f4 70.1%, #e1f2f4 100%);
  background: repeating-linear-gradient(#fff, #fff 69.9%, #e1f2f4 70.1%, #e1f2f4 100%); }
  .section.teasers__wrapper .teasers__slider-container .teasers__slider-item {
    -webkit-box-flex: 0;
            flex: 0 0 auto;
    max-width: 295px;
    margin: auto;
    margin-top: 20px; }
    .section.teasers__wrapper .teasers__slider-container .teasers__slider-item.item--offset {
      display: none; }
    .section.teasers__wrapper .teasers__slider-container .teasers__slider-item .teasers__slider-item-wrap {
      padding: 30px 20px;
      border-radius: 10px;
      background: #fff;
      text-align: center;
      box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.06); }
    .section.teasers__wrapper .teasers__slider-container .teasers__slider-item svg {
      max-height: 50px;
      margin-top: 25px;
      margin-bottom: 45px;
      color: #008c9a; }
    .section.teasers__wrapper .teasers__slider-container .teasers__slider-item .teasers__slider-item-heading {
      margin-bottom: 10px; }

@media only screen and (max-width: 767px) {
  .teasers__slider-container,
  .teasers__slider-item {
    padding-top: 20px; } }

.section.section-team {
  position: relative;
  padding-bottom: 100px;
  background: -webkit-repeating-linear-gradient(#fff, #fff 49.9%, #e1f2f4 51.1%, #e1f2f4 100%);
  background: repeating-linear-gradient(#fff, #fff 49.9%, #e1f2f4 51.1%, #e1f2f4 100%); }

.teasers__slider-item-image {
  width: 100%;
  max-width: 100px;
  max-height: 100px;
  margin: auto;
  margin-bottom: 20px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover; }

.teasers__slider-item-function {
  margin-bottom: 30px; }

.teasers__slider-item-contact {
  margin-top: 20px; }

.section-team .teasers__slider-container .teasers__slider-item {
  max-width: 295px;
  margin: auto;
  padding: 20px 0; }
  .section-team .teasers__slider-container .teasers__slider-item .teasers__slider-item-wrap {
    padding: 30px 20px;
    border-radius: 10px;
    background: #fff;
    text-align: center;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.06); }

.teasers__slider-icon {
  display: -webkit-box;
  display: flex;
  position: absolute;
  bottom: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  text-align: center;
  z-index: 1; }
  .teasers__slider-icon svg {
    width: 30px; }

@media only screen and (min-width: 1025px) {
  .section-team .teasers__slider-container {
    max-width: none; }
    .section-team .teasers__slider-container .teasers__slider-item {
      max-width: 295px;
      margin: auto; }
      .section-team .teasers__slider-container .teasers__slider-item.item--offset {
        display: block;
        width: 100px;
        visibility: hidden; } }

@media only screen and (max-width: 1024px) {
  .section.section-team .teasers__slider-container .teasers__slider-item:last-child .teasers__slider-item-wrap {
    padding: 30px 20px;
    border-radius: 10px;
    background: #fff;
    text-align: center;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.06); } }

@media only screen and (max-width: 767px) {
  .section.section-team {
    padding-bottom: 50px; } }

.section.section-news {
  background: -webkit-repeating-linear-gradient(#fff, #fff 59.9%, #e1f2f4 60.1%, #e1f2f4 100%, #e1f2f4);
  background: repeating-linear-gradient(#fff, #fff 59.9%, #e1f2f4 60.1%, #e1f2f4 100%, #e1f2f4); }

.section-news__heading {
  position: relative;
  margin: 50px 0; }
  .section-news__heading .section-news__see-more {
    position: absolute;
    top: 0;
    right: 0; }
    .section-news__heading .section-news__see-more .button {
      margin-top: 0; }

.section-news__image-link-container:hover .section-news__news-item-link {
  text-decoration: underline; }

.section-news__news-item-title {
  margin-bottom: 10px; }

.section-news__column-wrapper {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
          justify-content: space-between;
  max-width: 1250px;
  margin: auto; }
  .section-news__column-wrapper .section-news__column-container {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    max-width: 400px; }
    .section-news__column-wrapper .section-news__column-container.news-column--flex-reverse {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
              flex-direction: column-reverse; }

.section-article__article-teaser-content {
  padding-right: 20px; }

.section-news__news-item {
  margin-bottom: 20px;
  -webkit-transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  border-radius: 10px;
  background: #fff;
  text-align: left;
  box-shadow: 0 0 10px 5px rgba(36, 69, 73, 0.14);
  overflow: hidden; }
  .section-news__news-item:hover {
    box-shadow: 0 0 20px 4px rgba(36, 69, 73, 0.4); }
  .section-news__news-item .section-news__news-item-image {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: stretch;
            align-items: stretch;
    height: 200px;
    overflow: hidden; }
    .section-news__news-item .section-news__news-item-image img {
      min-width: 100%;
      max-height: 100%;
      vertical-align: bottom;
      -o-object-fit: cover;
         object-fit: cover; }
  .section-news__news-item .section-news__news-content {
    padding: 20px 30px; }

.section-news__image-link-container.news-item--small .section-news__news-content .section-news__news-item-teaser,
.section-news__image-link-container.news-item--small .section-news__news-content .section-news__news-item-link {
  display: none; }

.section-news__image-link-container .section-news__news-item-link {
  display: block;
  margin-top: 12px; }

.see-more--show-mobile {
  display: none; }

.pagination {
  margin: 80px 0;
  font-family: "Noto Serif JP";
  font-size: 30px;
  font-weight: 700; }
  .pagination .page-numbers {
    margin-right: 20px;
    -webkit-transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); }
    .pagination .page-numbers:not(.current):hover {
      color: #008c9a;
      text-decoration: underline; }
    .pagination .page-numbers.current {
      padding: 3px 10px;
      background: #005760;
      color: #fff; }

@media only screen and (max-width: 1300px) and (min-width: 769px) {
  .section.section-news.news-list .section-news__column-wrapper .section-news__column-container:last-child {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
            align-items: start; }
    .section.section-news.news-list .section-news__column-wrapper .section-news__column-container:last-child.news-column--flex-reverse {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
              flex-direction: column-reverse; }
  .section.section-news.news-list .section-news__column-wrapper .section-news__column-container .section-news__news-item {
    margin-bottom: 10%; } }

@media only screen and (max-width: 1300px) {
  .section.section-news {
    background: -webkit-repeating-linear-gradient(#fff, #fff 33.9%, #e1f2f4 34.1%, #e1f2f4 100%);
    background: repeating-linear-gradient(#fff, #fff 33.9%, #e1f2f4 34.1%, #e1f2f4 100%); }
  .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: justify;
            justify-content: space-between;
    width: 100%; }
    .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      width: 48%; }
  .section-news__column-wrapper {
    max-width: calc(100% - 100px); }
    .section-news__column-wrapper .section-news__column-container {
      width: 48%;
      max-width: none; }
      .section-news__column-wrapper .section-news__column-container .section-news__image-link-container {
        display: contents; }
      .section-news__column-wrapper .section-news__column-container .section-news__news-item {
        width: 100%; }
    .section-news__column-wrapper .section-news__news-item-image img {
      width: 100%; }
  .section-news.news-list .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
    width: 100%; } }

@media only screen and (max-width: 768px) {
  .section-news__column-wrapper {
    max-width: calc(100% - 80px); }
    .section-news__column-wrapper .section-news__column-container .section-news__news-item .section-news__news-content {
      padding: 30px 20px; }
      .section-news__column-wrapper .section-news__column-container .section-news__news-item .section-news__news-content .section-news__news-item-title {
        margin-bottom: 10px; }
      .section-news__column-wrapper .section-news__column-container .section-news__news-item .section-news__news-content .section-news__news-item-teaser {
        display: block;
        padding-right: 20px; }
    .section-news__column-wrapper .section-news__column-container .section-news__news-item .section-news__image-link {
      display: -webkit-box;
      display: flex;
      width: 100%; }
    .section-news__column-wrapper .section-news__column-container,
    .section-news__column-wrapper .section-news__column-container:last-child {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      width: 100%; }
      .section-news__column-wrapper .section-news__column-container .section-news__image-link-container,
      .section-news__column-wrapper .section-news__column-container:last-child .section-news__image-link-container {
        width: 100%; }
        .section-news__column-wrapper .section-news__column-container .section-news__image-link-container .section-news__news-item,
        .section-news__column-wrapper .section-news__column-container:last-child .section-news__image-link-container .section-news__news-item {
          display: -webkit-box;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
                  flex-direction: row;
          width: 100% !important; }
    .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
      width: 100%; }
  .section-news__news-item.news-item--small .section-news__news-content .section-news__news-item-teaser,
  .section-news__news-item.news-item--small .section-news__news-content .section-news__news-item-link {
    display: block; }
  .section-news__news-item .section-news__news-item-image {
    min-height: 240px;
    max-height: none; }
  .section-news__news-item .section-news__news-item-link {
    display: block;
    margin-top: 12px; }
  .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
    .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child .section-news__image-link-container {
      display: block;
      width: 100%; }
  .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row; } }

@media only screen and (max-width: 767px) {
  .section-news__column-wrapper .section-news__column-container .section-news__image-link-container .section-news__news-item,
  .section-news__column-wrapper .section-news__column-container:last-child .section-news__image-link-container .section-news__news-item {
    width: 100%;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: column; }
  .section-news.news-list .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
  .section.section-news.news-latest .section-news__column-wrapper .section-news__column-container:last-child .section-news__news-item {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
  .section-news__news-item .section-news__news-item-image {
    width: 100%; } }

@media only screen and (max-width: 550px) {
  .section-news__heading .section-news__see-more {
    display: none; }
  .see-more--show-mobile {
    display: block;
    width: 100%; }
    .see-more--show-mobile .button {
      display: inline-block; }
  .section-news__column-wrapper {
    max-width: calc(100% - 40px); }
    .section-news__column-wrapper .section-news__news-item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column; } }

.section-article {
  position: relative;
  overflow: hidden; }
  .section-article h1:after,
  .section-article h2:after,
  .section-article h3:after {
    display: block;
    width: 150px;
    height: 1px;
    margin-top: 10px;
    border-bottom: 1px;
    background: #008c9a;
    content: ''; }
  .section-article h2:after,
  .section-article h3:after {
    margin: auto;
    margin-top: 10px;
    margin-bottom: 30px; }
  .section-article p:not(:last-child) {
    margin-bottom: 50px; }
  .section-article .text-image__wrapper {
    -webkit-box-align: center;
            align-items: center; }
  .section-article .section-article__article-teaser-container {
    display: -webkit-box;
    display: flex;
    max-width: 1250px;
    margin: auto;
    -webkit-box-align: center;
            align-items: center; }
    .section-article .section-article__article-teaser-container .section-article__article-teaser-content,
    .section-article .section-article__article-teaser-container .section-article__article-teaser-images {
      width: 50%; }
  .section-article .section-article__main-content {
    padding: 250px 0 100px; }
  .section-article .section-article__article-images-container {
    position: relative; }

@media only screen and (min-width: 1500px) {
  .section-article__article-wrapper .section-article__article-images-container img {
    max-width: 750px; } }

@media only screen and (max-width: 1300px) {
  .section-article__article-teaser-container {
    padding-right: 40px;
    padding-left: 40px; } }

@media only screen and (max-width: 1200px) {
  .section-article .section-article__main-content {
    padding-top: 100px; } }

@media only screen and (max-width: 950px) {
  .section-article__article-wrapper {
    position: relative; }
  .section-article .section-article__main-content {
    padding-right: 20px;
    padding-left: 20px; }
  .section:first-of-type:not(.section-slider) {
    margin-top: 100px; } }

@media only screen and (min-width: 768px) and (max-width: 900px) {
  .section-article .section-article__main-content {
    padding-top: 50px; } }

@media only screen and (max-width: 767px) {
  h2,
  h3,
  p {
    margin: 20px 0; }
  .section-article .section-article__article-teaser-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
            flex-direction: column-reverse;
    width: 100%;
    margin-bottom: 0;
    padding: 0; }
    .section-article .section-article__article-teaser-container .section-article__article-teaser-content,
    .section-article .section-article__article-teaser-container .section-article__article-teaser-images {
      width: 100%; }
    .section-article .section-article__article-teaser-container .section-article__article-teaser-content {
      margin-top: 20px; }
    .section-article .section-article__article-teaser-container .section-article__article-teaser-images {
      display: -webkit-box;
      display: flex;
      max-height: 350px;
      -webkit-box-align: center;
              align-items: center;
      overflow: hidden; }
  .section-article .section-article__article-images-container {
    width: 100%; }
    .section-article .section-article__article-images-container img {
      width: 100%;
      zoom: 1;
      margin-left: 0; }
  .section-article .section-article__main-content {
    padding-top: 0; }
  .section-article .section-article__article-teaser-container .section-article__article-teaser-images .section-article__article-images-container {
    display: block; } }

.mc-field-group {
  text-align: left; }

.mc-field-group {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 20px; }
  .mc-field-group input[type=text], .mc-field-group input[type=email], .mc-field-group input[type=number] {
    border: 0;
    border-bottom: 1px solid #3d3d3d;
    border-radius: 0; }
  .mc-field-group strong {
    width: 100%; }
  .mc-field-group li {
    width: 100%; }
    .mc-field-group li label {
      margin-left: 5px; }
  .mc-field-group.input-group {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap; }
    .mc-field-group.input-group p {
      width: 100%; }
    .mc-field-group.input-group ul {
      margin-top: 0; }

.mce_inline_error {
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
  font-weight: normal !important;
  color: unset !important; }

#mc_embed_signup .mc-field-group input[type=text], #mc_embed_signup .mc-field-group input[type=email], #mc_embed_signup .mc-field-group input[type=number] {
  border: 0;
  border-bottom: 1px solid #3d3d3d;
  border-radius: 0;
  color: #3d3d3d;
  text-indent: 0 !important; }

#mc_embed_signup {
  margin-top: 75px; }

#mc_embed_signup_scroll {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  position: relative; }
  #mc_embed_signup_scroll .indicates-required {
    position: absolute;
    right: 0; }
  #mc_embed_signup_scroll .size1of2 {
    margin-right: 0 !important; }

#mc-embedded-subscribe {
  margin-top: 20px !important;
  padding: 10px 20px !important;
  -webkit-transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) !important;
  transition: 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) !important;
  border-radius: 38px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  text-shadow: none !important;
  cursor: pointer !important;
  color: #f9f9f9 !important;
  background: linear-gradient(225deg, #ff9256 0%, #ffa107 100%) !important;
  margin-right: 100px !important; }
  #mc-embedded-subscribe:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    box-shadow: 0 2px 10px 0 rgba(255, 153, 51, 0.54); }

#mc_embed_signup #mc-embedded-subscribe-form input.mce_inline_error {
  border: 0 !important;
  border-bottom: 1px solid #db3855 !important; }

.mce_inline_error {
  color: #db3855 !important;
  padding-left: 0 !important; }

/* ==========================================================================
   Color
   ========================================================================== */
/**
 * Color utility classes.
 */
/**
       * `color` black-100 color utility.
       */
.color-black-100 {
  color: black; }

/**
       * `background-color` black-100 color utility.
       */
.background-color-black-100 {
  background-color: black; }

/**
       * `color` white-100 color utility.
       */
.color-white-100 {
  color: white; }

/**
       * `background-color` white-100 color utility.
       */
.background-color-white-100 {
  background-color: white; }

/**
       * `color` #008c99-100 color utility.
       */
.color-blue-100 {
  color: #008c99; }

/**
       * `background-color` #008c99-100 color utility.
       */
.background-color-blue-100 {
  background-color: #008c99; }

/**
       * `color` linear-gradient(45deg, #f7d515, #f88d12)-100 color utility.
       */
.color-orange-gradient-100 {
  color: linear-gradient(45deg, #f7d515, #f88d12); }

/**
       * `background-color` linear-gradient(45deg, #f7d515, #f88d12)-100 color utility.
       */
.background-color-orange-gradient-100 {
  background-color: linear-gradient(45deg, #f7d515, #f88d12); }

/**
       * `color` #e1f2f4-100 color utility.
       */
.color-lightblue-100 {
  color: #e1f2f4; }

/**
       * `background-color` #e1f2f4-100 color utility.
       */
.background-color-lightblue-100 {
  background-color: #e1f2f4; }

/**
       * `color` #236190-100 color utility.
       */
.color-branche-fish-100 {
  color: #236190; }

/**
       * `background-color` #236190-100 color utility.
       */
.background-color-branche-fish-100 {
  background-color: #236190; }

/**
       * `color` #c81e3d-100 color utility.
       */
.color-branche-meat-100 {
  color: #c81e3d; }

/**
       * `background-color` #c81e3d-100 color utility.
       */
.background-color-branche-meat-100 {
  background-color: #c81e3d; }

/**
       * `color` #599735-100 color utility.
       */
.color-branche-fruit-100 {
  color: #599735; }

/**
       * `background-color` #599735-100 color utility.
       */
.background-color-branche-fruit-100 {
  background-color: #599735; }

/**
       * `color` #ffb61a-100 color utility.
       */
.color-branche-cheese-100 {
  color: #ffb61a; }

/**
       * `background-color` #ffb61a-100 color utility.
       */
.background-color-branche-cheese-100 {
  background-color: #ffb61a; }

/**
       * `color` #7c008a-100 color utility.
       */
.color-branche-sport-100 {
  color: #7c008a; }

/**
       * `background-color` #7c008a-100 color utility.
       */
.background-color-branche-sport-100 {
  background-color: #7c008a; }

/**
       * `color` #ba6103-100 color utility.
       */
.color-branche-bread-100 {
  color: #ba6103; }

/**
       * `background-color` #ba6103-100 color utility.
       */
.background-color-branche-bread-100 {
  background-color: #ba6103; }

/**
       * `color` #703c00-100 color utility.
       */
.color-branche-coffee-100 {
  color: #703c00; }

/**
       * `background-color` #703c00-100 color utility.
       */
.background-color-branche-coffee-100 {
  background-color: #703c00; }

/**
       * `color` #9b3636-100 color utility.
       */
.color-branche-pets-100 {
  color: #9b3636; }

/**
       * `background-color` #9b3636-100 color utility.
       */
.background-color-branche-pets-100 {
  background-color: #9b3636; }

/**
       * `color` #f50056-100 color utility.
       */
.color-branche-snacks-100 {
  color: #f50056; }

/**
       * `background-color` #f50056-100 color utility.
       */
.background-color-branche-snacks-100 {
  background-color: #f50056; }

/**
       * `color` #3b3b3b-100 color utility.
       */
.color-branche-nonfood-100 {
  color: #3b3b3b; }

/**
       * `background-color` #3b3b3b-100 color utility.
       */
.background-color-branche-nonfood-100 {
  background-color: #3b3b3b; }

/* ==========================================================================
   Object Fit
   ========================================================================== */
/**
 * Object fit.
 *
 * 1. Font family polyfill with (https://github.com/bfred-it/object-fit-images).
 */
/**
   * `object-fit` fill utility class.
   */
.fill {
  font-family: "object-fit: fill;";
  /* 1 */
  -o-object-fit: fill;
     object-fit: fill; }

/**
   * `object-fit` contain utility class.
   */
.contain {
  font-family: "object-fit: contain;";
  /* 1 */
  -o-object-fit: contain;
     object-fit: contain; }

/**
   * `object-fit` cover utility class.
   */
.cover {
  font-family: "object-fit: cover;";
  /* 1 */
  -o-object-fit: cover;
     object-fit: cover; }

/**
   * `object-fit` none utility class.
   */
.none {
  font-family: "object-fit: none;";
  /* 1 */
  -o-object-fit: none;
     object-fit: none; }

/**
   * `object-fit` scale-down utility class.
   */
.scale-down {
  font-family: "object-fit: scale-down;";
  /* 1 */
  -o-object-fit: scale-down;
     object-fit: scale-down; }

/* ==========================================================================
   Position
   ========================================================================== */
/**
 * Position utility class.
 */
.static {
  position: static; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.sticky {
  position: -webkit-sticky;
  position: sticky; }

/* ==========================================================================
   Text
   ========================================================================== */
/**
 * Font family utility classes.
 */
.text-xs-default {
  font-family: "Ubuntu"; }

.text-xs-heading {
  font-family: "Noto Serif JP"; }

@media only screen and (min-width: 600px) {
  .text-sm-default {
    font-family: "Ubuntu"; }
  .text-sm-heading {
    font-family: "Noto Serif JP"; } }

@media only screen and (min-width: 768px) {
  .text-md-default {
    font-family: "Ubuntu"; }
  .text-md-heading {
    font-family: "Noto Serif JP"; } }

@media only screen and (min-width: 1024px) {
  .text-lg-default {
    font-family: "Ubuntu"; }
  .text-lg-heading {
    font-family: "Noto Serif JP"; } }

@media only screen and (min-width: 1200px) {
  .text-xl-default {
    font-family: "Ubuntu"; }
  .text-xl-heading {
    font-family: "Noto Serif JP"; } }

/**
 * Text size utility classes.
 */
.text-xs-h1 {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.425em; }

.text-xs-h2 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.46667em; }

.text-xs-h3 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.45em; }

.text-xs-p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.875em; }

.text-xs-q {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.875em; }

.text-xs-menu-link {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.46667em; }

@media only screen and (min-width: 600px) {
  .text-sm-h1 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.425em; }
  .text-sm-h2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; }
  .text-sm-h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.45em; }
  .text-sm-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-sm-q {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-sm-menu-link {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; } }

@media only screen and (min-width: 768px) {
  .text-md-h1 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.425em; }
  .text-md-h2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; }
  .text-md-h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.45em; }
  .text-md-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-md-q {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-md-menu-link {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; } }

@media only screen and (min-width: 1024px) {
  .text-lg-h1 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.425em; }
  .text-lg-h2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; }
  .text-lg-h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.45em; }
  .text-lg-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-lg-q {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-lg-menu-link {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; } }

@media only screen and (min-width: 1200px) {
  .text-xl-h1 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.425em; }
  .text-xl-h2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; }
  .text-xl-h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.45em; }
  .text-xl-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-xl-q {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em; }
  .text-xl-menu-link {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.46667em; } }

/**
 * Text alignment utility classes.
 */
.text-xs-left {
  text-align: left; }

.text-xs-right {
  text-align: right; }

.text-xs-center {
  text-align: center; }

@media only screen and (min-width: 600px) {
  .text-sm-left {
    text-align: left; }
  .text-sm-right {
    text-align: right; }
  .text-sm-center {
    text-align: center; } }

@media only screen and (min-width: 768px) {
  .text-md-left {
    text-align: left; }
  .text-md-right {
    text-align: right; }
  .text-md-center {
    text-align: center; } }

@media only screen and (min-width: 1024px) {
  .text-lg-left {
    text-align: left; }
  .text-lg-right {
    text-align: right; }
  .text-lg-center {
    text-align: center; } }

@media only screen and (min-width: 1200px) {
  .text-xl-left {
    text-align: left; }
  .text-xl-right {
    text-align: right; }
  .text-xl-center {
    text-align: center; } }

/**
 * Font weight utility classes.
 *
 * 1. Multiply looped integer by 100 for correct font weight value.
 */
.text-xs-100 {
  font-weight: 100; }

.text-xs-200 {
  font-weight: 200; }

.text-xs-300 {
  font-weight: 300; }

.text-xs-400 {
  font-weight: 400; }

.text-xs-500 {
  font-weight: 500; }

.text-xs-600 {
  font-weight: 600; }

.text-xs-700 {
  font-weight: 700; }

.text-xs-800 {
  font-weight: 800; }

.text-xs-900 {
  font-weight: 900; }

@media only screen and (min-width: 600px) {
  .text-sm-100 {
    font-weight: 100; }
  .text-sm-200 {
    font-weight: 200; }
  .text-sm-300 {
    font-weight: 300; }
  .text-sm-400 {
    font-weight: 400; }
  .text-sm-500 {
    font-weight: 500; }
  .text-sm-600 {
    font-weight: 600; }
  .text-sm-700 {
    font-weight: 700; }
  .text-sm-800 {
    font-weight: 800; }
  .text-sm-900 {
    font-weight: 900; } }

@media only screen and (min-width: 768px) {
  .text-md-100 {
    font-weight: 100; }
  .text-md-200 {
    font-weight: 200; }
  .text-md-300 {
    font-weight: 300; }
  .text-md-400 {
    font-weight: 400; }
  .text-md-500 {
    font-weight: 500; }
  .text-md-600 {
    font-weight: 600; }
  .text-md-700 {
    font-weight: 700; }
  .text-md-800 {
    font-weight: 800; }
  .text-md-900 {
    font-weight: 900; } }

@media only screen and (min-width: 1024px) {
  .text-lg-100 {
    font-weight: 100; }
  .text-lg-200 {
    font-weight: 200; }
  .text-lg-300 {
    font-weight: 300; }
  .text-lg-400 {
    font-weight: 400; }
  .text-lg-500 {
    font-weight: 500; }
  .text-lg-600 {
    font-weight: 600; }
  .text-lg-700 {
    font-weight: 700; }
  .text-lg-800 {
    font-weight: 800; }
  .text-lg-900 {
    font-weight: 900; } }

@media only screen and (min-width: 1200px) {
  .text-xl-100 {
    font-weight: 100; }
  .text-xl-200 {
    font-weight: 200; }
  .text-xl-300 {
    font-weight: 300; }
  .text-xl-400 {
    font-weight: 400; }
  .text-xl-500 {
    font-weight: 500; }
  .text-xl-600 {
    font-weight: 600; }
  .text-xl-700 {
    font-weight: 700; }
  .text-xl-800 {
    font-weight: 800; }
  .text-xl-900 {
    font-weight: 900; } }

/**
 * Text transform uitlity classes.
 */
.text-xs-capitalize {
  text-transform: capitalize; }

.text-xs-uppercase {
  text-transform: uppercase; }

.text-xs-lowercase {
  text-transform: lowercase; }

.text-xs-none {
  text-transform: none; }

.text-xs-full-width {
  text-transform: full-width; }

@media only screen and (min-width: 600px) {
  .text-sm-capitalize {
    text-transform: capitalize; }
  .text-sm-uppercase {
    text-transform: uppercase; }
  .text-sm-lowercase {
    text-transform: lowercase; }
  .text-sm-none {
    text-transform: none; }
  .text-sm-full-width {
    text-transform: full-width; } }

@media only screen and (min-width: 768px) {
  .text-md-capitalize {
    text-transform: capitalize; }
  .text-md-uppercase {
    text-transform: uppercase; }
  .text-md-lowercase {
    text-transform: lowercase; }
  .text-md-none {
    text-transform: none; }
  .text-md-full-width {
    text-transform: full-width; } }

@media only screen and (min-width: 1024px) {
  .text-lg-capitalize {
    text-transform: capitalize; }
  .text-lg-uppercase {
    text-transform: uppercase; }
  .text-lg-lowercase {
    text-transform: lowercase; }
  .text-lg-none {
    text-transform: none; }
  .text-lg-full-width {
    text-transform: full-width; } }

@media only screen and (min-width: 1200px) {
  .text-xl-capitalize {
    text-transform: capitalize; }
  .text-xl-uppercase {
    text-transform: uppercase; }
  .text-xl-lowercase {
    text-transform: lowercase; }
  .text-xl-none {
    text-transform: none; }
  .text-xl-full-width {
    text-transform: full-width; } }

/* ==========================================================================
   Vertical Rhythm
   ========================================================================== */
.vr-0 {
  margin-bottom: 0px; }

.vr-8 {
  margin-bottom: 8px; }

.vr-16 {
  margin-bottom: 16px; }

.vr-24 {
  margin-bottom: 24px; }

.vr-32 {
  margin-bottom: 32px; }

.vr-40 {
  margin-bottom: 40px; }

.vr-48 {
  margin-bottom: 48px; }

.vr-56 {
  margin-bottom: 56px; }

.vr-64 {
  margin-bottom: 64px; }

.vr-72 {
  margin-bottom: 72px; }

.vr-80 {
  margin-bottom: 80px; }

/* ==========================================================================
   Z-index
   ========================================================================== */
/**
 * Utility classes for manipulating stacking order in HTML.
 */
.z-index-0 {
  z-index: 0; }

.z-index-1 {
  z-index: 10; }

.z-index-2 {
  z-index: 20; }

.z-index-3 {
  z-index: 30; }

.z-index-4 {
  z-index: 40; }

.z-index-5 {
  z-index: 50; }

.z-index-6 {
  z-index: 60; }

.z-index-7 {
  z-index: 70; }

.z-index-8 {
  z-index: 80; }

.z-index-9 {
  z-index: 90; }

.z-index-10 {
  z-index: 100; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInNldHRpbmdzL19kZWZpbml0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwibWFpbi5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL19hbmltYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL19hdXRvaGVpZ2h0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL19sYXp5bG9hZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fdmlkZW8uc2NzcyIsImdlbmVyaWMvX2Jhc2Uuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsInNldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLCJ0b29scy9fZnVuY3Rpb25zLnNjc3MiLCJzZXR0aW5ncy9fY29sb3Iuc2NzcyIsImdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJvYmplY3RzL19idXR0b24uc2NzcyIsIm9iamVjdHMvX2NvbnRhY3RmaXhlZC5zY3NzIiwib2JqZWN0cy9fY29udGFpbmVyLnNjc3MiLCJvYmplY3RzL19jb250ZW50LWNvbnN0cmFpbnQuc2NzcyIsIm9iamVjdHMvX2ZsZXguc2NzcyIsIm9iamVjdHMvX2hlYWRpbmdzLnNjc3MiLCJvYmplY3RzL19mb3Jtcy5zY3NzIiwib2JqZWN0cy9fbGlua3Muc2NzcyIsIm9iamVjdHMvX2xpc3RzLnNjc3MiLCJvYmplY3RzL19sb2dvLnNjc3MiLCJvYmplY3RzL19wYXJhZ3JhcGhzLnNjc3MiLCJvYmplY3RzL19zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX2Ntcy1vdXRwdXQuc2NzcyIsImNvbXBvbmVudHMvX21haW4tbWVudS5zY3NzIiwiY29tcG9uZW50cy9fc3VibWVudS5zY3NzIiwiY29tcG9uZW50cy9fbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL190ZXh0aW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX3NlY3RvcnMuc2NzcyIsImNvbXBvbmVudHMvX3RhYnMuc2NzcyIsImNvbXBvbmVudHMvX2NvbnRhY3QtZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fdGVhc2Vycy5zY3NzIiwiY29tcG9uZW50cy9fdGVhbS5zY3NzIiwiY29tcG9uZW50cy9fbmV3cy5zY3NzIiwiY29tcG9uZW50cy9fYXJ0aWNsZXMuc2NzcyIsImNvbXBvbmVudHMvX21haWxjaGltcC5zY3NzIiwidXRpbGl0aWVzL19jb2xvci5zY3NzIiwidXRpbGl0aWVzL19vYmplY3QtZml0LnNjc3MiLCJ1dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ1dGlsaXRpZXMvX3RleHQuc2NzcyIsInV0aWxpdGllcy9fdmVydGljYWwtcmh5dGhtLnNjc3MiLCJ1dGlsaXRpZXMvX3otaW5kZXguc2NzcyIsInNldHRpbmdzL196LWluZGV4LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY0Esb0NBQU87QUNtQlA7RUFDRSxrQkFBa0IsRUFBQTs7QUNsQ3BCOztFQ01FO0FESEY7RUFDQyxhQUFhO0VBQ2IsV0FBVztFQUNYLHdDQUF3QztFQUN4QyxtRUFBQTtFQUNBLGtCQUFrQjtFQUNsQixVQUFVLEVBQUE7RUFOWDtJQVNFLGtCQUFrQjtJQUVsQiwwQkFBMEI7SUFDMUIsZ0NBQWdDO0lBQUUsaUNBQUEsRUFBa0M7RUFadEU7SUFnQkUsWUFBWTtJQUNaLGNBQWM7SUFDZCxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxTQUFTLEVBQUE7RUFyQlg7SUF5QkUsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQixnQ0FBQTtJQUNBLDZDQUE2QyxFQUFBO0VBNUIvQzs7SUFpQ0UsbUNBQW1DO0lBQ25DLGdDQUFnQztJQUNoQywrQkFBK0I7SUFDL0IsdUNBQXFD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QzlCLHFCQUF3QixFQUFBOztBQVN4Qjs7VWZ1Y0U7QWVuY0Y7RUFDRSxzQlBqRDRCLEVBQUE7O0FPNEJoQzs7UWY2ZEU7QWV6ZEY7RUFDRSxtQkFBYztVQUFkLGNBQWM7RUFDZCxVUGxDOEI7RU9tQzlCLHFCQUF3QixFQUFBOztBQVN4Qjs7VWZxZEU7QWVqZEY7RUFDRSxnQlBqRDRCLEVBQUE7O0FPNEJoQzs7UWYyZUU7QWV2ZUY7RUFDRSxtQkFBYztVQUFkLGNBQWM7RUFDZCxnQlBsQzhCO0VPbUM5QixxQkFBd0IsRUFBQTs7QUFTeEI7O1VmbWVFO0FlL2RGO0VBQ0Usc0JQakQ0QixFQUFBOztBTzRCaEM7O1FmeWZFO0FlcmZGO0VBQ0UsbUJBQWM7VUFBZCxjQUFjO0VBQ2QsZ0JQbEM4QjtFT21DOUIscUJBQXdCLEVBQUE7O0FBU3hCOztVZmlmRTtBZTdlRjtFQUNFLHNCUGpENEIsRUFBQTs7QU80QmhDOztRZnVnQkU7QWVuZ0JGO0VBQ0UsbUJBQWM7VUFBZCxjQUFjO0VBQ2QsVVBsQzhCO0VPbUM5QixxQkFBd0IsRUFBQTs7QUFTeEI7O1VmK2ZFO0FlM2ZGO0VBQ0UsZ0JQakQ0QixFQUFBOztBTzRCaEM7O1FmcWhCRTtBZWpoQkY7RUFDRSxtQkFBYztVQUFkLGNBQWM7RUFDZCxnQlBsQzhCO0VPbUM5QixxQkFBd0IsRUFBQTs7QUFTeEI7O1VmNmdCRTtBZXpnQkY7RUFDRSxzQlBqRDRCLEVBQUE7O0FPNEJoQzs7UWZtaUJFO0FlL2hCRjtFQUNFLG1CQUFjO1VBQWQsY0FBYztFQUNkLGdCUGxDOEI7RU9tQzlCLHFCQUF3QixFQUFBOztBQVN4Qjs7VWYyaEJFO0FldmhCRjtFQUNFLHNCUGpENEIsRUFBQTs7QU80QmhDOztRZmlqQkU7QWU3aUJGO0VBQ0UsbUJBQWM7VUFBZCxjQUFjO0VBQ2QsVVBsQzhCO0VPbUM5QixxQkFBd0IsRUFBQTs7QUFTeEI7O1VmeWlCRTtBZXJpQkY7RUFDRSxnQlBqRDRCLEVBQUE7O0FPNEJoQzs7UWYrakJFO0FlM2pCRjtFQUNFLG1CQUFjO1VBQWQsY0FBYztFQUNkLGdC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ZCxjQUFjO0lBQ2QsVVBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWY2bkNFO0Vlem5DRjtJQUNFLGdCUGpENEIsRUFBQTtFTzRCaEM7O1Fma3BDRTtFZTlvQ0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxnQlBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWZ5b0NFO0Vlcm9DRjtJQUNFLHNCUGpENEIsRUFBQTtFTzRCaEM7O1FmOHBDRTtFZTFwQ0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxnQlBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWZxcENFO0VlanBDRjtJQUNFLHNCUGpENEIsRUFBQTtFTzRCaEM7O1FmMHFDRTtFZXRxQ0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxVUGxDOEI7SU9tQzlCLHFCQUF3QixFQUFBO0VBU3hCOztVZmlxQ0U7RWU3cENGO0lBQ0UsZ0JQakQ0QixFQUFBO0VPNEJoQzs7UWZzckNFO0VlbHJDRjtJQUNFLG1CQUFjO1lBQWQsY0FBYztJQUNkLGdCUGxDOEI7SU9tQzlCLHFCQUF3QixFQUFBO0VBU3hCOztVZjZxQ0U7RWV6cUNGO0lBQ0Usc0JQakQ0QixFQUFBO0VPNEJoQzs7UWZrc0NFO0VlOXJDRjtJQUNFLG1CQUFjO1lBQWQsY0FBYztJQUNkLGdCUGxDOEI7SU9tQzlCLHFCQUF3QixFQUFBO0VBU3hCOztVZnlyQ0U7RWVyckNGO0lBQ0Usc0JQakQ0QixFQUFBO0VPNEJoQzs7UWY4c0NFO0VlMXNDRjtJQUNFLG1CQUFjO1lBQWQsY0FBYztJQUNkLFVQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmcXNDRTtFZWpzQ0Y7SUFDRSxnQlBqRDRCLEVBQUE7RU80QmhDOztRZjB0Q0U7RWV0dENGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsZ0JQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmaXRDRTtFZTdzQ0Y7SUFDRSxzQlBqRDRCLEVBQUE7RU80QmhDOztRZnN1Q0U7RWVsdUNGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsZ0JQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmNnRDRTtFZXp0Q0Y7SUFDRSxzQlBqRDRCLEVBQUE7RU80QmhDOztRZmt2Q0U7RWU5dUNGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsV1BsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQXVCMUI7O1FmMnRDRTtFZXZ0Q0Y7SUFDRSwwQkFQbUI7WUFPbkIsb0JBUG1CLEVBQUE7RUFFckI7O1FmZ3VDRTtFZTV0Q0Y7SUFDRSx5QkFQMkI7WUFPM0IsbUJBUDJCLEVBQUE7RUFFN0I7O1FmcXVDRTtFZWp1Q0Y7SUFDRSx3QkFQdUM7WUFPdkMsdUJBUHVDLEVBQUE7RUFFekM7O1FmMHVDRTtFZXR1Q0Y7SUFDRSxzQkFQaUQ7WUFPakQscUJBUGlELEVBQUE7RUFFbkQ7O1FmK3VDRTtFZTN1Q0Y7SUFDRSwyQkFQMkQ7WUFPM0QscUJBUDJELEVBQUE7RUFlN0Q7O1FmdXVDRTtFZW51Q0Y7SUFDRSx1QkFQaUI7WUFPakIsc0JBUGlCLEVBQUE7RUFFbkI7O1FmNHVDRTtFZXh1Q0Y7SUFDRSx3QkFQeUI7WUFPekIsdUJBUHlCLEVBQUE7RUFFM0I7O1FmaXZDRTtFZTd1Q0Y7SUFDRSx5QkFQd0M7WUFPeEMsOEJBUHdDLEVBQUE7RUFFMUM7O1Fmc3ZDRTtFZWx2Q0Y7SUFDRSw2QkFQc0QsRUFBQTtFQUV4RDs7UWYydkNFO0VldnZDRjtJQUNFLDhCQVBvRTtZQU9wRSw2QkFQb0UsRUFBQTtFQWV0RTs7UWZtdkNFO0VlL3VDRjtJQUNFLGVBQWdDLEVBQUE7RUFMbEM7O1Fmd3ZDRTtFZXB2Q0Y7SUFDRSxnQkFBZ0MsRUFBQTtFQUtwQzs7TWZtdkNFO0VlL3VDRjtJQUNFLDRCQUFTO1lBQVQsU0FBUyxFQUFBO0VBSVg7O01mK3VDRTtFZTN1Q0Y7SUFDRSw0QkFBUTtZQUFSLFFBQVEsRUFBQTtFQUlWOztNZjJ1Q0U7RWV2dUNGO0lBQ0UsOEJBQTJCO0lBQTNCLDhCQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUM1Qjs7QVQzQ0M7RVMvQ0E7O1FmczBDRTtFZWwwQ0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxlUGxDOEI7SU9tQzlCLHFCQUF3QixFQUFBO0VBU3hCOztVZjZ6Q0U7RWV6ekNGO0lBQ0UscUJQakQ0QixFQUFBO0VPNEJoQzs7UWZrMUNFO0VlOTBDRjtJQUNFLG1CQUFjO1lBQWQsY0FBYztJQUNkLGdCUGxDOEI7SU9tQzlCLHFCQUF3QixFQUFBO0VBU3hCOztVZnkwQ0U7RWVyMENGO0lBQ0Usc0JQakQ0QixFQUFBO0VPNEJoQzs7UWY4MUNFO0VlMTFDRjtJQUNFLG1CQUFjO1lBQWQsY0FBYztJQUNkLFVQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmcTFDRTtFZWoxQ0Y7SUFDRSxnQlBqRDRCLEVBQUE7RU80QmhDOztRZjAyQ0U7RWV0MkNGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsZ0JQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmaTJDRTtFZTcxQ0Y7SUFDRSxzQlBqRDRCLEVBQUE7RU80QmhDOztRZnMzQ0U7RWVsM0NGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsZ0JQbEM4QjtJT21DOUIscUJBQXdCLEVBQUE7RUFTeEI7O1VmNjJDRTtFZXoyQ0Y7SUFDRSxzQlBqRDRCLEVBQUE7RU80QmhDOztRZms0Q0U7RWU5M0NGO0lBQ0UsbUJBQWM7WUFBZCxjQUFjO0lBQ2QsVVBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWZ5M0NFO0VlcjNDRjtJQUNFLGdCUGpENEIsRUFBQTtFTzRCaEM7O1FmODRDRTtFZTE0Q0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxnQlBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWZxNENFO0VlajRDRjtJQUNFLHNCUGpENEIsRUFBQTtFTzRCaEM7O1FmMDVDRTtFZXQ1Q0Y7SUFDRSxtQkFBYztZQUFkLGNBQWM7SUFDZCxnQlBsQzhCO0lPbUM5QixxQkFBd0IsRUFBQTtFQVN4Qjs7VWZpNUNFO0VlNzRDRjtJQUNFLHNC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c0MxMUhGO0VBQ0UsYzdCRHlCLEVBQUE7O0E2QkozQjs7UXRDbzJIRTtBc0NoMkhGO0VBQ0UseUI3QkR5QixFQUFBOztBNkJKM0I7O1F0QzAySEU7QXNDdDJIRjtFQUNFLGM3QkV3QixFQUFBOztBNkJQMUI7O1F0Q2czSEU7QXNDNTJIRjtFQUNFLHlCN0JFd0IsRUFBQTs7QTZCUDFCOztRdENzM0hFO0FzQ2wzSEY7RUFDRSxjN0JLeUIsRUFBQTs7QTZCVjNCOztRdEM0M0hFO0FzQ3gzSEY7RUFDRSx5QjdCS3lCLEVBQUE7O0E2QlYzQjs7UXRDazRIRTtBc0M5M0hGO0VBQ0UsYzdCUTBCLEVBQUE7O0E2QmI1Qjs7UXRDdzRIRTtBc0NwNEhGO0VBQ0UseUI3QlEwQixFQUFBOztBNkJiNUI7O1F0Qzg0SEU7QXNDMTRIRjtFQUNFLGM3Qld3QixFQUFBOztBNkJoQjFCOztRdENvNUhFO0FzQ2g1SEY7RUFDRSx5QjdCV3dCLEVBQUE7O0E2QmhCMUI7O1F0QzA1SEU7QXNDdDVIRjtFQUNFLGM3QmN5QixFQUFBOztBNkJuQjNCOztRdENnNkhFO0FzQzU1SEY7RUFDRSx5QjdCY3lCLEVBQUE7O0E2Qm5CM0I7O1F0Q3M2SEU7QXNDbDZIRjtFQUNFLGM3QmlCdUIsRUFBQTs7QTZCdEJ6Qjs7UXRDNDZIRTtBc0N4NkhGO0VBQ0UseUI3QmlCdUIsRUFBQTs7QTZCdEJ6Qjs7UXRDazdIRTtBc0M5NkhGO0VBQ0UsYzdCb0IwQixFQUFBOztBNkJ6QjVCOztRdEN3N0hFO0FzQ3A3SEY7RUFDRSx5QjdCb0IwQixFQUFBOztBNkJ6QjVCOztRdEM4N0hFO0FzQzE3SEY7RUFDRSxjN0J1QnNCLEVBQUE7O0E2QjVCeEI7O1F0Q284SEU7QXNDaDhIRjtFQUNFLHlCN0J1QnNCLEVBQUE7O0E4QmpEOUI7OytFdkMrOUgrRTtBdUMzOUgvRTs7OztFdkNnK0hFO0F1Q3Y5SEE7O0l2QzA5SEU7QXVDdDlIRjtFQUNFLGdDQUFxQztFQUFFLE1BQUE7RUFDdkMsbUJBQVk7S0FBWixnQkFBWSxFQUFBOztBQU5kOztJdkNrK0hFO0F1Qzk5SEY7RUFDRSxtQ0FBcUM7RUFBRSxNQUFBO0VBQ3ZDLHNCQUFZO0tBQVosbUJBQVksRUFBQTs7QUFOZDs7SXZDMCtIRTtBdUN0K0hGO0VBQ0UsaUNBQXFDO0VBQUUsTUFBQTtFQUN2QyxvQkFBWTtLQUFaLGlCQUFZLEVBQUE7O0FBTmQ7O0l2Q2svSEU7QXVDOStIRjtFQUNFLGdDQUFxQztFQUFFLE1BQUE7RUFDdkMsbUJBQVk7S0FBWixnQkFBWSxFQUFBOztBQU5kOztJdkMwL0hFO0F1Q3QvSEY7RUFDRSxzQ0FBcUM7RUFBRSxNQUFBO0VBQ3ZDLHlCQUFZO0tBQVosc0JBQVksRUFBQTs7QUNuQmhCOzsrRXhDK2dJK0U7QXdDM2dJL0U7O0V4QzhnSUU7QXdDemdJQTtFQUNFLGdCQUZrQixFQUFBOztBQUNwQjtFQUNFLGtCQUY0QixFQUFBOztBQUM5QjtFQUNFLGtCQUZzQyxFQUFBOztBQUN4QztFQUNFLGVBRjZDLEVBQUE7O0FBQy9DO0VBQ0Usd0JBRnFEO0VBRXJELGdCQUZxRCxFQUFBOztBQ1J6RDs7K0V6Q29pSStFO0F5Q2hpSS9FOztFekNtaUlFO0F5QzVoSUk7RUFDRSxxQmxDTmEsRUFBQTs7QWtDS2Y7RUFDRSw0QmxDTG9CLEVBQUE7O0FEcUd0QjtFbUNqR0E7SUFDRSxxQmxDTmEsRUFBQTtFa0NLZjtJQUNFLDRCbENMb0IsRUFBQSxFa0NNckI7O0FuQytGRDtFbUNqR0E7SUFDRSxxQmxDTmEsRUFBQTtFa0NLZjtJQUNFLDRCbENMb0IsRUFBQSxFa0NNckI7O0FuQytGRDtFbUNqR0E7SUFDRSxxQmxDTmEsRUFBQTtFa0NLZjtJQUNFLDRCbENMb0IsRUFBQSxFa0NNckI7O0FuQytGRDtFbUNqR0E7SUFDRSxxQmxDTmEsRUFBQTtFa0NLZjtJQUNFLDRCbENMb0IsRUFBQSxFa0NNckI7O0FBTVA7O0V6Q3FqSUU7QXlDOWlJSTtFbkMwQkYsZUN2Q1E7RUR3Q1IsZUU5QitCO0VGbUMvQixvQkFBZ0QsRUFBQTs7QW1DaEM5QztFbkMwQkYsZUN0Q1E7RUR1Q1IsZUU5QitCO0VGbUMvQixzQkFBZ0QsRUFBQTs7QW1DaEM5QztFbkMwQkYsZUNyQ1E7RURzQ1IsZUU5QitCO0VGbUMvQixtQkFBZ0QsRUFBQTs7QW1DaEM5QztFbkMwQkYsZUNwQ087RURxQ1AsaUJFOUIrQjtFRm1DL0Isb0JBQWdELEVBQUE7O0FtQ2hDOUM7RW5DMEJGLGVDbkNPO0VEb0NQLGlCRTlCK0I7RUZtQy9CLG9CQUFnRCxFQUFBOztBbUNoQzlDO0VuQzBCRixlQ2xDZTtFRG1DZixlRTlCK0I7RUZtQy9CLHNCQUFnRCxFQUFBOztBQWtEOUM7RW1DbEZBO0luQzBCRixlQ3ZDUTtJRHdDUixlRTlCK0I7SUZtQy9CLG9CQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDdENRO0lEdUNSLGVFOUIrQjtJRm1DL0Isc0JBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUNyQ1E7SURzQ1IsZUU5QitCO0lGbUMvQixtQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ3BDTztJRHFDUCxpQkU5QitCO0lGbUMvQixvQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ25DTztJRG9DUCxpQkU5QitCO0lGbUMvQixvQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ2xDZTtJRG1DZixlRTlCK0I7SUZtQy9CLHNCQUFnRCxFQUFBLEVtQzlCN0M7O0FuQ2dGRDtFbUNsRkE7SW5DMEJGLGVDdkNRO0lEd0NSLGVFOUIrQjtJRm1DL0Isb0JBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUN0Q1E7SUR1Q1IsZUU5QitCO0lGbUMvQixzQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ3JDUTtJRHNDUixlRTlCK0I7SUZtQy9CLG1CQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDcENPO0lEcUNQLGlCRTlCK0I7SUZtQy9CLG9CQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDbkNPO0lEb0NQLGlCRTlCK0I7SUZtQy9CLG9CQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDbENlO0lEbUNmLGVFOUIrQjtJRm1DL0Isc0JBQWdELEVBQUEsRW1DOUI3Qzs7QW5DZ0ZEO0VtQ2xGQTtJbkMwQkYsZUN2Q1E7SUR3Q1IsZUU5QitCO0lGbUMvQixvQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ3RDUTtJRHVDUixlRTlCK0I7SUZtQy9CLHNCQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDckNRO0lEc0NSLGVFOUIrQjtJRm1DL0IsbUJBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUNwQ087SURxQ1AsaUJFOUIrQjtJRm1DL0Isb0JBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUNuQ087SURvQ1AsaUJFOUIrQjtJRm1DL0Isb0JBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUNsQ2U7SURtQ2YsZUU5QitCO0lGbUMvQixzQkFBZ0QsRUFBQSxFbUM5QjdDOztBbkNnRkQ7RW1DbEZBO0luQzBCRixlQ3ZDUTtJRHdDUixlRTlCK0I7SUZtQy9CLG9CQUFnRCxFQUFBO0VtQ2hDOUM7SW5DMEJGLGVDdENRO0lEdUNSLGVFOUIrQjtJRm1DL0Isc0JBQWdELEVBQUE7RW1DaEM5QztJbkMwQkYsZUNyQ1E7SURzQ1IsZUU5QitCO0lGbUMvQixtQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ3BDTztJRHFDUCxpQkU5QitCO0lGbUMvQixvQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ25DTztJRG9DUCxpQkU5QitCO0lGbUMvQixvQkFBZ0QsRUFBQTtFbUNoQzlDO0luQzBCRixlQ2xDZTtJRG1DZixlRTlCK0I7SUZtQy9CLHNCQUFnRCxFQUFBLEVtQzlCN0M7O0FBTVA7O0V6QytxSUU7QXlDeHFJSTtFQUNFLGdCQUZvQixFQUFBOztBQUN0QjtFQUNFLGlCQUYyQixFQUFBOztBQUM3QjtFQUNFLGtCQUZtQyxFQUFBOztBbkNvRXJDO0VtQ25FQTtJQUNFLGdCQUZvQixFQUFBO0VBQ3RCO0lBQ0UsaUJBRjJCLEVBQUE7RUFDN0I7SUFDRSxrQkFGbUMsRUFBQSxFQUdwQzs7QW5DaUVEO0VtQ25FQTtJQUNFLGdCQUZvQixFQUFBO0VBQ3RCO0lBQ0UsaUJBRjJCLEVBQUE7RUFDN0I7SUFDRSxrQkFG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dkM7SUFDRSx5QkFGZ0QsRUFBQTtFQUNsRDtJQUNFLG9CQUZzRCxFQUFBO0VBQ3hEO0lBQ0UsMEJBRmtFLEVBQUEsRUFHbkU7O0FDN0VQOzsrRTFDKzZJK0U7QTBDeDZJN0U7RUFDRSxrQkFBZSxFQUFBOztBQURqQjtFQUNFLGtCQUFlLEVBQUE7O0FBRGpCO0VBQ0UsbUJBQWUsRUFBQTs7QUFEakI7RUFDRSxtQkFBZSxFQUFBOztBQURqQjtFQUNFLG1CQUFlLEVBQUE7O0FBRGpCO0VBQ0UsbUJBQWUsRUFBQTs7QUFEakI7RUFDRSxtQkFBZSxFQUFBOztBQURqQjtFQUNFLG1CQUFlLEVBQUE7O0FBRGpCO0VBQ0UsbUJBQWUsRUFBQTs7QUFEakI7RUFDRSxtQkFBZSxFQUFBOztBQURqQjtFQUNFLG1CQUFlLEVBQUE7O0FDUm5COzsrRTNDbTlJK0U7QTJDLzhJL0U7O0UzQ2s5SUU7QTJDNzhJQTtFQUNFLFVDRkssRUFBQTs7QURDUDtFQUNFLFdDRE0sRUFBQTs7QURBUjtFQUNFLFdDQU0sRUFBQTs7QUREUjtFQUNFLFdDQ00sRUFBQTs7QURGUjtFQUNFLFdDRU0sRUFBQTs7QURIUjtFQUNFLFdDR00sRUFBQTs7QURKUjtFQUNFLFdDSU0sRUFBQTs7QURMUjtFQUNFLFdDS00sRUFBQTs7QUROUjtFQUNFLFdDTU0sRUFBQTs7QURQUjtFQUNFLFdDT00sRUFBQTs7QURSUjtFQUNFLFlDUU8sRUFBQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1haW5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcblxyXG4vLyBTZXR0aW5nc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGltcG9ydCAnc2V0dGluZ3MvYWxsJztcclxuXHJcblxyXG4vLyBWZW5kb3JcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBpbXBvcnQgJy4uL3ZlbmRvci9ub3JtYWxpemUuY3NzJztcclxuQGltcG9ydCAnLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9vd2wuY2Fyb3VzZWwnO1xyXG5cclxuXHJcbi8vIFRvb2xzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AaW1wb3J0ICd0b29scy9hbGwnO1xyXG5cclxuXHJcbi8vIEVsZW1lbnRzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLy8gR2VuZXJpY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGltcG9ydCAnZ2VuZXJpYy9iYXNlJztcclxuQGltcG9ydCAnZ2VuZXJpYy9yZXNldCc7XHJcblxyXG5cclxuLy8gT2JqZWN0c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGltcG9ydCAnb2JqZWN0cy9idXR0b24nO1xyXG5AaW1wb3J0ICdvYmplY3RzL2NvbnRhY3RmaXhlZCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvY29udGFpbmVyJztcclxuQGltcG9ydCAnb2JqZWN0cy9jb250ZW50LWNvbnN0cmFpbnQnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2ZsZXgnO1xyXG4vLyBAaW1wb3J0ICdvYmplY3RzL2dyaWQnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2hlYWRpbmdzJztcclxuQGltcG9ydCAnb2JqZWN0cy9mb3Jtcyc7XHJcbkBpbXBvcnQgJ29iamVjdHMvbGlua3MnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2xpc3RzJztcclxuQGltcG9ydCAnb2JqZWN0cy9sb2dvJztcclxuQGltcG9ydCAnb2JqZWN0cy9wYXJhZ3JhcGhzJztcclxuQGltcG9ydCAnb2JqZWN0cy9zbGlkZXInO1xyXG5cclxuXHJcbi8vIENvbXBvbmVudHNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY21zLW91dHB1dCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFpbi1tZW51JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zdWJtZW51JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uYXZpZ2F0aW9uJztcclxuLy8gQGltcG9ydCAnY29tcG9uZW50cy9jb2x1bW5zJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb290ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RleHRpbWFnZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VjdG9ycyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGFjdC1mb3JtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy90ZWFzZXJzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy90ZWFtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9hcnRpY2xlcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFpbGNoaW1wJztcclxuXHJcblxyXG4vLyBVdGlsaXRpZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9jb2xvcic7XHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9vYmplY3QtZml0JztcclxuQGltcG9ydCAndXRpbGl0aWVzL3Bvc2l0aW9uJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3RleHQnO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvdmVydGljYWwtcmh5dGhtJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3otaW5kZXgnO1xyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBEZWZpbml0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gR3JpZFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gR3JpZCB3aWR0aC5cclxuLy8gTWF4aW11bSBjb250YWluZXIgd2lkdGguXHJcbiRncmlkLXdpZHRoOiAxMDI0cHg7XHJcblxyXG4vLyBHcmlkIGNvbHVtbnMuXHJcbi8vIEFtb3VudCBvZiBncmlkIGNvbHVtbnMgdG8gY2FsY3VsYXRlIGEgY29sdW1uIHdpZHRoIHdpdGguXHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG5cclxuLy8gR3JpZCBjb2x1bW4uXHJcbi8vIENvbHVtbiB3aWR0aCBpbiBwaXhlbHMuXHJcbiRncmlkLWNvbHVtbjogNjBweDtcclxuXHJcbi8vIEdyaWQgZ2FwLlxyXG4vLyBTcGFjZSBiZXR3ZWVuIGdyaWQgY29sdW1ucywgYXV0b21hdGVkLlxyXG4kZ3JpZC1nYXA6ICgkZ3JpZC13aWR0aCAtICgkZ3JpZC1jb2x1bW4gKiAkZ3JpZC1jb2x1bW5zKSkgLyAkZ3JpZC1jb2x1bW5zO1xyXG5cclxuXHJcbi8vIEFzc2V0c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gSW1hZ2UgcGF0aC5cclxuJGltYWdlLXBhdGg6ICcuLi9pbWFnZXMvJztcclxuXHJcblxyXG4vLyBCb2R5XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbmJvZHkge1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gQm9keSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG4kYm9keS1iYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblxyXG4vLyBCb2R5IGNvbG9yLlxyXG4kYm9keS1jb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cclxuLy8gQm9keSBmb250IGZhbWlseS5cclxuJGJvZHktZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnZGVmYXVsdCcpO1xyXG5cclxuLy8gQm9keSB0ZXh0LlxyXG4kYm9keS10ZXh0OiAncCc7XHJcblxyXG4vLyBSZXNwb25zaXZlXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnQgYWxpYXMuXHJcbiRicmVha3BvaW50czogKFxyXG4gIHhzOiAwLFxyXG4gIHNtOiA2MDBweCxcclxuICBtZDogNzY4cHgsXHJcbiAgbGc6IDEwMjRweCxcclxuICB4bDogMTIwMHB4XHJcbik7XHJcblxyXG4vLyBQYWRkaW5nXHJcbiRwYWRkaW5nLXZlcnRpY2FsOiAyMHB4IDA7XHJcbiRwYWRkaW5nLWhvcml6b250YWw6IDAgMjBweDtcclxuJHBhZGRpbmc6IDIwcHg7XHJcbiRiaWdnZXItcGFkZGluZzogMzBweDtcclxuXHJcbi8vIE1hcmdpblxyXG4kbWFyZ2luLXZlcnRpY2FsOiAzMHB4IDA7XHJcbiRtYXJnaW4taG9yaXpvbnRhbDogMCAzMHB4O1xyXG4kbWFyZ2luOiAzMHB4O1xyXG4kc21hbGxlci1tYXJnaW46IDIwcHg7XHJcbiRtYXJnaW4tc2VjdGlvbjogMTAwcHg7XHJcbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIkBpbXBvcnQgdXJsKC4uL3ZlbmRvci9ub3JtYWxpemUuY3NzKTtcbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0OyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWdyYWIge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IGdyYWI7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSB7XG4gICAgbWF4LWhlaWdodDogMDsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenkge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gVmlkZW8gUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQmFzZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIFJlbW92ZSBtYXJnaW4gYW5kIHBhZGRpbmcgZnJvbSBldmVyeSBzZWxlY3RvciBpbmNsdWRpbmcgdGhlaXJcclxuICogcHN1ZWRvIHNlbGVjdG9ycy5cclxuICpcclxuICogMS4gTW9yZSBzZW5zaWJsZSBkZWZhdWx0IGJveCBzaXppbmcuXHJcbiAqICAgIChjc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UpLlxyXG4gKi9cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgLyogMSAqLyB9XG5cbi8qKlxyXG4gKiBTZXQgaGVpZ2h0IG9mIHRoZSBkb2N1bWVudCB0byBtYXhpdW0gdmlld3BvcnQgaGVpZ2h0LlxyXG4gKlxyXG4gKiAxLiBTZXQgcm9vdCBmb250IHNpemUgdG8gMTAuXHJcbiAqL1xuaHRtbCB7XG4gIGhlaWdodDogMTAwdmg7XG4gIGZvbnQtc2l6ZTogNjIuNSU7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKipcclxuICogU2V0IG1pbmltYWwgaGVpZ2h0IG9mIHRoZSBib2R5IHRvIG1heGltdW0gdmlld3BvcnQgaGVpZ2h0IHRvXHJcbiAqIG1hdGNoIHRoZSBkb2N1bWVudCdzIGhlaWdodC5cclxuICpcclxuICogMS4gRmlyZWZveCAyNSsuXHJcbiAqIDIuIENocm9tZSA1Ky5cclxuICovXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1ZW07XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1mYW1pbHk6IFwiVWJ1bnR1XCI7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSZXNldFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIEN1c3RvbSB1c2VyIGFnZW50IHJlc2V0cyBhbmQgb3ZlcnJpZGVzIHRoYXQgYXJlIG5vdCBwcmVzZW50IGluXHJcbiAqIE5vcm1hbGl6ZSA4LjAuMC4gVGhpcyBtb3N0bHkgcmVtb3ZlcyBzb21lIGFubm95aW5nIG1hcmdpbiBhbmQgcGFkZGluZ1xyXG4gKiBkZWZhdWx0cywgYm9yZGVyIHJhZGl1cywgYW5kIG91dGxpbmVzLlxyXG4gKi9cbmEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qKlxyXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBvbiBDaHJvbWUgNjIuMCsgb24gbWFjT1MuXHJcbiAqL1xuYnV0dG9uIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAvKiAxICovXG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuaHIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXHJcbiAqIDEuIFJlbW92ZSB3aGl0ZSBzcGFjZS5cclxuICovXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLyogMSAqLyB9XG5cbi8qKlxyXG4gKiAxLiBSZW1vdmUgaW5oZXJpdGVkIHVzZXIgYWdlbnQgYXBwZWFyYW5jZS5cclxuICovXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIDEgKi8gfVxuXG4vKipcclxuICogMS4gT25seSBhbGxvdyB2ZXJ0aWNhbCByZXNpemluZyB0byBwcmV2ZW50IHRoZSB0ZXh0YXJlYVxyXG4gKiAgICBmcm9tIG92ZXJmbG93aW5nIHRoZSBjb250YWluZXIuXHJcbiAqL1xudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyB9XG5cbnVsLFxub2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG5wIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxyXG4gKiAxLiBDb2xsYXBzZSBib3JkZXJzIHRvIHByZXZlbnQgZG91YmxlIHNpZGVkIGJvcmRlcnMuXHJcbiAqL1xudGFibGUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIC8qIDEgKi8gfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEJ1dHRvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIERlZmF1bHQgYnV0dG9uLlxyXG4gKi9cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcbiAgYm9yZGVyLXJhZGl1czogMzhweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5idXR0b246OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKFwiaHVnZVwiKTsgfVxuICAuYnV0dG9uOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoXCJodWdlXCIpOyB9XG4gIC5idXR0b24uYnV0dG9uLS1mb250LW1lZGl1bSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uYnV0dG9uLS1zbWFsbCB7XG4gIHBhZGRpbmc6IDExcHggMTVweDsgfVxuXG4uYnV0dG9uLS1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAjZmY5MjU2IDAlLCAjZmZhMTA3IDEwMCUpO1xuICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLS1vcmFuZ2U6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgyNTUsIDE1MywgNTEsIDAuNTQpOyB9XG5cbi5idXR0b24tLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAuYnV0dG9uLS13aGl0ZTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5idXR0b24tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmOyB9XG4gIC5idXR0b24tLXNlY29uZGFyeTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43OyB9XG5cbi5idXR0b24tLWJsdWUge1xuICBiYWNrZ3JvdW5kOiAjMDA4YzlhO1xuICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLS1ibHVlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA1NzYwOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY29udGFjdC1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA0NSU7XG4gIGxlZnQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICB6LWluZGV4OiAyOyB9XG4gIC5jb250YWN0LWZpeGVkIC5jb250YWN0LWZpeGVkLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMTBweDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gICAgYmFja2dyb3VuZDogIzAwOGM5YTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDE0MCwgMTU0LCAwLjM5KTsgfVxuICAgIC5jb250YWN0LWZpeGVkIC5jb250YWN0LWZpeGVkLWl0ZW06aG92ZXIge1xuICAgICAgbGVmdDogY2FsYygtMTAwJSArIDUwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDU3NjA7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDg3LCA5NiwgMC41KTsgfVxuICAgIC5jb250YWN0LWZpeGVkIC5jb250YWN0LWZpeGVkLWl0ZW0gLmNvbnRhY3QtZml4ZWQtbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuY29udGFjdC1maXhlZCAuY29udGFjdC1maXhlZC1pdGVtIHN2ZyB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuY29udGFjdC1maXhlZCB7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gNTBweCk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jb250YWN0LWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogLTE3MHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTEzNXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLmNvbnRhY3QtZml4ZWQgLmNvbnRhY3QtZml4ZWQtaXRlbSBzdmcge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuICAgIC5jb250YWN0LWZpeGVkIC5jb250YWN0LWZpeGVkLWl0ZW06aG92ZXIge1xuICAgICAgbGVmdDogMDsgfSB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbnRhaW5lclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIFRoZSBjb250YWluZXIgb2JqZWN0IGNlbnRlcnMgYW4gZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbiAqL1xuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogY2FsYygxMDI0cHggKyA1MC42NjY2N3B4KTtcbiAgcGFkZGluZzogMCAyNS4zMzMzM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTI1MHB4OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgNDBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAzMHB4OyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ29udGVudCBDb25zdHJhaW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogVGhlIGNvbnRlbnQgY29uc3RyYWludCBpcyBhIGNvbnN0cmFpbnQgZm9yIGFsbCB0aGUgY29udGVudCB3aXRoaW5cclxuICogdGhlIGRvY3VtZW50LiBJdCBjYW4gYmUgbWFuaXB1bGF0ZWQgYnkgQ1NTIG9yIEphdmFTY3JpcHQgd2l0aG91dFxyXG4gKiBpbmZsdWVuY2luZyB0aGUgYm9keS5cclxuICovXG4uY29udGVudC1jb25zdHJhaW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGbGV4XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogRXhhbXBsZSBvZiBhIGZsZXggYmFzZWQgY29sdW1uIGdyaWQgbGF5b3V0IGluIHByYWN0aWNlOlxyXG4gKlxyXG4gKiA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAqICAgPGRpdiBjbGFzcz1cImNvbCBjb2wteHMtNiBjb2wtc20tMTJcIj48L2Rpdj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiA8L2Rpdj5cclxuICpcclxuICogVGhpcyBleGFtcGxlIHdpbGwgY3JlYXRlIGEgcm93IHdpdGggdHdvIGNvbHVtbnMgZWFjaCBmaWxsaW5nIGhhbGYgdGhlIHdpZHRoXHJcbiAqIG9mIHRoZSByb3cgb24gYWxsIG1lZGlhLCBidXQgd2lsbCBjb252ZXJ0IHRvIGEgZnVsbCB3aWR0aCBjb2x1bW4gb24gdGhlXHJcbiAqIHNtYWxsIGAtc21gIGJyZWFrcG9pbnQgYWxpYXMsIHdoaWNoIGlzIG1vYmlsZSBvbmx5LiBSZWZlciB0b1xyXG4gKiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgIGZvciBhbGwgYnJlYWtwb2ludCBhbGlhcy5cclxuICovXG4vKipcclxuICogRmxleCBvYmplY3QuXHJcbiAqXHJcbiAqIFRpcDogVXNlIGZsZXggb24gYSBjb2x1bW4gdG8gbWFrZSB0aGUgYm94IHRoZSBzYW1lIGhlaWdodCBhcyB0aGUgY29sdW1uLlxyXG4gKi9cbi5mbGV4IHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4vKipcclxuICogRmxleCBvYmplY3Qgd2l0aCBhIGNvbHVtbiBiYXNlZCBsYXlvdXQgc3lzdGVtLlxyXG4gKi9cbi5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luOiAwIC0xMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gKiBCb3gsIHRoZSBpbnNpZGUgb2YgYSBjb2x1bW4uXHJcbiAqL1xuLmJveCB7XG4gIGZsZXg6IDE7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiAxIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtMSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogOC4zMzMzMyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgMSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDIgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy0yIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAxNi42NjY2NyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgMiBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiAzIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtMyB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogMjUlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDMgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gNCBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTQge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCA0IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDUgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy01IHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA0MS42NjY2NyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgNSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiA2IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtNiB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDYgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gNyBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTcge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCA3IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDggZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy04IHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA2Ni42NjY2NyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgOCBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiA5IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtOSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogNzUlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDkgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTAgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy0xMCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogODMuMzMzMzMlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDEwIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTExIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA5MS42NjY2NyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgMTEgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDEyIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtMTIge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICogQWxpZ24gYHN0cmV0Y2hgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYWxpZ24teHMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi8qKlxyXG4gICAgICAgKiBBbGlnbiBgY2VudGVyYCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmFsaWduLXhzLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LXN0YXJ0YCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmFsaWduLXhzLWZsZXgtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4vKipcclxuICAgICAgICogQWxpZ24gYGZsZXgtZW5kYCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmFsaWduLXhzLWZsZXgtZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi8qKlxyXG4gICAgICAgKiBBbGlnbiBgYmFzZWxpbmVgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYWxpZ24teHMtYmFzZWxpbmUge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cblxuLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHN0YXJ0YCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmp1c3RpZnkteHMtc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0OyB9XG5cbi8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBjZW50ZXJgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uanVzdGlmeS14cy1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4vKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYmV0d2VlbmAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5qdXN0aWZ5LXhzLXNwYWNlLWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWFyb3VuZGAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5qdXN0aWZ5LXhzLXNwYWNlLWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1ldmVubHlgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uanVzdGlmeS14cy1zcGFjZS1ldmVubHkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfVxuXG4vKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmJsZWVkLXhzLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLyoqXHJcbiAgICAgICAqIEJsZWVkIHJpZ2h0IGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYmxlZWQteHMtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi8qKlxyXG4gICAgICogT3JkZXIgZmlyc3QgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbi5maXJzdC14cyB7XG4gIG9yZGVyOiAtMTsgfVxuXG4vKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbi5sYXN0LXhzIHtcbiAgb3JkZXI6IDE7IH1cblxuLyoqXHJcbiAgICAgKiBSZXZlcnNlIG9yZGVyIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICovXG4ucmV2ZXJzZS14cyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tMSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAyIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS0yIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMiBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMyBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tMyB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDMgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDQgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTQge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA0IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA1IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS01IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNiBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tNiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDYgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDcgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA3IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA4IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS04IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgOCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gOSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tOSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDc1JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDkgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDEwIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS0xMCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDEwIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTEgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTExIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogOTEuNjY2NjclO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMTEgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMiBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICogQWxpZ24gYHN0cmV0Y2hgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAvKipcclxuICAgICAgICogQWxpZ24gYGNlbnRlcmAgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAvKipcclxuICAgICAgICogQWxpZ24gYGZsZXgtc3RhcnRgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1zbS1mbGV4LXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAvKipcclxuICAgICAgICogQWxpZ24gYGZsZXgtZW5kYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tc20tZmxleC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcclxuICAgICAgICogQWxpZ24gYGJhc2VsaW5lYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tc20tYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3RhcnRgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXNtLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBjZW50ZXJgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXNtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWJldHdlZW5gIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXNtLXNwYWNlLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYXJvdW5kYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1zcGFjZS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1ldmVubHlgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXNtLXNwYWNlLWV2ZW5seSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgLyoqXHJcbiAgICAgICAqIEJsZWVkIGxlZnQgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmJsZWVkLXNtLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgcmlnaHQgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmJsZWVkLXNtLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxyXG4gICAgICogT3JkZXIgZmlyc3QgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmZpcnN0LXNtIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBsYXN0IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICovXG4gIC5sYXN0LXNtIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcclxuICAgICAqIFJldmVyc2Ugb3JkZXIgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLnJldmVyc2Utc20ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDIgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTIge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAyIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAzIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMyBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDQgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDUgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTUge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA1IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA2IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNiBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNyBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtNyB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDcgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDggZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTgge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA4IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA5IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgOSBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTAgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTEwIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMTAgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMSBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtMTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMSBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDEyIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC0xMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgc3RyZXRjaGAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgY2VudGVyYCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbWQtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1zdGFydGAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLW1kLWZsZXgtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1lbmRgIGZvciB0aGUgbWQgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1tZC1mbGV4LWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgYmFzZWxpbmVgIGZvciB0aGUgbWQgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzdGFydGAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbWQtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGNlbnRlcmAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbWQtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYmV0d2VlbmAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbWQtc3BhY2UtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1hcm91bmRgIGZvciB0aGUgbWQgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LW1kLXNwYWNlLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWV2ZW5seWAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbWQtc3BhY2UtZXZlbmx5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3QtbWQge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3QtbWQge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS1tZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDIgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAyIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAzIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMyBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctNCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDQgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDUgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTUge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA1IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA2IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNiBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNyBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctNyB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDcgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDggZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTgge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA4IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA5IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgOSBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTAgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTEwIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMTAgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMSBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctMTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMSBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDEyIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy0xMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgc3RyZXRjaGAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgY2VudGVyYCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbGctY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1zdGFydGAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLWxnLWZsZXgtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1lbmRgIGZvciB0aGUgbGcgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1sZy1mbGV4LWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgYmFzZWxpbmVgIGZvciB0aGUgbGcgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzdGFydGAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbGctc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGNlbnRlcmAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbGctY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYmV0d2VlbmAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbGctc3BhY2UtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1hcm91bmRgIGZvciB0aGUgbGcgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LWxnLXNwYWNlLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWV2ZW5seWAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbGctc3BhY2UtZXZlbmx5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbGctbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbGctcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3QtbGcge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3QtbGcge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDIgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAyIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAzIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMyBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNCBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDQgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDUgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA1IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA2IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNiBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNyBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtNyB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDcgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDggZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA4IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA5IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgOSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTAgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTEwIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMTAgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDEyIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0xMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgc3RyZXRjaGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgY2VudGVyYCBmb3IgdGhlIHhsIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24teGwtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1zdGFydGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXhsLWZsZXgtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1lbmRgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi14bC1mbGV4LWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgYmFzZWxpbmVgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzdGFydGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGNlbnRlcmAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYmV0d2VlbmAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3BhY2UtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1hcm91bmRgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXhsLXNwYWNlLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWV2ZW5seWAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3BhY2UtZXZlbmx5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIHhsIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQteGwtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIHhsIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQteGwtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3QteGwge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3QteGwge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS14bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuaDEsXG5oMixcbmgzIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZiBKUFwiO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyB9XG4gIGgxLmhlYWRpbmctLXdoaXRlLFxuICBoMi5oZWFkaW5nLS13aGl0ZSxcbiAgaDMuaGVhZGluZy0td2hpdGUge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIGgxLmhlYWRpbmctLW9yYW5nZSxcbiAgaDIuaGVhZGluZy0tb3JhbmdlLFxuICBoMy5oZWFkaW5nLS1vcmFuZ2Uge1xuICAgIGNvbG9yOiAjZmI4MTFjOyB9XG4gIGgxLmhlYWRpbmctLWFsaWduLWNlbnRlcixcbiAgaDIuaGVhZGluZy0tYWxpZ24tY2VudGVyLFxuICBoMy5oZWFkaW5nLS1hbGlnbi1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5oMSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGNvbG9yOiAjMDA4YzlhO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiA1N3B4OyB9XG4gIGgxLmhlYWRpbmctLWNvbG9yLWJsYWNrIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG4uc2VjdGlvbi1hcnRpY2xlIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5oMixcbi5zZWN0aW9uLWFydGljbGUgaDEge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogNDRweDsgfVxuICBoMi5oZWFkaW5nLS1ib3JkZXItYm90dG9tOmFmdGVyLFxuICAuc2VjdGlvbi1hcnRpY2xlIGgxLmhlYWRpbmctLWJvcmRlci1ib3R0b206YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDhjOWE7XG4gICAgY29udGVudDogJyc7IH1cbiAgaDIuaGVhZGluZy0tYm9yZGVyLWJvdHRvbS5oZWFkaW5nLS1hbGlnbi1jZW50ZXI6YWZ0ZXIsXG4gIC5zZWN0aW9uLWFydGljbGUgaDEuaGVhZGluZy0tYm9yZGVyLWJvdHRvbS5oZWFkaW5nLS1hbGlnbi1jZW50ZXI6YWZ0ZXIge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19tYWluLWNvbnRlbnQgaDI6YWZ0ZXIge1xuICB3aWR0aDogOTUlOyB9XG5cbi5zZWN0aW9uLWFydGljbGUgLnNlY3Rpb24tYXJ0aWNsZV9fbWFpbi1jb250ZW50IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCBoMzphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5oMyB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAyOXB4OyB9XG4gIGgzLmhlYWRpbmctLWJvcmRlci1ib3R0b206YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDhjOWE7XG4gICAgY29udGVudDogJyc7IH1cbiAgaDMuaGVhZGluZy0tYm9yZGVyLWJvdHRvbS5oZWFkaW5nLS1hbGlnbi1jZW50ZXI6YWZ0ZXIge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NHB4OyB9XG4gIGgyOm5vdCguYnJhbmNoZXMtbWVudV9fdHJpZ2dlcikge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDsgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOXB4OyB9XG4gIGgxLmhlYWRpbmctLWJvcmRlci1ib3R0b206YWZ0ZXIsXG4gIGgyLmhlYWRpbmctLWJvcmRlci1ib3R0b206YWZ0ZXIsXG4gIGgzLmhlYWRpbmctLWJvcmRlci1ib3R0b206YWZ0ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uc2VsZWN0IHtcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMDA4YzlhO1xuICBmb250LXdlaWdodDogMTAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLnNlbGVjdDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmZvcm0gaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmZvcm0gaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICB3aWR0aDogYXV0bzsgfVxuXG5mb3JtIC5nZmllbGRfY29udGFpbnNfcmVxdWlyZWQgbGFiZWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmZvcm0gOjpwbGFjZWhvbGRlciwgZm9ybSBsYWJlbCB7XG4gIGNvbG9yOiAjM2QzZDNkOyB9XG5cbmZvcm0gLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmZvcm0gLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG5mb3JtIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG5mb3JtIGlucHV0W3R5cGU9J2NoZWNrYm94J10sXG5mb3JtIGlucHV0W3R5cGU9J3JhZGlvJ10ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDExcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzZDNkM2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgZm9ybSBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQsXG4gIGZvcm0gaW5wdXRbdHlwZT0ncmFkaW8nXTpjaGVja2VkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBmb3JtIGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZDpiZWZvcmUsXG4gICAgZm9ybSBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQ6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNnB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwLjA4ZW0gMC4wOGVtIDAgMDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6ICMzZDNkM2Q7XG4gICAgICBjb250ZW50OiAnJzsgfVxuICAgIGZvcm0gaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkOmFmdGVyLFxuICAgIGZvcm0gaW5wdXRbdHlwZT0ncmFkaW8nXTpjaGVja2VkOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTdweDtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwLjA4ZW0gMC4wOGVtIDAgMDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6ICMzZDNkM2Q7XG4gICAgICBjb250ZW50OiAnJzsgfVxuXG5mb3JtIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgZm9ybSB1bC5nZmllbGRfY2hlY2tib3gge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBmb3JtIHVsLmdmaWVsZF9jaGVja2JveCBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgZm9ybSB1bCAuZ2ZpZWxkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDQ4JTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgZm9ybSB1bCAuZ2ZpZWxkLnRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBmb3JtIHVsIC5nZmllbGQudGV4dGFyZWEgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4udmFsaWRhdGlvbl9lcnJvciB7XG4gIG1hcmdpbjogMzBweCAwO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICMwMDhjOWE7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2VyaWYgSlBcIjtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtb3JhbmdlIGZvcm0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMDAwOyB9XG4gIC5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtb3JhbmdlIGZvcm0gLmJ1dHRvbjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtb3JhbmdlIGZvcm0gbGFiZWwsXG4uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLW9yYW5nZSBmb3JtIDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLW9yYW5nZSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLW9yYW5nZSA6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1vcmFuZ2UgOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgZm9ybSB1bCBsaSxcbiAgZm9ybSB1bCAuZ2ZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBmb3JtIC5idXR0b24sXG4gIGZvcm0gaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfSB9XG5cbnAgYSB7XG4gIGNvbG9yOiAjZmI4MTFjOyB9XG4gIHAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmxpbmsubGluay0tb3JhbmdlIHtcbiAgY29sb3I6ICNmYjgxMWM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubGluay5saW5rLS1ibHVlIHtcbiAgY29sb3I6ICMwMDhjOWE7IH1cblxudWwge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIHVsLnRleHQtaW1hZ2VfX3VzcC1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWFyZ2luLXRvcDogMTJweDsgfVxuICB1bC51bC1saXN0LS1vcmFuZ2Uge1xuICAgIGNvbG9yOiAjZmI4MTFjOyB9XG4gIHVsIGxpLnRleHQtaW1hZ2VfX3VzcC1pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICB1bCBsaS50ZXh0LWltYWdlX191c3AtaXRlbSBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDE0cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDdweDsgfVxuXG4uZm9vdGVyX19ibG9jay1hcHBvaW50bWVudCBsaSB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IGxpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTFweDsgfVxuXG4ubG9nbyB7XG4gIHdpZHRoOiAzMDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxvZ28ge1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7IH0gfVxuXG5wIHtcbiAgY29sb3I6ICMzZDNkM2Q7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNDRweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cblxuLmRlZmF1bHQtdGV4dF9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDgyMHB4O1xuICBtYXJnaW46IGF1dG87IH1cbiAgLmRlZmF1bHQtdGV4dF9fY29udGVudCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuXG4udGV4dC1pbWFnZS50ZXh0LWltYWdlLnRleHQtaW1hZ2UtLWFsaWduLWNlbnRlciAuc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogMDsgfVxuXG4uc2VjdGlvbi5zZWN0aW9uLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VjdGlvbi5zZWN0aW9uLXNsaWRlciAuanMtc2xpZGVzaG93IHtcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDsgfVxuICAuc2VjdGlvbi5zZWN0aW9uLXNsaWRlciAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0gaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uc2xpZGVzaG93OmhvdmVyIHtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5zbGlkZXItYXJyb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTVweDtcbiAgY29sb3I6ICMwMDhjOWE7XG4gIHotaW5kZXg6IDE7IH1cbiAgLnNsaWRlci1hcnJvdzpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5zbGlkZXItYXJyb3cuc2xpZGVyLW5hdl9fYXJyb3ctbGVmdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gIC5zbGlkZXItYXJyb3cgc3ZnIHtcbiAgICB3aWR0aDogMTVweDsgfVxuXG4ub3dsLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgei1pbmRleDogMTsgfVxuICAub3dsLW5hdiAuc2xpZGVyLXRlc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDM4cHg7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtbmF2IC5vd2wtcHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgY29sb3I6ICMwMDhjOWEgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSAhaW1wb3J0YW50OyB9XG4gICAgLm93bC1uYXYgLm93bC1uZXh0OmhvdmVyLFxuICAgIC5vd2wtbmF2IC5vd2wtcHJldjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAub3dsLW5hdiAub3dsLW5leHQgc3ZnLFxuICAgIC5vd2wtbmF2IC5vd2wtcHJldiBzdmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICB3aWR0aDogMTVweDsgfVxuICAub3dsLW5hdiAub3dsLXByZXYge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDM4cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMzhweDsgfVxuICAub3dsLW5hdiAub3dsLW5leHQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzOHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzOHB4OyB9XG5cbi5zZWN0aW9uLWFydGljbGUgLm93bC1uYXYge1xuICB3aWR0aDogOTUlOyB9XG5cbi5zbGlkZXItaXRlbSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDUwMHB4OyB9XG5cbi5zbGlkZXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNDBweCk7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIG1heC13aWR0aDogODBweDtcbiAgbWF4LWhlaWdodDogMzBweDtcbiAgcGFkZGluZzogN3B4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDM4cHg7XG4gIHotaW5kZXg6IDE7IH1cbiAgLnNsaWRlci1uYXYgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLnNsaWRlci1uYXYgc3ZnOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc2xpZGVyLW5hdiAuYmx1ciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAzOHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlIC5vd2wtbmF2IHtcbiAgICB3aWR0aDogOTAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0ge1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4OyB9XG4gICAgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtaGVpZ2h0OiAzNTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zbGlkZXItaXRlbSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLnNsaWRlci1pdGVtIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNlY3Rpb24tdGFic19fdGFiLWltYWdlcyAub3dsLW5hdiB7XG4gICAgYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm93bC1uYXYge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcbiAgICBoZWlnaHQ6IDMwMHB4OyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ01TIE91dHB1dFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIEV2ZXJ5IGNvbmNlaXZhYmxlIEhUTUwgZWxlbWVudCB3aXRoaW4gYSBgLmNtcy1vdXRwdXRgIHdyYXBwZXIuXHJcbiAqXHJcbiAqIDEuIEV4Y2x1ZGUgbGFzdCBjaGlsZHMuXHJcbiAqL1xuLmNtcy1vdXRwdXQgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIC8qIDEgKi8gfVxuXG4uY21zLW91dHB1dCB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG4uY21zLW91dHB1dCBvbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDsgfVxuXG4uY21zLW91dHB1dCBwID4gYSB7XG4gIGNvbG9yOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAjZmY5MjU2IDAlLCAjZmZhMTA3IDEwMCUpOyB9XG4gIC5jbXMtb3V0cHV0IHAgPiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBNYWluIE1lbnVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBXb3JkUHJlc3MgbWFpbiBtZW51LlxyXG4gKi9cbi8qKlxyXG4gKiBNYWluIG1lbnUuXHJcbiAqL1xuLm1haW4taGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgLm1haW4taGVhZGVyIC5tYWluLWhlYWRlcl9fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHotaW5kZXg6IDEwMDsgfVxuICAgIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXJfX3dyYXBwZXIuaXMtYWN0aXZlIHtcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzA0YmJjYyAwJSwgIzAwOGM5YSAxMDAlKTsgfVxuICAgIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXJfX3dyYXBwZXI6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgLm1haW4taGVhZGVyIC5tYWluLWhlYWRlcl9fd3JhcHBlciAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1heC13aWR0aDogMTI1MHB4O1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgLm1haW4taGVhZGVyIC5tYWluLWhlYWRlcl9fd3JhcHBlciAubG9nby1jb250YWluZXItLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5tYWluLWhlYWRlcl9fYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xuICB6LWluZGV4OiAxMDA7IH1cbiAgLm1haW4taGVhZGVyX19ibG9jayAubG9nby1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5tYWluLWhlYWRlcl9fYmxvY2sgLmxvZ28tY29udGFpbmVyLmhpZGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFpbi1oZWFkZXJfX2Jsb2NrLm1haW4taGVhZGVyX19ibG9jay1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5sYW5ndWFnZS1zd2l0Y2gsXG4uanMtbWFpbi1tZW51LWJ1dHRvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLyoqXHJcbiAqIE1haW4gbWVudSBpdGVtIGhhcyBjaGlsZHJlbi5cclxuICovXG4ubWFpbi1tZW51ID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAubWFpbi1tZW51ID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmxhbmd1YWdlLXN3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gIC5sYW5ndWFnZS1zd2l0Y2ggLmxhbmd1YWdlLXN3aXRjaF9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICMwMDhjOWE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAubGFuZ3VhZ2Utc3dpdGNoIC5sYW5ndWFnZS1zd2l0Y2hfX2xpc3QgLmpzLWxhbmd1YWdlLWxpc3Qge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNlMWYyZjQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAubGFuZ3VhZ2Utc3dpdGNoIC5sYW5ndWFnZS1zd2l0Y2hfX2xpc3QgLmpzLWxhbmd1YWdlLWxpc3QgLmxhbmd1YWdlLXN3aXRjaF9fb3B0aW9uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTsgfVxuICAgICAgICAubGFuZ3VhZ2Utc3dpdGNoIC5sYW5ndWFnZS1zd2l0Y2hfX2xpc3QgLmpzLWxhbmd1YWdlLWxpc3QgLmxhbmd1YWdlLXN3aXRjaF9fb3B0aW9uOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5sYW5ndWFnZS1zd2l0Y2guc2VsZWN0LS13aGl0ZSAubGFuZ3VhZ2Utc3dpdGNoX19saXN0LmNoZXZyb246YWZ0ZXIsXG4gIC5sYW5ndWFnZS1zd2l0Y2guc2VsZWN0LS13aGl0ZSAubGFuZ3VhZ2Utc3dpdGNoX19vcHRpb24sXG4gIC5sYW5ndWFnZS1zd2l0Y2guc2VsZWN0LS13aGl0ZSBzcGFuIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoLnNlbGVjdC0td2hpdGUgLmpzLWxhbmd1YWdlLWxpc3QgLmxhbmd1YWdlLXN3aXRjaF9fb3B0aW9uOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwOGM5YTsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoIC5sYW5ndWFnZS1zd2l0Y2hfX2xpc3QuY2hldnJvbjphZnRlciB7XG4gICAgdG9wOiAxMHB4O1xuICAgIGxlZnQ6IDhweDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMCAwO1xuICAgIGNvbG9yOiAjMDA4YzlhOyB9XG5cbi5saW5lIHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA2NThweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcbiAgLm1haW4taGVhZGVyIC5tYWluLWhlYWRlcl9fd3JhcHBlciAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAyMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubWFpbi1oZWFkZXJfX3dyYXBwZXIgLmxvZ28tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm1haW4taGVhZGVyX193cmFwcGVyIC5sb2dvLWNvbnRhaW5lci5sb2dvLWNvbnRhaW5lci0tbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tYWluLWhlYWRlcl9fd3JhcHBlci5pcy1hY3RpdmUgLm1haW4taGVhZGVyX19jb250YWluZXIgLm1haW4taGVhZGVyX19ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWFpbi1oZWFkZXJfX3dyYXBwZXIuaXMtYWN0aXZlIC5tYWluLWhlYWRlcl9fY29udGFpbmVyIC5tYWluLWhlYWRlcl9fYmxvY2sgLmxvZ28tY29udGFpbmVyLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tYWluLWhlYWRlcl9fd3JhcHBlci5pcy1hY3RpdmUgLm1haW4taGVhZGVyX19jb250YWluZXIgLm1haW4taGVhZGVyX19ibG9jayAubG9nby1jb250YWluZXItLXdoaXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgLm1haW4taGVhZGVyX193cmFwcGVyLmlzLWFjdGl2ZSAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciAubWFpbi1oZWFkZXJfX2Jsb2NrIC5sb2dvLWNvbnRhaW5lci0td2hpdGUgLmxvZ28ge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1haW4taGVhZGVyX19jb250YWluZXI6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tYWluLWhlYWRlcl9fYmxvY2sge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTdWJtZW51XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogU3VibWVudSBidXR0b24uXHJcbiAqL1xuLnN1Ym1lbnUtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi8qKlxyXG4gKiBTdWJtZW51IGNvbnRhaW5lci5cclxuICovXG4uc3VibWVudS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qKlxyXG4gKiBTdWJtZW51LlxyXG4gKi9cbi8qKlxyXG4gKiBTdWJtZW51IGl0ZW0uXHJcbiAqL1xuLyoqXHJcbiAqIFN1Ym1lbnUgaXRlbSBsaW5rLlxyXG4gKi9cbi5iYXIxLFxuLmJhcjIsXG4uYmFyMyB7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDVweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOGM5YTsgfVxuXG4uaXMtYWN0aXZlIC5iYXIxIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoLTlweCwgN3B4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgtOXB4LCA3cHgpOyB9XG5cbi5pcy1hY3RpdmUgLmJhcjIge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5pcy1hY3RpdmUgLmJhcjMge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKC04cHgsIC03cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoLThweCwgLTdweCk7IH1cblxuLm1haW4tbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZzogMjBweCAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzA0YmJjYyAwJSwgIzAwOGM5YSAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogOTA7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW1lbnUgLm1lbnUtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC5tYWluLW5hdmlnYXRpb24gLm1haW4tbWVudSAubWVudS1pdGVtIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZiBKUFwiO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgLm1haW4tbmF2aWdhdGlvbiAubWFpbi1tZW51IC5tZW51LWl0ZW0gYTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW1lbnUgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggIzAwOGM5YTsgfVxuICAgICAgICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW1lbnUgLm1lbnUtaXRlbSBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3Qge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7IH1cbiAgICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3QgLm1haW4tbmF2aWdhdGlvbl9fY29udGFjdC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgLm1haW4tbmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uX19jb250YWN0IC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3QtdGVhc2VyIHAge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLm1haW4tbmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uX19sZWZ0LWNvbHVtbiB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5tYWluLW5hdmlnYXRpb24gLm1haW4tbmF2aWdhdGlvbl9fbGVmdC1jb2x1bW4gLmJyYW5jaGVzLW1lbnVfX3RyaWdnZXIuY2hldnJvbjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgdG9wOiAxNnB4OyB9XG4gICAgLm1haW4tbmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uX19sZWZ0LWNvbHVtbiAuYnJhbmNoZXMtbWVudV9fdHJpZ2dlci5jaGV2cm9uLm9wZW46YWZ0ZXIge1xuICAgICAgdG9wOiAyMnB4OyB9XG5cbi5tYWluLW5hdmlnYXRpb24uaXMtYWN0aXZlIHtcbiAgcGFkZGluZzogMTUwcHggMTBweCA3MHB4O1xuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5tYWluLW5hdmlnYXRpb24uaXMtYWN0aXZlIC5sYW5ndWFnZS1zd2l0Y2gge1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5tYWluLW5hdmlnYXRpb246Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uanMtbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMgYSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcyAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcy1pdGVtIHtcbiAgICBwYWRkaW5nOiAyMHB4IDVweDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaXRlbTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuY2hlLWNvbG9yKTsgfVxuICAgIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLWl0ZW0gLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaWNvbiB7XG4gICAgICBtYXgtaGVpZ2h0OiA2MHB4OyB9XG4gICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaXRlbSAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcy10aXRsZSBoMyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlVidW50dVwiO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uY2hldnJvbjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDExcHg7XG4gIGxlZnQ6IDAuNzVlbTtcbiAgd2lkdGg6IDAuNDVlbTtcbiAgaGVpZ2h0OiAwLjQ1ZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4gIGJvcmRlci13aWR0aDogMC4wOGVtIDAuMDhlbSAwIDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGNvbnRlbnQ6ICcnO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB6LWluZGV4OiAtMTsgfVxuXG4uY2hldnJvbi5vcGVuOmFmdGVyIHtcbiAgdG9wOiAxNHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmpzLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgLm1haW4tbmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uX19sZWZ0LWNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWFpbi1uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb25fX2xlZnQtY29sdW1uIC5icmFuY2hlcy1tZW51X190cmlnZ2VyLmNoZXZyb246YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tYWluLW5hdmlnYXRpb25fX21pZGRsZS1jb2x1bW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1haW4tbmF2aWdhdGlvbl9fbWFpbi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3QgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cbiAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAyMHB4IDAgNTBweDsgfVxuICAgIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLWl0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcyAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcy1pdGVtIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLWljb24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMXB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaXRlbSAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcy10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcyAubWFpbi1uYXZpZ2F0aW9uX19icmFuY2hlcy1pdGVtIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLXRpdGxlIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG4uZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fc29jaWFsLWljb25zIHN2ZyB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fc29jaWFsLWljb25zIHN2Zzpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZiODExYzsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jayB1bCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLS1leHRyYS1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1jb250YWN0IC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLXNvY2lhbHMgLmZvb3Rlcl9fc29jaWFsLWl0ZW0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLXNpdGVtYXAge1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tbW9iaWxlLCAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQuYmxvY2stYXBwb2ludG1lbnQtLXRhYmxldCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IGgzLFxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudCBwIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgbWF4LXdpZHRoOiAxOHB4O1xuICAgICAgbWF4LWhlaWdodDogMzNweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sgLmZvb3Rlcl9fYmxvY2stdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sgLmZvb3Rlcl9fYmxvY2stY29udGVudCBhIHtcbiAgICAgIGNvbG9yOiAjZmI4MTFjO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sgLmZvb3Rlcl9fYmxvY2stY29udGVudCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMTAwcHg7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzNkM2QzZDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1wcml2YWN5IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTQyODZlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLXByaXZhY3kge1xuICAgICAgICB3aWR0aDogMzMlOyB9XG4gICAgICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stcHJpdmFjeTpudGgtY2hpbGQoMikge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLXByaXZhY3k6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1wcml2YWN5IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmZvb3RlciAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMjBweDtcbiAgICBsZWZ0OiA2MiU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IDEzMCU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIyNWRlZywgI2ZmOTI1NiAwJSwgI2ZmYTEwNyAxMDAlKTtcbiAgICB6LWluZGV4OiAtMTsgfVxuICAuZm9vdGVyIC5jaGV2cm9uOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjMwMHB4KSB7XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmFja2dyb3VuZCB7XG4gICAgbGVmdDogNjAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgaGVpZ2h0OiAxMzAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxODAwcHgpIHtcbiAgLmZvb3RlciAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcbiAgICBsZWZ0OiA2NSU7IH1cbiAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMjBweCAwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1MDBweCkge1xuICAuZm9vdGVyIC5mb290ZXJfX2JhY2tncm91bmQge1xuICAgIGxlZnQ6IDY3JTsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLWNvcHlyaWdodC13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmFja2dyb3VuZCB7XG4gICAgbGVmdDogNzAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgLmZvb3RlciAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcbiAgICBsZWZ0OiA2OSU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMzBweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1jb250YWN0IHtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgLmZvb3RlciAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcbiAgICB6LWluZGV4OiAwOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmFja2dyb3VuZC5zaG93LWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tdGFibGV0OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTIwcHg7XG4gICAgbGVmdDogMjBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTEwJTtcbiAgICBoZWlnaHQ6IDEzMCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAjZmY5MjU2IDAlLCAjZmZhMTA3IDEwMCUpO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQgLmZvb3Rlcl9fYmxvY2stcHJpdmFjeSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLWNvcHlyaWdodC13cmFwcGVyIC5hcHBvaW50bWVudC13cmFwcGVyLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stLWV4dHJhLXBhZGRpbmcge1xuICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LmJsb2NrLWFwcG9pbnRtZW50LS10YWJsZXQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNTBweDtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQgaDMsXG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IHAsXG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQsXG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IC5idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudCAuZm9vdGVyX19ibG9jay1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQgLmZvb3Rlcl9fYmxvY2stY29udGVudCBwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQgdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sgLmZvb3Rlcl9fYmxvY2stY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stY29udGFjdCAuZm9vdGVyX19ibG9jay1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stc2l0ZW1hcCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuZm9vdGVyIC5jaGV2cm9uOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWNvbnRhY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1zb2NpYWxzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stc2l0ZW1hcCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2sgLmZvb3Rlcl9fYmxvY2stY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQuYmxvY2stYXBwb2ludG1lbnQtLW1vYmlsZSwgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LmJsb2NrLWFwcG9pbnRtZW50LS10YWJsZXQge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LmJsb2NrLWFwcG9pbnRtZW50LS1tb2JpbGUgLmZvb3Rlcl9fYmFja2dyb3VuZCwgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LmJsb2NrLWFwcG9pbnRtZW50LS10YWJsZXQgLmZvb3Rlcl9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2suZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LmJsb2NrLWFwcG9pbnRtZW50LS10YWJsZXQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIgLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQtd3JhcHBlciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuZm9vdGVyIC5mb290ZXJfX2Jsb2NrLWNvcHlyaWdodC13cmFwcGVyIC5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LXdyYXBwZXIuYXBwb2ludG1lbnQtd3JhcHBlci0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDUwcHggNDVweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQgLmZvb3Rlcl9fYmxvY2stcHJpdmFjeSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgICAgLmZvb3RlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQgLmZvb3Rlcl9fYmxvY2stcHJpdmFjeTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5mb290ZXIgLmNoZXZyb246YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDc2OXB4KSB7XG4gIC5mb290ZXJfX2NlcnRpZmljYXRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb290ZXJfX2NlcnRpZmljYXRlX19tb2JpbGUge1xuICAgIG1heC1oZWlnaHQ6IDc1cHg7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzcwcHgpIHtcbiAgLmZvb3Rlcl9fY2VydGlmaWNhdGVfX21vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9vdGVyX19jZXJ0aWZpY2F0ZSB7XG4gICAgbWF4LXdpZHRoOiA3NXB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTZWN0aW9uXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uanMtcGFnZS1sb2FkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHotaW5kZXg6IDk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMDsgfVxuXG4uc2VjdGlvbl9faW50cm8td3JhcHBlciB7XG4gIG1heC13aWR0aDogNjEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG5cbi5zZWN0aW9uLS1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlY3Rpb24tLWFsaWduLWNlbnRlciAuc2VjdGlvbl9faW50cm8td3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zZWN0aW9uLnRleHQtaW1hZ2UsIC5zZWN0aW9uLnNlY3Rpb24tbmV3cywgLnNlY3Rpb24uc2VjdGlvbl9fZGVmYXVsdC10ZXh0LCAuc2VjdGlvbi5zZWN0aW9uLXRhYnMsIC5zZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLnNlY3Rpb24udGVhc2Vyc19fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1zZWN0b3JzLCAuc2VjdGlvbi5zZWN0aW9uLXNsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLnNlY3Rpb24udGVhc2Vyc19fd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9XG4gIC5zZWN0aW9uLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCB7XG4gICAgbWFyZ2luOiAyMDBweCAwIDIwMHB4OyB9XG4gIC5zZWN0aW9uLnNlY3Rpb24tbmV3cyB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1zbGlkZXIge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4OyB9XG5cbi5zZWN0aW9uOmZpcnN0LW9mLXR5cGU6bm90KC5zZWN0aW9uLXNsaWRlcikge1xuICBtYXJnaW4tdG9wOiAyMDBweCAhaW1wb3J0YW50OyB9XG5cbi5zZWN0aW9uOmxhc3Qtb2YtdHlwZS50ZXh0LWltYWdlOm5vdCguc2VjdGlvbi1hcnRpY2xlKSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNTBweCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5zZWN0aW9uLnNlY3Rpb24tc2VjdG9ycywgLnNlY3Rpb24uc2VjdGlvbi1zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbl9fZGVmYXVsdC10ZXh0IHtcbiAgICBtYXJnaW46IDEwMHB4IDAgMTAwcHg7IH1cbiAgLnNlY3Rpb24udGVhc2Vyc19fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMTUwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5zZWN0aW9uLnNlY3Rpb24tc2VjdG9ycyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2VjdGlvbi50ZXh0LWltYWdlLCAuc2VjdGlvbi50ZWFzZXJzX193cmFwcGVyLCAuc2VjdGlvbi5zZWN0aW9uLW5ld3MsIC5zZWN0aW9uLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCwgLnNlY3Rpb24uc2VjdGlvbi10YWJzLCAuc2VjdGlvbi5jb250YWN0LWZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbl9fZGVmYXVsdC10ZXh0IHtcbiAgICBwYWRkaW5nOiA1MHB4IDYwcHg7XG4gICAgbWFyZ2luOiAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZWN0aW9uOmZpcnN0LW9mLXR5cGU6bm90KC5zZWN0aW9uLXNsaWRlcikge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi0tc2V0LW1hcmdpbiB7XG4gICAgbWFyZ2luOiA1MHB4IDA7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbl9fZGVmYXVsdC10ZXh0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAuc2VjdGlvbi50ZWFzZXJzX193cmFwcGVyLCAuc2VjdGlvbi5zZWN0aW9uX19kZWZhdWx0LXRleHQge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIC5zZWN0aW9uX19pbnRyby13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweCAhaW1wb3J0YW50OyB9IH1cblxuLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIG1heC13aWR0aDogMTI1MHB4O1xuICBtYXJnaW46IGF1dG87IH1cbiAgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyLFxuICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDUwcHggMDsgfVxuICAgIC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciAudGV4dC1pbWFnZV9fdGV4dC1jb250ZW50IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciAuYnV0dG9uIHtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0gaW1nIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuXG4uc2VjdGlvbi50ZXh0LWltYWdlOm5vdCgudGV4dC1pbWFnZS0tZmlyc3Qtc2VjdGlvbikgLnNsaWRlc2hvdyB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogNTUwcHg7IH1cbiAgLnNlY3Rpb24udGV4dC1pbWFnZTpub3QoLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24pIC5zbGlkZXNob3cgLm93bC1zdGFnZSwgLnNlY3Rpb24udGV4dC1pbWFnZTpub3QoLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24pIC5zbGlkZXNob3cgLm93bC1pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnNlY3Rpb24udGV4dC1pbWFnZTpub3QoLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24pIC5zbGlkZXNob3cgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuc2VjdGlvbi50ZXh0LWltYWdlOm5vdCgudGV4dC1pbWFnZS0tZmlyc3Qtc2VjdGlvbikgLnNsaWRlc2hvdyAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0gaW1nIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5zZWN0aW9uLnRleHQtaW1hZ2U6bm90KC50ZXh0LWltYWdlLS1maXJzdC1zZWN0aW9uKS50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCAuc2xpZGVzaG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDsgfVxuXG4uc2VjdGlvbi50ZXh0LWltYWdlOm5vdCgudGV4dC1pbWFnZS0tZmlyc3Qtc2VjdGlvbikudGV4dC1pbWFnZS0tcG9zaXRpb24tbGVmdC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCAuc2xpZGVzaG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwOyB9XG5cbi5zZWN0aW9uLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tZmlyc3Qtc2VjdGlvbiBpbWcge1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgd2lkdGg6IGF1dG87XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLnRleHQtaW1hZ2UtLXBvc2l0aW9uLWxlZnQudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XG5cbi50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIG1heC13aWR0aDogNTAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4udGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogODBweDsgfVxuXG4uc2VjdGlvbi1hcnRpY2xlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA1MDBweDsgfVxuICAuc2VjdGlvbi1hcnRpY2xlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4ICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gIC5zZWN0aW9uLWFydGljbGUudGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuc2VjdGlvbi50ZXh0LWltYWdlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24uc2xpZGVyLXdyYXBwZXIgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC50ZXh0LWltYWdlX191c3AtbGlzdCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zZWN0aW9uLWFydGljbGUgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlIC50ZXh0LWltYWdlX193cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdXNwLWxpc3Qge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdXNwLWxpc3QgLnRleHQtaW1hZ2VfX3VzcC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAudGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogNTAwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC50ZXh0LWltYWdlIC50ZXh0LWltYWdlX193cmFwcGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC50ZXh0LWltYWdlIC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gICAgLnRleHQtaW1hZ2UgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0gaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBtYXgtaGVpZ2h0OiAzNTBweDsgfVxuICAudGV4dC1pbWFnZTpub3QoLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24pIC50ZXh0LWltYWdlX19zbGlkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXgtaGVpZ2h0OiAzNTBweDsgfVxuICAudGV4dC1pbWFnZSAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAudGV4dC1pbWFnZSAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50ZXh0LWltYWdlIC50ZXh0LWltYWdlX19zbGlkZXIge1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC50ZXh0LWltYWdlLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQudGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQgLnRleHQtaW1hZ2VfX3NsaWRlciAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0gaW1nIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnRleHQtaW1hZ2UudGV4dC1pbWFnZS50ZXh0LWltYWdlLS1hbGlnbi1yaWdodC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgLnRleHQtaW1hZ2UudGV4dC1pbWFnZS50ZXh0LWltYWdlLS1hbGlnbi1yaWdodC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX19zbGlkZXIgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIGltZyB7XG4gICAgbGVmdDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50ZXh0LWltYWdlLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQgLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQgaW1nIHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lcixcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIsXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLm93bC1uYXYge1xuICAgIHdpZHRoOiA5MCU7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1zbGlkZXIgLm93bC1uYXYsXG4gIC5zZWN0aW9uLnNlY3Rpb24tdGFicyAub3dsLW5hdiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC50ZXh0LWltYWdlX193cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLWxlZnQgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodCAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX19zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lcixcbiAgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRleHQtaW1hZ2UgLnRleHQtaW1hZ2VfX3dyYXBwZXIgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAudGV4dC1pbWFnZSAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC50ZXh0LWltYWdlIC50ZXh0LWltYWdlX191c3AtbGlzdCAudGV4dC1pbWFnZV9fdXNwLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgLnRleHQtaW1hZ2UgLnRleHQtaW1hZ2VfX3VzcC1saXN0IC50ZXh0LWltYWdlX191c3AtaXRlbSBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLWxlZnQgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IC50ZXh0LWltYWdlX193cmFwcGVyIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodCAudGV4dC1pbWFnZV9fd3JhcHBlciAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnMge1xuICBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnM6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICNlMWYyZjQ7XG4gICAgY29udGVudDogJyc7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgei1pbmRleDogLTE7IH1cblxuLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fY29udGVudC1jb250YWluZXIge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19jb250ZW50LWNvbnRhaW5lciAuc2VjdG9ycy1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfVxuXG4uc2VjdG9yc19fc2VjdG9ycy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiA3NSU7IH1cblxuLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDI1JTtcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmNoZS1jb2xvcik7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsubWFpbi1zZWN0b3Ige1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayAuc2VjdG9yc19fc2VjdG9yLWl0ZW0td3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayAuc2VjdG9yc19fc2VjdG9yLWl0ZW0td3JhcHBlciBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uc2VjdGlvbi1zZWN0b3JzLS1zaG93LXNlY3RvcnMgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbms6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5zZWN0aW9uLXNlY3RvcnMtLXNob3ctc2VjdG9ycyAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMzBweCAwIDQ1cHg7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xuICAgIHdpZHRoOiAyMiU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnMge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLnNlY3Rpb24uc2VjdGlvbi1zZWN0b3JzIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gIC5zZWN0aW9uLnNlY3Rpb24tc2VjdG9ycyAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnM6YmVmb3JlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cbiAgLnNlY3Rpb24tc2VjdG9ycyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5zZWN0aW9uLXNlY3RvcnMgLnNlY3RvcnNfX3NlY3RvcnMtY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuc2VjdGlvbi1zZWN0b3JzIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMzAlO1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gICAgICAuc2VjdGlvbi1zZWN0b3JzIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIC5zZWN0b3JzLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAuc2VjdGlvbi1zZWN0b3JzIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xuICAgICAgd2lkdGg6IDMwJTsgfVxuICAgICAgLnNlY3Rpb24tc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rLm1haW4tc2VjdG9yOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gIC5zZWN0aW9uLXNlY3RvcnMgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9ycy1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgLnNlY3Rpb24tc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMCU7IH1cbiAgLnNlY3Rpb24tc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC5zZWN0aW9uLXNlY3RvcnMgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluay5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuc2VjdGlvbi1zZWN0b3JzIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLXdyYXBwZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLnNlY3Rpb24tc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rIC5zZWN0b3JzX19zZWN0b3ItaXRlbS13cmFwcGVyIHN2ZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5zZWN0aW9uLXNlY3RvcnMtLXNob3ctc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuc2VjdGlvbi1zZWN0b3JzLS1zaG93LXNlY3RvcnMgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluay5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNob3ctc2VjdG9ycy0tc2hvdy1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1zZWN0b3JzLS1oaWRlLW1vYmlsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZWN0aW9uLnNlY3Rpb24tc2VjdG9ycyB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnM6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsgfVxuICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fY29udGVudC1jb250YWluZXIsXG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9ycy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH1cbiAgICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3JzLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluay5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2hvdy1zZWN0b3JzLS1zaG93LW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDE3MHB4OyB9XG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciAuc2hvdy1zZWN0b3JzLS1oaWRlLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNlY3Rpb24tc2VjdG9ycyAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIC5zZWN0b3JzX19zZWN0b3JzLWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDAgMzBweDsgfVxuICAuc2VjdGlvbi1zZWN0b3JzIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH0gfVxuXG4uc2VjdGlvbi10YWJzX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgcGFkZGluZzogMjBweCAwOyB9XG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFicy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMjUlO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmYjgxYzsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFicy1jb250YWluZXIgLnRhYnMtbGlzdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC50YWJzLWxpc3QtaXRlbSxcbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAubW9iaWxlLWFjY29yZGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZzogMTBweCAxN3B4O1xuICAgIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC50YWJzLWxpc3QtaXRlbTpiZWZvcmUsXG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAubW9iaWxlLWFjY29yZGlvbjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTNweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAyLjVweDtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAudGFicy1saXN0LWl0ZW06aG92ZXIsXG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAubW9iaWxlLWFjY29yZGlvbjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnRhYnMtbGlzdC1pdGVtOmhvdmVyOmJlZm9yZSxcbiAgICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLm1vYmlsZS1hY2NvcmRpb246aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZiODFjOyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAudGFicy1saXN0LWl0ZW0uYWN0aXZlLFxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLm1vYmlsZS1hY2NvcmRpb24uYWN0aXZlIHtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMTg0LCAyOCwgMC4xKTsgfVxuICAgICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAudGFicy1saXN0LWl0ZW0uYWN0aXZlOmJlZm9yZSxcbiAgICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLm1vYmlsZS1hY2NvcmRpb24uYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgI2ZmYjgxYzsgfVxuICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5tb2JpbGUtYWNjb3JkaW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmIEpQXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLm1vYmlsZS1hY2NvcmRpb24uYWN0aXZlIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAxODQsIDI4LCAwLjEpOyB9XG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFiLWltYWdlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFiLWltYWdlcyAuc2VjdGlvbi10YWJzX19zaW5nbGUtaW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA0OCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQgLnRhYi1zaW5nbGUtY29udGVudCB7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX190YWItY29udGVudCAudGFiLXNpbmdsZV9fbGlzdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0IC50YWItc2luZ2xlX19saXN0LXRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0IC50YWItc2luZ2xlX19saXN0LWJ1bGxldHMge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQgLnRhYi1zaW5nbGVfX2xpc3QgLnRhYi1zaW5nbGVfX2xpc3Qtc2luZ2xlLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0IC50YWItc2luZ2xlX19saXN0LXNpbmdsZS1idWxsZXQgLnRhYi1zaW5nbGVfX2xpc3QtaWNvbiB7XG4gICAgICAgIG1heC13aWR0aDogMTVweDtcbiAgICAgICAgbWF4LWhlaWdodDogMzBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX190YWItY29udGVudCAudGFiLXNpbmdsZV9fbGlzdC50YWItc2luZ2xlX19saXN0LXByb3MgLnRhYi1zaW5nbGVfX2xpc3Qtc2luZ2xlLWJ1bGxldCB7XG4gICAgICBjb2xvcjogIzQ5OTgzNTsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQgLnRhYi1zaW5nbGVfX2xpc3QudGFiLXNpbmdsZV9fbGlzdC1jb25zIC50YWItc2luZ2xlX19saXN0LXNpbmdsZS1idWxsZXQge1xuICAgICAgY29sb3I6ICNkYjM4NTU7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgcGFkZGluZzogNTBweCAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNiwgNjksIDczLCAwLjE0KTsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fY29udGVudC1jb250YWluZXIgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciAuc2VjdGlvbi10YWJzX190YWItY29udGVudC5hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciAuc2VjdGlvbi10YWJzX190YWItY29udGVudCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnNlY3Rpb24tdGFic19fc2luZ2xlLWltYWdlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYnMtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMzAlOyB9XG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fY29udGVudC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnNlY3Rpb24tdGFic19fdGFicy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciAuc2VjdGlvbi10YWJzX190YWItY29udGVudC5hY3RpdmUge1xuICAgICAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAudGFiLXdyYXBwZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZiODFjOyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAudGFiLXdyYXBwZXI6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDsgfVxuICAgIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIgLnRhYi13cmFwcGVyOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmI4MWM7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAubW9iaWxlLWFjY29yZGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5tb2JpbGUtYWNjb3JkaW9uOmhvdmVyOmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5tb2JpbGUtYWNjb3JkaW9uLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAxODQsIDI4LCAwLjEpOyB9XG4gICAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5tb2JpbGUtYWNjb3JkaW9uLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNmZmI4MWM7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX190YWItY29udGVudCB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgzNiwgNjksIDczLCAwLjE0KTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciAuc2VjdGlvbi10YWJzX190YWItY29udGVudC5hY3RpdmUge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDIwcHggMTBweDsgfVxuICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1pbWFnZXMge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4OyB9XG4gICAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX190YWItaW1hZ2VzIC5zZWN0aW9uLXRhYnNfX3NpbmdsZS1pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciAuc2VjdGlvbi10YWJzX190YWItY29udGVudCAudGFiLXNpbmdsZV9fbGlzdHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0cyAudGFiLXNpbmdsZV9fbGlzdC1wcm9zIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAuc2VjdGlvbi10YWJzX193cmFwcGVyIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IC50YWItc2luZ2xlX19saXN0cyAudGFiLXNpbmdsZV9fbGlzdCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLW9yYW5nZSAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8sXG4uY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1vcmFuZ2UgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAjZmY5MjU2IDAlLCAjZmZhMTA3IDEwMCUpO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1ncmVlbiAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8sXG4uY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1ncmVlbiAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNlMWYyZjQ7XG4gIGNvbG9yOiAjMDAwOyB9XG4gIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLXBob25lLFxuICAuY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1ncmVlbiAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5oZWFkaW5nLmhlYWRpbmctLXdoaXRlLFxuICAuY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1ncmVlbiAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gZm9ybSBpbnB1dCxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9faW5mby1waG9uZSxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgLmhlYWRpbmcuaGVhZGluZy0td2hpdGUsXG4gIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtZm9ybS13cmFwcGVyIGZvcm0gaW5wdXQge1xuICAgIGNvbG9yOiAjM2QzZDNkOyB9XG4gIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyBmb3JtIGlucHV0LFxuICAuY29udGFjdC1mb3JtLmNvbnRhY3QtZm9ybS0tYmFja2dyb3VuZC1ncmVlbiAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gZm9ybSB0ZXh0YXJlYSxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgZm9ybSBpbnB1dCxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgZm9ybSB0ZXh0YXJlYSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2QzZDNkOyB9XG4gIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQtd3JhcHBlciAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQgcCxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50LXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50IHAge1xuICAgIGNvbG9yOiAjM2QzZDNkOyB9XG4gIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyBpbnB1dFt0eXBlPSdzdWJtaXQnXSxcbiAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMjVkZWcsICNmZjkyNTYgMCUsICNmZmExMDcgMTAwJSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgLmNvbnRhY3QtZm9ybS5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIGlucHV0W3R5cGU9J3N1Ym1pdCddOmhvdmVyLFxuICAgIC5jb250YWN0LWZvcm0uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLWdyZWVuIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtZm9ybS13cmFwcGVyIGlucHV0W3R5cGU9J3N1Ym1pdCddOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggMCByZ2JhKDI1NSwgMTUzLCA1MSwgMC41NCk7IH1cblxuLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0tY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogNjVweDsgfVxuXG4uY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQtd3JhcHBlciAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQgcCB7XG4gIGNvbG9yOiAjM2QzZDNkOyB9XG5cbi5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8ge1xuICAgIHdpZHRoOiAzNCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8taW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50LXdyYXBwZXIgLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQtd3JhcHBlciAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQgcCB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8tY29udGVudC13cmFwcGVyIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDIxcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUsXG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmIEpQXCI7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjlweDsgfVxuICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtZm9ybS13cmFwcGVyIHtcbiAgICB3aWR0aDogNjQlO1xuICAgIHBhZGRpbmc6IDUwcHggMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciAuaGVhZGluZyB7XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtZm9ybS13cmFwcGVyIC5oZWFkaW5nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XG4gICAgcGFkZGluZzogNTBweCAzMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIsXG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8sXG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIGltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH1cbiAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50LXdyYXBwZXIgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLXBob25lLFxuICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgICAgbWFyZ2luOiAwIDElOyB9XG4gICAgICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUgYSxcbiAgICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiA3cHg7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzOHB4OyB9XG4gICAgICAgIC5jb250YWN0LWZvcm0gLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUgc3BhbixcbiAgICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuY29udGFjdC1mb3JtIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmNvbnRhY3QtZm9ybSAuY29udGFjdC1mb3JtX19jb250YWN0LWNvbnRhaW5lciAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8gLmNvbnRhY3QtZm9ybV9faW5mby1pbWFnZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5zZWN0aW9uLnRlYXNlcnNfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgjZmZmLCAjZmZmIDY5LjklLCAjZTFmMmY0IDcwLjElLCAjZTFmMmY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNjkuOSUsICNlMWYyZjQgNzAuMSUsICNlMWYyZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgjZmZmLCAjZmZmIDY5LjklLCAjZTFmMmY0IDcwLjElLCAjZTFmMmY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNjkuOSUsICNlMWYyZjQgNzAuMSUsICNlMWYyZjQgMTAwJSk7IH1cbiAgLnNlY3Rpb24udGVhc2Vyc19fd3JhcHBlciAudGVhc2Vyc19fc2xpZGVyLWNvbnRhaW5lciAudGVhc2Vyc19fc2xpZGVyLWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1heC13aWR0aDogMjk1cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAuc2VjdGlvbi50ZWFzZXJzX193cmFwcGVyIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbS5pdGVtLS1vZmZzZXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zZWN0aW9uLnRlYXNlcnNfX3dyYXBwZXIgLnRlYXNlcnNfX3NsaWRlci1jb250YWluZXIgLnRlYXNlcnNfX3NsaWRlci1pdGVtIC50ZWFzZXJzX19zbGlkZXItaXRlbS13cmFwIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4wNik7IH1cbiAgICAuc2VjdGlvbi50ZWFzZXJzX193cmFwcGVyIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbSBzdmcge1xuICAgICAgbWF4LWhlaWdodDogNTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgY29sb3I6ICMwMDhjOWE7IH1cbiAgICAuc2VjdGlvbi50ZWFzZXJzX193cmFwcGVyIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbSAudGVhc2Vyc19fc2xpZGVyLWl0ZW0taGVhZGluZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRlYXNlcnNfX3NsaWRlci1jb250YWluZXIsXG4gIC50ZWFzZXJzX19zbGlkZXItaXRlbSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH0gfVxuXG4uc2VjdGlvbi5zZWN0aW9uLXRlYW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNDkuOSUsICNlMWYyZjQgNTEuMSUsICNlMWYyZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiA0OS45JSwgI2UxZjJmNCA1MS4xJSwgI2UxZjJmNCAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1vei1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNDkuOSUsICNlMWYyZjQgNTEuMSUsICNlMWYyZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiA0OS45JSwgI2UxZjJmNCA1MS4xJSwgI2UxZjJmNCAxMDAlKTsgfVxuXG4udGVhc2Vyc19fc2xpZGVyLWl0ZW0taW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgbWF4LWhlaWdodDogMTAwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4udGVhc2Vyc19fc2xpZGVyLWl0ZW0tZnVuY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi50ZWFzZXJzX19zbGlkZXItaXRlbS1jb250YWN0IHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uc2VjdGlvbi10ZWFtIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbSB7XG4gIG1heC13aWR0aDogMjk1cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMjBweCAwOyB9XG4gIC5zZWN0aW9uLXRlYW0gLnRlYXNlcnNfX3NsaWRlci1jb250YWluZXIgLnRlYXNlcnNfX3NsaWRlci1pdGVtIC50ZWFzZXJzX19zbGlkZXItaXRlbS13cmFwIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTsgfVxuXG4udGVhc2Vyc19fc2xpZGVyLWljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjBweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTsgfVxuICAudGVhc2Vyc19fc2xpZGVyLWljb24gc3ZnIHtcbiAgICB3aWR0aDogMzBweDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAuc2VjdGlvbi10ZWFtIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAuc2VjdGlvbi10ZWFtIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbSB7XG4gICAgICBtYXgtd2lkdGg6IDI5NXB4O1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgICAuc2VjdGlvbi10ZWFtIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIC50ZWFzZXJzX19zbGlkZXItaXRlbS5pdGVtLS1vZmZzZXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuc2VjdGlvbi5zZWN0aW9uLXRlYW0gLnRlYXNlcnNfX3NsaWRlci1jb250YWluZXIgLnRlYXNlcnNfX3NsaWRlci1pdGVtOmxhc3QtY2hpbGQgLnRlYXNlcnNfX3NsaWRlci1pdGVtLXdyYXAge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VjdGlvbi5zZWN0aW9uLXRlYW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9IH1cblxuLnNlY3Rpb24uc2VjdGlvbi1uZXdzIHtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNTkuOSUsICNlMWYyZjQgNjAuMSUsICNlMWYyZjQgMTAwJSwgI2UxZjJmNCk7XG4gIGJhY2tncm91bmQ6IC1vLXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiA1OS45JSwgI2UxZjJmNCA2MC4xJSwgI2UxZjJmNCAxMDAlLCAjZTFmMmY0KTtcbiAgYmFja2dyb3VuZDogLW1vei1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgNTkuOSUsICNlMWYyZjQgNjAuMSUsICNlMWYyZjQgMTAwJSwgI2UxZjJmNCk7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiA1OS45JSwgI2UxZjJmNCA2MC4xJSwgI2UxZjJmNCAxMDAlLCAjZTFmMmY0KTsgfVxuXG4uc2VjdGlvbi1uZXdzX19oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDUwcHggMDsgfVxuICAuc2VjdGlvbi1uZXdzX19oZWFkaW5nIC5zZWN0aW9uLW5ld3NfX3NlZS1tb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgLnNlY3Rpb24tbmV3c19faGVhZGluZyAuc2VjdGlvbi1uZXdzX19zZWUtbW9yZSAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXI6aG92ZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXgtd2lkdGg6IDEyNTBweDtcbiAgbWFyZ2luOiBhdXRvOyB9XG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IDQwMHB4OyB9XG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lci5uZXdzLWNvbHVtbi0tZmxleC1yZXZlcnNlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG4uc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuXG4uc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiAwLjJzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCA1cHggcmdiYSgzNiwgNjksIDczLCAwLjE0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW06aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDRweCByZ2JhKDM2LCA2OSwgNzMsIDAuNCk7IH1cbiAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0gLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWltYWdlIGltZyB7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSAuc2VjdGlvbi1uZXdzX19uZXdzLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDsgfVxuXG4uc2VjdGlvbi1uZXdzX19pbWFnZS1saW5rLWNvbnRhaW5lci5uZXdzLWl0ZW0tLXNtYWxsIC5zZWN0aW9uLW5ld3NfX25ld3MtY29udGVudCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tdGVhc2VyLFxuLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIubmV3cy1pdGVtLS1zbWFsbCAuc2VjdGlvbi1uZXdzX19uZXdzLWNvbnRlbnQgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEycHg7IH1cblxuLnNlZS1tb3JlLS1zaG93LW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW46IDgwcHggMDtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZiBKUFwiO1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IDAuMnMgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7IH1cbiAgICAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzOm5vdCguY3VycmVudCk6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDhjOWE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMuY3VycmVudCB7XG4gICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDU3NjA7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkgYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5zZWN0aW9uLnNlY3Rpb24tbmV3cy5uZXdzLWxpc3QgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7IH1cbiAgICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1saXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZC5uZXdzLWNvbHVtbi0tZmxleC1yZXZlcnNlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1saXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xuICAuc2VjdGlvbi5zZWN0aW9uLW5ld3Mge1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgjZmZmLCAjZmZmIDMzLjklLCAjZTFmMmY0IDM0LjElLCAjZTFmMmY0IDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1vLXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiAzMy45JSwgI2UxZjJmNCAzNC4xJSwgI2UxZjJmNCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZiAzMy45JSwgI2UxZjJmNCAzNC4xJSwgI2UxZjJmNCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCNmZmYsICNmZmYgMzMuOSUsICNlMWYyZjQgMzQuMSUsICNlMWYyZjQgMTAwJSk7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1uZXdzLm5ld3MtbGF0ZXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1sYXRlc3QgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHdpZHRoOiA0OCU7IH1cbiAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpOyB9XG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNDglO1xuICAgICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogY29udGVudHM7IH1cbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0taW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zZWN0aW9uLW5ld3MubmV3cy1saXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTsgfVxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIC5zZWN0aW9uLW5ld3NfX25ld3MtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH1cbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIC5zZWN0aW9uLW5ld3NfX25ld3MtY29udGVudCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSAuc2VjdGlvbi1uZXdzX19uZXdzLWNvbnRlbnQgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLXRlYXNlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lciAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0gLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyLFxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIsXG4gICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyOmxhc3QtY2hpbGQgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSxcbiAgICAgICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIC5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyOmxhc3QtY2hpbGQgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS5uZXdzLWl0ZW0tLXNtYWxsIC5zZWN0aW9uLW5ld3NfX25ld3MtY29udGVudCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tdGVhc2VyLFxuICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ubmV3cy1pdGVtLS1zbWFsbCAuc2VjdGlvbi1uZXdzX19uZXdzLWNvbnRlbnQgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0taW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7IH1cbiAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gIC5zZWN0aW9uLnNlY3Rpb24tbmV3cy5uZXdzLWxhdGVzdCAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyOmxhc3QtY2hpbGQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1sYXRlc3QgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIC5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1uZXdzLm5ld3MtbGF0ZXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLFxuICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyOmxhc3QtY2hpbGQgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5zZWN0aW9uLW5ld3MubmV3cy1saXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnNlY3Rpb24uc2VjdGlvbi1uZXdzLm5ld3MtbGF0ZXN0IC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gIC5zZWN0aW9uLW5ld3NfX2hlYWRpbmcgLnNlY3Rpb24tbmV3c19fc2VlLW1vcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlZS1tb3JlLS1zaG93LW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VlLW1vcmUtLXNob3ctbW9iaWxlIC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpOyB9XG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG4uc2VjdGlvbi1hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zZWN0aW9uLWFydGljbGUgaDE6YWZ0ZXIsXG4gIC5zZWN0aW9uLWFydGljbGUgaDI6YWZ0ZXIsXG4gIC5zZWN0aW9uLWFydGljbGUgaDM6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDA4YzlhO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5zZWN0aW9uLWFydGljbGUgaDI6YWZ0ZXIsXG4gIC5zZWN0aW9uLWFydGljbGUgaDM6YWZ0ZXIge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLnNlY3Rpb24tYXJ0aWNsZSBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgLnNlY3Rpb24tYXJ0aWNsZSAudGV4dC1pbWFnZV9fd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXgtd2lkdGg6IDEyNTBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5zZWN0aW9uLWFydGljbGUgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItY29udGFpbmVyIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRlbnQsXG4gICAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250YWluZXIgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItaW1hZ2VzIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19tYWluLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDI1MHB4IDAgMTAwcHg7IH1cbiAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLWltYWdlcy1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXdyYXBwZXIgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS1pbWFnZXMtY29udGFpbmVyIGltZyB7XG4gICAgbWF4LXdpZHRoOiA3NTBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgLnNlY3Rpb246Zmlyc3Qtb2YtdHlwZTpub3QoLnNlY3Rpb24tc2xpZGVyKSB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19tYWluLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoMixcbiAgaDMsXG4gIHAge1xuICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC5zZWN0aW9uLWFydGljbGUgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250YWluZXIgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItY29udGVudCxcbiAgICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1pbWFnZXMge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1pbWFnZXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLWltYWdlcy1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnNlY3Rpb24tYXJ0aWNsZSAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLWltYWdlcy1jb250YWluZXIgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgem9vbTogMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zZWN0aW9uLWFydGljbGUgLnNlY3Rpb24tYXJ0aWNsZV9fbWFpbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuc2VjdGlvbi1hcnRpY2xlIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1pbWFnZXMgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS1pbWFnZXMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5tYy1maWVsZC1ncm91cCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLm1jLWZpZWxkLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAubWMtZmllbGQtZ3JvdXAgaW5wdXRbdHlwZT10ZXh0XSwgLm1jLWZpZWxkLWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdLCAubWMtZmllbGQtZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzZDNkM2Q7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAubWMtZmllbGQtZ3JvdXAgc3Ryb25nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWMtZmllbGQtZ3JvdXAgbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1jLWZpZWxkLWdyb3VwIGxpIGxhYmVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgLm1jLWZpZWxkLWdyb3VwLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tYy1maWVsZC1ncm91cC5pbnB1dC1ncm91cCBwIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1jLWZpZWxkLWdyb3VwLmlucHV0LWdyb3VwIHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLm1jZV9pbmxpbmVfZXJyb3Ige1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB1bnNldCAhaW1wb3J0YW50OyB9XG5cbiNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIGlucHV0W3R5cGU9dGV4dF0sICNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdLCAjbWNfZW1iZWRfc2lnbnVwIC5tYy1maWVsZC1ncm91cCBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjM2QzZDNkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogIzNkM2QzZDtcbiAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDsgfVxuXG4jbWNfZW1iZWRfc2lnbnVwIHtcbiAgbWFyZ2luLXRvcDogNzVweDsgfVxuXG4jbWNfZW1iZWRfc2lnbnVwX3Njcm9sbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNtY19lbWJlZF9zaWdudXBfc2Nyb2xsIC5pbmRpY2F0ZXMtcmVxdWlyZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDsgfVxuICAjbWNfZW1iZWRfc2lnbnVwX3Njcm9sbCAuc2l6ZTFvZjIge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbiNtYy1lbWJlZGRlZC1zdWJzY3JpYmUge1xuICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDM4cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZjlmOWY5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMjVkZWcsICNmZjkyNTYgMCUsICNmZmExMDcgMTAwJSkgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAxMDBweCAhaW1wb3J0YW50OyB9XG4gICNtYy1lbWJlZGRlZC1zdWJzY3JpYmU6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgyNTUsIDE1MywgNTEsIDAuNTQpOyB9XG5cbiNtY19lbWJlZF9zaWdudXAgI21jLWVtYmVkZGVkLXN1YnNjcmliZS1mb3JtIGlucHV0Lm1jZV9pbmxpbmVfZXJyb3Ige1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkYjM4NTUgIWltcG9ydGFudDsgfVxuXG4ubWNlX2lubGluZV9lcnJvciB7XG4gIGNvbG9yOiAjZGIzODU1ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbG9yXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogQ29sb3IgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgIGJsYWNrLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1ibGFjay0xMDAge1xuICBjb2xvcjogYmxhY2s7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCBibGFjay0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1ibGFjay0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCB3aGl0ZS0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3Itd2hpdGUtMTAwIHtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgd2hpdGUtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3Itd2hpdGUtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgIzAwOGM5OS0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYmx1ZS0xMDAge1xuICBjb2xvcjogIzAwOGM5OTsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgICMwMDhjOTktMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItYmx1ZS0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4Yzk5OyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2Y3ZDUxNSwgI2Y4OGQxMiktMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLW9yYW5nZS1ncmFkaWVudC0xMDAge1xuICBjb2xvcjogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZjdkNTE1LCAjZjg4ZDEyKTsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2Y3ZDUxNSwgI2Y4OGQxMiktMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3Itb3JhbmdlLWdyYWRpZW50LTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2Y3ZDUxNSwgI2Y4OGQxMik7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgI2UxZjJmNC0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItbGlnaHRibHVlLTEwMCB7XG4gIGNvbG9yOiAjZTFmMmY0OyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgI2UxZjJmNC0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1saWdodGJsdWUtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZjJmNDsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjMjM2MTkwLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1icmFuY2hlLWZpc2gtMTAwIHtcbiAgY29sb3I6ICMyMzYxOTA7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjMjM2MTkwLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJyYW5jaGUtZmlzaC0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjM2MTkwOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgICNjODFlM2QtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLWJyYW5jaGUtbWVhdC0xMDAge1xuICBjb2xvcjogI2M4MWUzZDsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgICNjODFlM2QtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItYnJhbmNoZS1tZWF0LTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjODFlM2Q7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgIzU5OTczNS0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYnJhbmNoZS1mcnVpdC0xMDAge1xuICBjb2xvcjogIzU5OTczNTsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgICM1OTk3MzUtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItYnJhbmNoZS1mcnVpdC0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTk5NzM1OyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgICNmZmI2MWEtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLWJyYW5jaGUtY2hlZXNlLTEwMCB7XG4gIGNvbG9yOiAjZmZiNjFhOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgI2ZmYjYxYS0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1icmFuY2hlLWNoZWVzZS0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiNjFhOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgICM3YzAwOGEtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLWJyYW5jaGUtc3BvcnQtMTAwIHtcbiAgY29sb3I6ICM3YzAwOGE7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjN2MwMDhhLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJyYW5jaGUtc3BvcnQtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdjMDA4YTsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjYmE2MTAzLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1icmFuY2hlLWJyZWFkLTEwMCB7XG4gIGNvbG9yOiAjYmE2MTAzOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgI2JhNjEwMy0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1icmFuY2hlLWJyZWFkLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYTYxMDM7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgIzcwM2MwMC0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYnJhbmNoZS1jb2ZmZWUtMTAwIHtcbiAgY29sb3I6ICM3MDNjMDA7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjNzAzYzAwLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJyYW5jaGUtY29mZmVlLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MDNjMDA7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgIzliMzYzNi0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYnJhbmNoZS1wZXRzLTEwMCB7XG4gIGNvbG9yOiAjOWIzNjM2OyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgIzliMzYzNi0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1icmFuY2hlLXBldHMtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzliMzYzNjsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjZjUwMDU2LTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1icmFuY2hlLXNuYWNrcy0xMDAge1xuICBjb2xvcjogI2Y1MDA1NjsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgICNmNTAwNTYtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItYnJhbmNoZS1zbmFja3MtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1MDA1NjsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjM2IzYjNiLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1icmFuY2hlLW5vbmZvb2QtMTAwIHtcbiAgY29sb3I6ICMzYjNiM2I7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjM2IzYjNiLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJyYW5jaGUtbm9uZm9vZC0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2IzYjNiOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE9iamVjdCBGaXRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBPYmplY3QgZml0LlxyXG4gKlxyXG4gKiAxLiBGb250IGZhbWlseSBwb2x5ZmlsbCB3aXRoIChodHRwczovL2dpdGh1Yi5jb20vYmZyZWQtaXQvb2JqZWN0LWZpdC1pbWFnZXMpLlxyXG4gKi9cbi8qKlxyXG4gICAqIGBvYmplY3QtZml0YCBmaWxsIHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXG4uZmlsbCB7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGZpbGw7XCI7XG4gIC8qIDEgKi9cbiAgb2JqZWN0LWZpdDogZmlsbDsgfVxuXG4vKipcclxuICAgKiBgb2JqZWN0LWZpdGAgY29udGFpbiB1dGlsaXR5IGNsYXNzLlxyXG4gICAqL1xuLmNvbnRhaW4ge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb250YWluO1wiO1xuICAvKiAxICovXG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLyoqXHJcbiAgICogYG9iamVjdC1maXRgIGNvdmVyIHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXG4uY292ZXIge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlcjtcIjtcbiAgLyogMSAqL1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4vKipcclxuICAgKiBgb2JqZWN0LWZpdGAgbm9uZSB1dGlsaXR5IGNsYXNzLlxyXG4gICAqL1xuLm5vbmUge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBub25lO1wiO1xuICAvKiAxICovXG4gIG9iamVjdC1maXQ6IG5vbmU7IH1cblxuLyoqXHJcbiAgICogYG9iamVjdC1maXRgIHNjYWxlLWRvd24gdXRpbGl0eSBjbGFzcy5cclxuICAgKi9cbi5zY2FsZS1kb3duIHtcbiAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogc2NhbGUtZG93bjtcIjtcbiAgLyogMSAqL1xuICBvYmplY3QtZml0OiBzY2FsZS1kb3duOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFBvc2l0aW9uXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUG9zaXRpb24gdXRpbGl0eSBjbGFzcy5cclxuICovXG4uc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgfVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBUZXh0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogRm9udCBmYW1pbHkgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJVYnVudHVcIjsgfVxuXG4udGV4dC14cy1oZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZiBKUFwiOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnRleHQtc20tZGVmYXVsdCB7XG4gICAgZm9udC1mYW1pbHk6IFwiVWJ1bnR1XCI7IH1cbiAgLnRleHQtc20taGVhZGluZyB7XG4gICAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZiBKUFwiOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1kZWZhdWx0IHtcbiAgICBmb250LWZhbWlseTogXCJVYnVudHVcIjsgfVxuICAudGV4dC1tZC1oZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmIEpQXCI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAudGV4dC1sZy1kZWZhdWx0IHtcbiAgICBmb250LWZhbWlseTogXCJVYnVudHVcIjsgfVxuICAudGV4dC1sZy1oZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmIEpQXCI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dC14bC1kZWZhdWx0IHtcbiAgICBmb250LWZhbWlseTogXCJVYnVudHVcIjsgfVxuICAudGV4dC14bC1oZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmIEpQXCI7IH0gfVxuXG4vKipcclxuICogVGV4dCBzaXplIHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXG4udGV4dC14cy1oMSB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBsaW5lLWhlaWdodDogMS40MjVlbTsgfVxuXG4udGV4dC14cy1oMiB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMS40NjY2N2VtOyB9XG5cbi50ZXh0LXhzLWgzIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07IH1cblxuLnRleHQteHMtcCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG5cbi50ZXh0LXhzLXEge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVlbTsgfVxuXG4udGV4dC14cy1tZW51LWxpbmsge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDY2NjdlbTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC50ZXh0LXNtLWgxIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyNWVtOyB9XG4gIC50ZXh0LXNtLWgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ2NjY3ZW07IH1cbiAgLnRleHQtc20taDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDVlbTsgfVxuICAudGV4dC1zbS1wIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1ZW07IH1cbiAgLnRleHQtc20tcSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG4gIC50ZXh0LXNtLW1lbnUtbGluayB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NjY2N2VtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1oMSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40MjVlbTsgfVxuICAudGV4dC1tZC1oMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NjY2N2VtOyB9XG4gIC50ZXh0LW1kLWgzIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07IH1cbiAgLnRleHQtbWQtcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG4gIC50ZXh0LW1kLXEge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVlbTsgfVxuICAudGV4dC1tZC1tZW51LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDY2NjdlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC50ZXh0LWxnLWgxIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyNWVtOyB9XG4gIC50ZXh0LWxnLWgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ2NjY3ZW07IH1cbiAgLnRleHQtbGctaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDVlbTsgfVxuICAudGV4dC1sZy1wIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1ZW07IH1cbiAgLnRleHQtbGctcSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG4gIC50ZXh0LWxnLW1lbnUtbGluayB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NjY2N2VtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtaDEge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI1ZW07IH1cbiAgLnRleHQteGwtaDIge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDY2NjdlbTsgfVxuICAudGV4dC14bC1oMyB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NWVtOyB9XG4gIC50ZXh0LXhsLXAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVlbTsgfVxuICAudGV4dC14bC1xIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1ZW07IH1cbiAgLnRleHQteGwtbWVudS1saW5rIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ2NjY3ZW07IH0gfVxuXG4vKipcclxuICogVGV4dCBhbGlnbm1lbnQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXhzLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQteHMtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnRleHQtc20tbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudGV4dC1zbS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRleHQtc20tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZXh0LW1kLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnRleHQtbWQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC50ZXh0LW1kLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnRleHQtbGctbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudGV4dC1sZy1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRleHQtbGctY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dC14bC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC50ZXh0LXhsLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAudGV4dC14bC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi8qKlxyXG4gKiBGb250IHdlaWdodCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqXHJcbiAqIDEuIE11bHRpcGx5IGxvb3BlZCBpbnRlZ2VyIGJ5IDEwMCBmb3IgY29ycmVjdCBmb250IHdlaWdodCB2YWx1ZS5cclxuICovXG4udGV4dC14cy0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LXhzLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQteHMtMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC14cy00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LXhzLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQteHMtNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC14cy03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXhzLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQteHMtOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC50ZXh0LXNtLTEwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuICAudGV4dC1zbS0yMDAge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cbiAgLnRleHQtc20tMzAwIHtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC50ZXh0LXNtLTQwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAudGV4dC1zbS01MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnRleHQtc20tNjAwIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC50ZXh0LXNtLTcwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAudGV4dC1zbS04MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgLnRleHQtc20tOTAwIHtcbiAgICBmb250LXdlaWdodDogOTAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC0xMDAge1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7IH1cbiAgLnRleHQtbWQtMjAwIHtcbiAgICBmb250LXdlaWdodDogMjAwOyB9XG4gIC50ZXh0LW1kLTMwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAudGV4dC1tZC00MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnRleHQtbWQtNTAwIHtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC50ZXh0LW1kLTYwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAudGV4dC1tZC03MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnRleHQtbWQtODAwIHtcbiAgICBmb250LXdlaWdodDogODAwOyB9XG4gIC50ZXh0LW1kLTkwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC50ZXh0LWxnLTEwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuICAudGV4dC1sZy0yMDAge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cbiAgLnRleHQtbGctMzAwIHtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC50ZXh0LWxnLTQwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAudGV4dC1sZy01MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnRleHQtbGctNjAwIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC50ZXh0LWxnLTcwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAudGV4dC1sZy04MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgLnRleHQtbGctOTAwIHtcbiAgICBmb250LXdlaWdodDogOTAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtMTAwIHtcbiAgICBmb250LXdlaWdodDogMTAwOyB9XG4gIC50ZXh0LXhsLTIwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAudGV4dC14bC0zMDAge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgLnRleHQteGwtNDAwIHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC50ZXh0LXhsLTUwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAudGV4dC14bC02MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLnRleHQteGwtNzAwIHtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC50ZXh0LXhsLTgwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICAudGV4dC14bC05MDAge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH0gfVxuXG4vKipcclxuICogVGV4dCB0cmFuc2Zvcm0gdWl0bGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4udGV4dC14cy11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi50ZXh0LXhzLWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnRleHQteHMtbm9uZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi50ZXh0LXhzLWZ1bGwtd2lkdGgge1xuICB0ZXh0LXRyYW5zZm9ybTogZnVsbC13aWR0aDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC50ZXh0LXNtLWNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC50ZXh0LXNtLXVwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAudGV4dC1zbS1sb3dlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbiAgLnRleHQtc20tbm9uZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLnRleHQtc20tZnVsbC13aWR0aCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGZ1bGwtd2lkdGg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZXh0LW1kLWNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC50ZXh0LW1kLXVwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAudGV4dC1tZC1sb3dlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbiAgLnRleHQtbWQtbm9uZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLnRleHQtbWQtZnVsbC13aWR0aCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGZ1bGwtd2lkdGg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAudGV4dC1sZy1jYXBpdGFsaXplIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAudGV4dC1sZy11cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnRleHQtbGctbG93ZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4gIC50ZXh0LWxnLW5vbmUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIC50ZXh0LWxnLWZ1bGwtd2lkdGgge1xuICAgIHRleHQtdHJhbnNmb3JtOiBmdWxsLXdpZHRoOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtY2FwaXRhbGl6ZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgLnRleHQteGwtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC50ZXh0LXhsLWxvd2VyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuICAudGV4dC14bC1ub25lIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAudGV4dC14bC1mdWxsLXdpZHRoIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogZnVsbC13aWR0aDsgfSB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFZlcnRpY2FsIFJoeXRobVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnZyLTAge1xuICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cblxuLnZyLTgge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cblxuLnZyLTE2IHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG4udnItMjQge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG5cbi52ci0zMiB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7IH1cblxuLnZyLTQwIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4udnItNDgge1xuICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9XG5cbi52ci01NiB7XG4gIG1hcmdpbi1ib3R0b206IDU2cHg7IH1cblxuLnZyLTY0IHtcbiAgbWFyZ2luLWJvdHRvbTogNjRweDsgfVxuXG4udnItNzIge1xuICBtYXJnaW4tYm90dG9tOiA3MnB4OyB9XG5cbi52ci04MCB7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgWi1pbmRleFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIFV0aWxpdHkgY2xhc3NlcyBmb3IgbWFuaXB1bGF0aW5nIHN0YWNraW5nIG9yZGVyIGluIEhUTUwuXHJcbiAqL1xuLnotaW5kZXgtMCB7XG4gIHotaW5kZXg6IDA7IH1cblxuLnotaW5kZXgtMSB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi56LWluZGV4LTIge1xuICB6LWluZGV4OiAyMDsgfVxuXG4uei1pbmRleC0zIHtcbiAgei1pbmRleDogMzA7IH1cblxuLnotaW5kZXgtNCB7XG4gIHotaW5kZXg6IDQwOyB9XG5cbi56LWluZGV4LTUge1xuICB6LWluZGV4OiA1MDsgfVxuXG4uei1pbmRleC02IHtcbiAgei1pbmRleDogNjA7IH1cblxuLnotaW5kZXgtNyB7XG4gIHotaW5kZXg6IDcwOyB9XG5cbi56LWluZGV4LTgge1xuICB6LWluZGV4OiA4MDsgfVxuXG4uei1pbmRleC05IHtcbiAgei1pbmRleDogOTA7IH1cblxuLnotaW5kZXgtMTAge1xuICB6LWluZGV4OiAxMDA7IH1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQmFzZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBtYXJnaW4gYW5kIHBhZGRpbmcgZnJvbSBldmVyeSBzZWxlY3RvciBpbmNsdWRpbmcgdGhlaXJcclxuICogcHN1ZWRvIHNlbGVjdG9ycy5cclxuICpcclxuICogMS4gTW9yZSBzZW5zaWJsZSBkZWZhdWx0IGJveCBzaXppbmcuXHJcbiAqICAgIChjc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UpLlxyXG4gKi9cclxuXHJcbiosXHJcbio6OmJlZm9yZSxcclxuKjo6YWZ0ZXIge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTZXQgaGVpZ2h0IG9mIHRoZSBkb2N1bWVudCB0byBtYXhpdW0gdmlld3BvcnQgaGVpZ2h0LlxyXG4gKlxyXG4gKiAxLiBTZXQgcm9vdCBmb250IHNpemUgdG8gMTAuXHJcbiAqL1xyXG5cclxuaHRtbCB7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBmb250LXNpemU6IDYyLjUlOyAvKiAxICovXHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTZXQgbWluaW1hbCBoZWlnaHQgb2YgdGhlIGJvZHkgdG8gbWF4aW11bSB2aWV3cG9ydCBoZWlnaHQgdG9cclxuICogbWF0Y2ggdGhlIGRvY3VtZW50J3MgaGVpZ2h0LlxyXG4gKlxyXG4gKiAxLiBGaXJlZm94IDI1Ky5cclxuICogMi4gQ2hyb21lIDUrLlxyXG4gKi9cclxuXHJcbmJvZHkge1xyXG4gIEBpbmNsdWRlIHRleHQoJGJvZHktdGV4dCk7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcclxuICBjb2xvcjogJGJvZHktY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogMSAqL1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiAyICovXHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTWl4aW5zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vLyBXcmFwcGVyXHJcbi8vIENlbnRlciBhbGlnbnMgZWxlbWVudCB3aXRoIGdpdmVuIG1heGltdW0gd2lkdGgsIHBhZGRpbmcsIGFuZCBtYXJnaW5zIHRvcFxyXG4vLyBhbmQgYm90dG9tLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRnYXAgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4vLyBAZXhhbXBsZVxyXG4vLyAgIEBpbmNsdWRlIHdyYXBwZXIoMTAyNHB4LCAyMHB4KTtcclxuQG1peGluIGNvbnRhaW5lcigkd2lkdGg6ICRncmlkLXdpZHRoLCAkZ2FwOiAkZ3JpZC1nYXApIHtcclxuICBAaWYgKHR5cGUtb2YoJHdpZHRoKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJGdhcCkgPT0gbnVtYmVyKSB7XHJcbiAgICBAaWYgKCRnYXAgIT0gMCkge1xyXG4gICAgICBtYXgtd2lkdGg6IGNhbGMoI3skd2lkdGh9ICsgI3soJGdhcCAqIDIpfSk7XHJcbiAgICAgIHBhZGRpbmc6IDAgJGdhcDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBtYXgtd2lkdGg6ICR3aWR0aDtcclxuICAgIH1cclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ0FyZ3VtZW50cyBgJHdpZHRoYCBhbmQgYCRnYXBgIHNob3VsZCBiZSBhIG51bWJlcic7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gU2VjdGlvblxyXG4vLyBBZGQgdG9wIGFuZCBib3R0b20gc3BhY2luZyB0byBlbGVtZW50IHVzaW5nIHBhZGRpbmdzLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHRvcCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkYm90dG9tIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuLy8gQGV4YW1wbGVcclxuLy8gICBAaW5jbHVkZSBzZWN0aW9uKDEwMHB4LCAxMDBweCk7XHJcbkBtaXhpbiBzZWN0aW9uKCR0b3A6IDAsICRib3R0b206IDApIHtcclxuICBAaWYgKHR5cGUtb2YoJHRvcCkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCRib3R0b20pID09IG51bWJlcikge1xyXG4gICAgcGFkZGluZzogJHRvcCAwICRib3R0b207XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ0FyZ3VtZW50cyBgJHRvcGAgYW5kIGBib3R0b21gIHNob3VsZCBiZSBhIG51bWJlcic7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gRm9udFxyXG4vLyBBZGRzIGByZW1gIHVuaXQgYmFzZWQgZm9udCBzaXplIHByb3BlcnR5LCBhIGZhbGxiYWNrXHJcbi8vIGBweGAgdW5pdCBiYXNlZCBmb250IHNpemUgcHJvcGVydHksIGFuZCBhIGBlbWAgdW5pdCBiYXNlZCBsaW5lIGhlaWdodFxyXG4vLyBwcm9wZXJ0eSB0byBhbnkgcnVsZS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRmb250LXNpemUgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJGxpbmUtaGVpZ2h0IC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuLy8gQGV4YW1wbGVcclxuLy8gICBAaW5jbHVkZSBmb250LXNpemUoMTZweCwgMjRweCk7XHJcbkBtaXhpbiBmb250KCRmb250LXNpemUsICRsaW5lLWhlaWdodCkge1xyXG4gIEBpZiAodHlwZS1vZigkZm9udC1zaXplKSA9PSBudW1iZXIgYW5kIHVuaXQoJGZvbnQtc2l6ZSkgPT0gJ3B4Jykge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gICAgZm9udC1zaXplOiByZW0oJGZvbnQtc2l6ZSk7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcclxuICB9IEBlbHNlIHtcclxuICAgIEBlcnJvciAnVmFsdWUgZm9yIGAjeyRmb250LXNpemV9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG4gIH1cclxuICBAaWYgKHR5cGUtb2YoJGxpbmUtaGVpZ2h0KSA9PSBudW1iZXIgYW5kIHVuaXQoJGxpbmUtaGVpZ2h0KSA9PSAncHgnKSB7XHJcbiAgICBsaW5lLWhlaWdodDogKCgkbGluZS1oZWlnaHQgLyAkZm9udC1zaXplKSAqIDFlbSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ1ZhbHVlIGZvciBgI3skbGluZS1oZWlnaHR9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFRleHRcclxuLy8gU2hvcnRoYW5kIGZvciB0aGUgZm9udCBtaXhpbiwgcnVucyB0aGUgZm9udCBtaXhpbiBiYXNlZCBvbiBhIGNvbW1vblxyXG4vLyBkZW1lYW5vdXIgZXhpc3RpbmcgYm90aCBpbiB0aGUgYCRmb250LXNpemVgIGFuZCB0aGUgYCRsaW5lLWhlaWdodGAgbWFwcy5cclxuLy8gQHBhcmFtIHtzdHJpbmd9ICR2YWx1ZSAtIFN0cmluZ1xyXG4vLyBAZXhhbXBsZVxyXG4vLyAgIEBpbmNsdWRlIHRleHQoJ3AnKTtcclxuQG1peGluIHRleHQoJHZhbHVlKSB7XHJcbiAgQGlmICh0eXBlLW9mKCR2YWx1ZSkgPT0gc3RyaW5nKSB7XHJcbiAgICBAaW5jbHVkZSBmb250KG1hcC1nZXQoJGZvbnQtc2l6ZSwgJHZhbHVlKSwgbWFwLWdldCgkbGluZS1oZWlnaHQsICR2YWx1ZSkpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdWYWx1ZSBzaG91bGQgYmUgYSBzdHJpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvbnQgQXdlc29tZVxyXG4vLyBBZGQgRm9udCBBd2Vzb21lIGljb25zIGFzIHBzdWVkbyBlbGVtZW50cyBieSB1c2luZyB0aGVpciB1bmljb2RlLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJGNvbnRlbnQgLSBVbmljb2RlIHN0cmluZy5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRmYW1pbHkgLSBGb250IEF3ZXNvbWUgZm9udCBmYW1pbHkgc3RyaW5nLlxyXG4vLyBAZXhhbXBsZVxyXG4vLyAgIEBpbmNsdWRlIGZvbnRhd2Vzb21lKCdmMTAwJywgJ0xpZ2h0Jyk7XHJcbkBtaXhpbiBmb250YXdlc29tZSgkY29udGVudCwgJGZhbWlseSkge1xyXG4gIEBpZiAodHlwZS1vZigkZmFtaWx5KSA9PSBzdHJpbmcpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1ICN7JGZhbWlseX0nO1xyXG4gICAgY29udGVudDogdW5pY29kZSgkY29udGVudCk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ0FyZ3VtZW50IGAkZmFtaWx5YCBzaG91bGQgYmUgYSBzdHJpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE1lZGlhXHJcbi8vIE1lZGlhIHF1ZXJpZXMgYWNjb3JkaW5nIHRvIFwiVGhlIDEwMCUgQ29ycmVjdCBXYXkgVG8gRG8gQ1NTIEJyZWFrcG9pbnRzXCJcclxuLy8gKGh0dHBzOi8vbWVkaXVtLmZyZWVjb2RlY2FtcC5jb20vdGhlLTEwMC1jb3JyZWN0LXdheS10by1kby1jc3MtYnJlYWtwb2ludHMtODhkNmE1YmExODYyKS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gQnJlYWtwb2ludCBwaXhlbCB1bml0IHZhbHVlLlxyXG4vLyBAZXhhbXBsZVxyXG4vLyAgIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHt9XHJcbkBtaXhpbiBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG4gIEBpZiAobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkpIHtcclxuICAgIEBpZiAobWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA9PSAwKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBlcnJvciAnVmFsdWUgaXMgbm90IGluIG1hcCBgJGJyZWFrcG9pbnRzYCc7XHJcbiAgfVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFR5cG9ncmFwaHlcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIEZvbnQgZmFtaWx5IG1hcC5cclxuJGZvbnQtZmFtaWx5OiAoXHJcbiAgJ2RlZmF1bHQnOiAnVWJ1bnR1JyxcclxuICAnaGVhZGluZyc6ICdOb3RvIFNlcmlmIEpQJ1xyXG4pO1xyXG5cclxuXHJcbi8vIEZvbnQgc2l6ZSBtYXAuXHJcbiRmb250LXNpemU6IChcclxuICAnaDEnOiA0MHB4LFxyXG4gICdoMic6IDMwcHgsXHJcbiAgJ2gzJzogMjBweCxcclxuICAncCc6IDE2cHgsXHJcbiAgJ3EnOiAxNnB4LFxyXG4gICdtZW51LWxpbmsnOiAzMHB4XHJcbik7XHJcblxyXG5cclxuLy8gTGluZSBoZWlnaHQgbWFwLlxyXG4kbGluZS1oZWlnaHQ6IChcclxuICAnaDEnOiA1N3B4LFxyXG4gICdoMic6IDQ0cHgsXHJcbiAgJ2gzJzogMjlweCxcclxuICAncCc6IDMwcHgsXHJcbiAgJ3EnOiAzMHB4LFxyXG4gICdtZW51LWxpbmsnOiA0NHB4XHJcbik7XHJcblxyXG4vLyBGb250IHdlaWdodCBtYXAuXHJcbiRmb250LXdlaWdodDogKFxyXG4gICd0aGluJzogMTAwLFxyXG4gICdleHRyYS1saWdodCc6IDIwMCxcclxuICAnbGlnaHQnOiAzMDAsXHJcbiAgJ25vcm1hbCc6IDQwMCxcclxuICAnbWVkaXVtJzogNTAwLFxyXG4gICdzZW1pLWJvbGQnOiA2MDAsXHJcbiAgJ2JvbGQnOiA3MDAsXHJcbiAgJ2V4dHJhLWJvbGQnOiA4MDAsXHJcbiAgJ2JsYWNrJzogOTAwXHJcbik7XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZ1bmN0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gVW5pY29kZVxyXG4vLyBQcmVzZXJ2ZSBlc2NhcGVkIHVuaWNvZGUgc3RyaW5nLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEFuIHVuaWNvZGUgc3RyaW5nLlxyXG4vLyBAcmV0dXJuIHtTdHJpbmd9IEEgcHJlc2VydmVkIGVzY2FwZWQgdW5pY29kZSBzdHJpbmdcclxuLy8gc2Fzcy1saW50OmRpc2FibGUgcXVvdGVzXHJcbkBmdW5jdGlvbiB1bmljb2RlKCRzdHJpbmcpIHtcclxuICBAcmV0dXJuIHVucXVvdGUoXCJcXCdcIikgKyB1bnF1b3RlKHN0ci1pbnNlcnQoJHN0cmluZywgJ1xcXFwnLCAxKSkgKyB1bnF1b3RlKFwiXFwnXCIpO1xyXG59XHJcbi8vIHNhc3MtbGludDplbmFibGUgcXVvdGVzXHJcblxyXG5cclxuLy8gUkVNXHJcbi8vIENvbnZlcnQgcGl4ZWwgdW5pdHMgdG8gUkVNIHVuaXRzLlxyXG4vLyBAcGFyYW0ge051bWJlcn0gJHBpeGVscyAtIFBpeGVsIHZhbHVlLlxyXG4vLyBAcmV0dXJuIHsqfSAtIEEgY29udmVydGVkIGByZW1gIHVuaXQuXHJcbkBmdW5jdGlvbiByZW0oJHBpeGVscykge1xyXG4gIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuICAgIEBlcnJvciAnVmFsdWUgZm9yIGAjeyRwaXhlbHN9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQuJztcclxuICB9XHJcbiAgQHJldHVybiAoKCRwaXhlbHMgLyAxMHB4KSAqIDFyZW0pO1xyXG59XHJcblxyXG5cclxuLy8gQ29sdW1uXHJcbi8vIENhbGN1bGF0ZSBnaXZlbiBjb2x1bW4gd2lkdGguXHJcbi8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1uIC0gVGhlIGFtb3VudCBvZiBjb2x1bW5zIHRvIHNwYW4uXHJcbi8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIFRoZSBhbW91bnQgb2YgY29sdW1ucyB0aGF0IGNhbiBiZSBzcGFubmVkLlxyXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gUGVyY2VudGFnZSB2YWx1ZS5cclxuQGZ1bmN0aW9uIGNvbHVtbigkY29sdW1uLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG4gIEByZXR1cm4gKCRjb2x1bW4gICogMTAwJSAvICRjb2x1bW5zKTtcclxufVxyXG5cclxuXHJcbi8vIENvbG9yXHJcbi8vIEdldCBhIGNvbG9yIHZhbHVlIGZyb20gdHdvIGxldmVscyBkZWVwIGluIHRoZSBgJGNvbG9yYCBtYXAuXHJcbi8vIEBwYXJhbSB7JHN0cmluZ30gJGtleSAtIEtleSBvZiB0aGUgY29sb3IgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIG9mIHRoZSBrZXkgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuLy8gQHJldHVybiB7Kn0gQSBIU0xBIGNvbG9yIHZhbHVlLlxyXG5AZnVuY3Rpb24gY29sb3IoJGtleSwgJHZhbHVlKSB7XHJcbiAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJGtleSksICR2YWx1ZSk7XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29sb3JcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIENvbG9yIG1hcC5cclxuJGNvbG9yczogKFxyXG4gICdibGFjayc6IChcclxuICAgICcxMDAnOiBoc2xhKDAsIDAlLCAwJSwgMSlcclxuICApLFxyXG4gICd3aGl0ZSc6IChcclxuICAgICcxMDAnOiBoc2xhKDAsIDAlLCAxMDAlLCAxKVxyXG4gICksXHJcbiAgJ2JsdWUnOiAoXHJcbiAgICAnMTAwJzogaHNsYSgxODUsIDEwMCUsIDMwJSwgMSlcclxuICApLFxyXG4gICdvcmFuZ2UtZ3JhZGllbnQnOiAoXHJcbiAgICAnMTAwJzogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2IoMjQ3LCAyMTMsIDIxKSwgcmdiKDI0OCwgMTQxLCAxOCkpLFxyXG4gICksXHJcbiAgJ2xpZ2h0Ymx1ZSc6IChcclxuICAgICcxMDAnOiBoc2xhKDE4NiwgNDYlLCA5MiUsIDEpXHJcbiAgKSxcclxuICAnYnJhbmNoZS1maXNoJzogKFxyXG4gICAgJzEwMCc6IGhzbGEoMjA2LCA2MSUsIDM1JSwgMSlcclxuICApLFxyXG4gICdicmFuY2hlLW1lYXQnOiAoXHJcbiAgICAnMTAwJzogaHNsYSgzNDksIDc0JSwgNDUlLCAxKVxyXG4gICksXHJcbiAgJ2JyYW5jaGUtZnJ1aXQnOiAoXHJcbiAgICAnMTAwJzogaHNsYSg5OCwgNDglLCA0MCUsIDEpXHJcbiAgKSxcclxuICAnYnJhbmNoZS1jaGVlc2UnOiAoXHJcbiAgICAnMTAwJzogaHNsYSg0MSwgMTAwJSwgNTUlLCAxKVxyXG4gICksXHJcbiAgJ2JyYW5jaGUtc3BvcnQnOiAoXHJcbiAgICAnMTAwJzogaHNsYSgyOTQsIDEwMCUsIDI3JSwgMSlcclxuICApLFxyXG4gICdicmFuY2hlLWJyZWFkJzogKFxyXG4gICAgJzEwMCc6IGhzbGEoMzEsIDk3JSwgMzclLCAxKVxyXG4gICksXHJcbiAgJ2JyYW5jaGUtY29mZmVlJzogKFxyXG4gICAgJzEwMCc6IGhzbGEoMzIsIDEwMCUsIDIyJSwgMSlcclxuICApLFxyXG4gICdicmFuY2hlLXBldHMnOiAoXHJcbiAgICAnMTAwJzogaHNsYSgwLCA0OCUsIDQxJSwgMSlcclxuICApLFxyXG4gICdicmFuY2hlLXNuYWNrcyc6IChcclxuICAgICcxMDAnOiBoc2xhKDMzOSwgMTAwJSwgNDglLCAxKVxyXG4gICksXHJcbiAgJ2JyYW5jaGUtbm9uZm9vZCc6IChcclxuICAgICcxMDAnOiBoc2xhKDAsIDAlLCAyMyUsIDEpXHJcbiAgKVxyXG4pO1xyXG5cclxuLy8gQ29sb3Igc2hvcnRoYW5kIHZhcmlhYmxlcy5cclxuXHJcbi8vIE1haW4gQ29sb3JzXHJcbiRjb2xvci1ibGFjazogIzAwMDtcclxuJGNvbG9yLW9mZmJsYWNrOiAjM2QzZDNkO1xyXG4kY29sb3Itd2hpdGU6ICNmZmY7XHJcbiRjb2xvci1vZmZ3aGl0ZTogI2Y5ZjlmOTtcclxuJGNvbG9yLWJsdWU6ICMwMDhjOWE7IFxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwNGJiY2M7XHJcbiRjb2xvci1ibHVlLXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLCAxNDAsIDE1NCwgMC4zOSk7XHJcbiRjb2xvci1ibHVlLWRhcms6ICMwMDU3NjA7XHJcbiRjb2xvci1ibHVlLWRhcmstc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDg3LCA5NiwgMC41KTtcclxuJGNvbG9yLWJsdWUtbmF2LWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgJGNvbG9yLWJsdWUtc2Vjb25kYXJ5IDAlLCAkY29sb3ItYmx1ZSAxMDAlKTtcclxuJGNvbG9yLW9yYW5nZS1tYWluOiAjZmI4MTFjO1xyXG4kY29sb3Itb3JhbmdlLXRhYnM6ICNmZmI4MWM7XHJcbiRjb2xvci1vcmFuZ2UtZGFyazogI2ZmOTI1NjtcclxuJGNvbG9yLW9yYW5nZS1saWdodDogI2ZmYTEwNztcclxuJGNvbG9yLW9yYW5nZS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDIyNWRlZywgJGNvbG9yLW9yYW5nZS1kYXJrIDAlLCAkY29sb3Itb3JhbmdlLWxpZ2h0IDEwMCUpO1xyXG4kY29sb3ItbGlnaHRibHVlOiAjZTFmMmY0O1xyXG4kY29sb3ItZ3JlZW46ICM0OTk4MzU7XHJcbiRjb2xvci1yZWQ6ICNkYjM4NTU7XHJcblxyXG4vLyBCcmFuY2hlIENvbG9yc1xyXG4kY29sb3ItYnJhbmNoZS1maXNoOiBjb2xvcignIzIzNjE5MicsICcxMDAnKTtcclxuJGNvbG9yLWJyYW5jaGUtbWVhdDogY29sb3IoJyNjODFlM2MnLCAnMTAwJyk7XHJcbiRjb2xvci1icmFuY2hlLWZydWl0OiBjb2xvcignIzQ5OTgzNScsICcxMDAnKTtcclxuJGNvbG9yLWJyYW5jaGUtY2hlZXNlOiBjb2xvcignI2ZmYjgxYycsICcxMDAnKTtcclxuJGNvbG9yLWJyYW5jaGUtc3BvcnQ6IGNvbG9yKCcjN2QwMDhiJywgJzEwMCcpO1xyXG4kY29sb3ItYnJhbmNoZS1icmVhZDogY29sb3IoJyNiODYxMDMnLCAnMTAwJyk7XHJcbiRjb2xvci1icmFuY2hlLWNvZmZlZTogY29sb3IoJyM3MjNkMDAnLCAnMTAwJyk7XHJcbiRjb2xvci1icmFuY2hlLXBldHM6IGNvbG9yKCcjOWIzNjM2JywgJzEwMCcpO1xyXG4kY29sb3ItYnJhbmNoZS1zbmFja3M6IGNvbG9yKCcjZjQwMDU3JywgJzEwMCcpO1xyXG4kY29sb3ItYnJhbmNoZS1ub25mb29kOiBjb2xvcignIzNiM2IzYicsICcxMDAnKTtcclxuXHJcbi8vIE9wYWNpdHkgY29sb3JzXHJcbiRjb2xvci13aGl0ZS03MDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpOyAvLyBTbGlkZXIgbmF2IGJhY2tncm91bmRcclxuJGFjdGl2ZS10YWI6IHJnYmEoMjU1LCAxODQsIDI4LCAwLjEpOyAvLyBBY3RpdmUgdGFiIGVsZW1lbnQgYmFja2dyb3VuZFxyXG5cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUmVzZXRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBDdXN0b20gdXNlciBhZ2VudCByZXNldHMgYW5kIG92ZXJyaWRlcyB0aGF0IGFyZSBub3QgcHJlc2VudCBpblxyXG4gKiBOb3JtYWxpemUgOC4wLjAuIFRoaXMgbW9zdGx5IHJlbW92ZXMgc29tZSBhbm5veWluZyBtYXJnaW4gYW5kIHBhZGRpbmdcclxuICogZGVmYXVsdHMsIGJvcmRlciByYWRpdXMsIGFuZCBvdXRsaW5lcy5cclxuICovXHJcblxyXG5hIHtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGJvcmRlciByYWRpdXMgb24gQ2hyb21lIDYyLjArIG9uIG1hY09TLlxyXG4gKi9cclxuXHJcbmJ1dHRvbiB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7IC8qIDEgKi9cclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5ociB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIHdoaXRlIHNwYWNlLlxyXG4gKi9cclxuXHJcbmltZyB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKiAxICovXHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGluaGVyaXRlZCB1c2VyIGFnZW50IGFwcGVhcmFuY2UuXHJcbiAqL1xyXG5cclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBPbmx5IGFsbG93IHZlcnRpY2FsIHJlc2l6aW5nIHRvIHByZXZlbnQgdGhlIHRleHRhcmVhXHJcbiAqICAgIGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNvbnRhaW5lci5cclxuICovXHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxudWwsXHJcbm9sIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBDb2xsYXBzZSBib3JkZXJzIHRvIHByZXZlbnQgZG91YmxlIHNpZGVkIGJvcmRlcnMuXHJcbiAqL1xyXG5cclxudGFibGUge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvKiAxICovXHJcbn1cclxuXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBCdXR0b25cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIERlZmF1bHQgYnV0dG9uIHNldHRpbmdzLlxyXG4kYnV0dG9uLXNwYWNpbmc6IDEwcHggMjBweDtcclxuJGJ1dHRvbi1zcGFjaW5nLXNtYWxsOiAxMXB4IDE1cHg7XHJcbiRidXR0b24tYm9yZGVyLXJhZGl1czogMzhweDtcclxuJGJ1dHRvbi1saW5lLWhlaWdodDogMTZweDtcclxuJG9yYW5nZS1idXR0b24tc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgyNTUsIDE1MywgNTEsIDAuNTQpO1xyXG4kd2hpdGUtYnV0dG9uLXNoYWRvdzogMCAycHggMTBweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBEZWZhdWx0IGJ1dHRvbi5cclxuICovXHJcblxyXG4uYnV0dG9uIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgcGFkZGluZzogJGJ1dHRvbi1zcGFjaW5nO1xyXG4gIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XHJcbiAgYm9yZGVyLXJhZGl1czogMzhweDtcclxuICBmb250LXNpemU6IG1hcC1nZXQoJGZvbnQtc2l6ZSwgJ3AnKTtcclxuICBmb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHQsICdib2xkJyk7XHJcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluZS1oZWlnaHQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKCdodWdlJyk7XHJcbiAgfVxyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKCdodWdlJyk7XHJcbiAgfVxyXG5cclxuICAmLmJ1dHRvbi0tZm9udC1tZWRpdW0ge1xyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0LCAnbWVkaXVtJyk7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1zbWFsbCB7XHJcbiAgcGFkZGluZzogJGJ1dHRvbi1zcGFjaW5nLXNtYWxsO1xyXG59XHJcblxyXG4uYnV0dG9uLS1vcmFuZ2Uge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2UtZ3JhZGllbnQ7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICBib3gtc2hhZG93OiAkb3JhbmdlLWJ1dHRvbi1zaGFkb3c7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS13aGl0ZSB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJveC1zaGFkb3c6ICR3aGl0ZS1idXR0b24tc2hhZG93O1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0tc2Vjb25kYXJ5IHtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci13aGl0ZTtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1ibHVlIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLWRhcms7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcblxyXG4gIC8vIEJ1dHRvblxyXG4gIC5idXR0b24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxufVxyXG4iLCIuY29udGFjdC1maXhlZCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNDUlO1xyXG4gIGxlZnQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gIHotaW5kZXg6IDI7XHJcblxyXG4gIC5jb250YWN0LWZpeGVkLWl0ZW0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBib3gtc2hhZG93OiAkY29sb3ItYmx1ZS1zaGFkb3c7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGxlZnQ6IGNhbGMoLTEwMCUgKyA1MHB4KTtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtZGFyaztcclxuICAgICAgYm94LXNoYWRvdzogJGNvbG9yLWJsdWUtZGFyay1zaGFkb3c7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3QtZml4ZWQtbGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblxyXG4gIC5jb250YWN0LWZpeGVkIHtcclxuICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gIH0gICBcclxuXHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHJcbiAgLy8gRml4ZWQgQ29udGFjdCBCdXR0b25zXHJcbiAgLmNvbnRhY3QtZml4ZWQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgICBib3R0b206IC0xNzBweDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTM1cHg7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIC5jb250YWN0LWZpeGVkLWl0ZW0ge1xyXG4gICAgICBzdmcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59IC8vIEVORCBtZWRpYSBxdWVyeSBcclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ29udGFpbmVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogVGhlIGNvbnRhaW5lciBvYmplY3QgY2VudGVycyBhbiBlbGVtZW50IGluIHRoZSBkb2N1bWVudC5cclxuICovXHJcblxyXG4uY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSBjb250YWluZXI7XHJcbiAgbWF4LXdpZHRoOiAxMjUwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAwIDQwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAwIDMwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbnRlbnQgQ29uc3RyYWludFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFRoZSBjb250ZW50IGNvbnN0cmFpbnQgaXMgYSBjb25zdHJhaW50IGZvciBhbGwgdGhlIGNvbnRlbnQgd2l0aGluXHJcbiAqIHRoZSBkb2N1bWVudC4gSXQgY2FuIGJlIG1hbmlwdWxhdGVkIGJ5IENTUyBvciBKYXZhU2NyaXB0IHdpdGhvdXRcclxuICogaW5mbHVlbmNpbmcgdGhlIGJvZHkuXHJcbiAqL1xyXG5cclxuLmNvbnRlbnQtY29uc3RyYWludCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEZsZXhcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBFeGFtcGxlIG9mIGEgZmxleCBiYXNlZCBjb2x1bW4gZ3JpZCBsYXlvdXQgaW4gcHJhY3RpY2U6XHJcbiAqXHJcbiAqIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLXhzLTYgY29sLXNtLTEyXCI+PC9kaXY+XHJcbiAqIDwvZGl2PlxyXG4gKlxyXG4gKiBUaGlzIGV4YW1wbGUgd2lsbCBjcmVhdGUgYSByb3cgd2l0aCB0d28gY29sdW1ucyBlYWNoIGZpbGxpbmcgaGFsZiB0aGUgd2lkdGhcclxuICogb2YgdGhlIHJvdyBvbiBhbGwgbWVkaWEsIGJ1dCB3aWxsIGNvbnZlcnQgdG8gYSBmdWxsIHdpZHRoIGNvbHVtbiBvbiB0aGVcclxuICogc21hbGwgYC1zbWAgYnJlYWtwb2ludCBhbGlhcywgd2hpY2ggaXMgbW9iaWxlIG9ubHkuIFJlZmVyIHRvXHJcbiAqIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AgZm9yIGFsbCBicmVha3BvaW50IGFsaWFzLlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBGbGV4IG9iamVjdC5cclxuICpcclxuICogVGlwOiBVc2UgZmxleCBvbiBhIGNvbHVtbiB0byBtYWtlIHRoZSBib3ggdGhlIHNhbWUgaGVpZ2h0IGFzIHRoZSBjb2x1bW4uXHJcbiAqL1xyXG5cclxuLmZsZXgge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRmxleCBvYmplY3Qgd2l0aCBhIGNvbHVtbiBiYXNlZCBsYXlvdXQgc3lzdGVtLlxyXG4gKi9cclxuXHJcbi5yb3cge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleDogMCAxIGF1dG87XHJcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICBtYXJnaW46IDAgLSN7KCRncmlkLWdhcC8yKX07XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQm94LCB0aGUgaW5zaWRlIG9mIGEgY29sdW1uLlxyXG4gKi9cclxuXHJcbi5ib3gge1xyXG4gIGZsZXg6IDE7XHJcbn1cclxuXHJcblxyXG4vLyBMb29wIHRocm91Z2ggYWxsIHRoZSBrZXlzIGluIHRoZSBgJGJyZWFrcG9pbnRzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpblxyXG4vLyBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG5AZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHJcbiAgLy8gQ3JlYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGV2ZXJ5IGtleSBpbiBgJGJyZWFrcG9pbnRzYC5cclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcblxyXG4gICAgLy8gSXRlcmF0ZSBmcm9tIDEgdGhyb3VnaCB0aGUgYW1vdW50IG9mIGdyaWQgY29sdW1ucyBkZWZpbmVkIGJ5XHJcbiAgICAvLyBgJGdyaWQtY29sdW1uc2AgaW4gYHNldHRpbmdzL19kZWZpbml0aW9ucy5zY3NzYC5cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogQ29sdW1uICN7JGl9IGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xyXG5cclxuICAgICAgLmNvbC0jeyRrZXl9LSN7JGl9IHtcclxuICAgICAgICBmbGV4OiAwIDEgYXV0bztcclxuICAgICAgICB3aWR0aDogY29sdW1uKCRpKTtcclxuICAgICAgICBwYWRkaW5nOiAwICgkZ3JpZC1nYXAvMik7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgICAvLyBPdXRwdXQgYW4gb2Zmc2V0IHV0aWxpdHkgY2xhc3MgaWYgdGhlIGl0ZXJhdG9yIGlzIGxlc3MgdGhhbiB0aGUgYW1vdW50XHJcbiAgICAgIC8vIG9mIGdyaWQgY29sdW1ucyBkZWZpbmVkIGJ5IGAkZ3JpZC1jb2x1bW5zYCBpblxyXG4gICAgICAvLyBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG4gICAgICBAaWYgKCRpIDwgJGdyaWQtY29sdW1ucykge1xyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgI3skaX0gZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cclxuXHJcbiAgICAgICAgLm9mZnNldC0jeyRrZXl9LSN7JGl9IHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjb2x1bW4oJGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBMb29wIHRocm91Z2ggYWxsIHZhbHVlcyBmb3IgdGhlIGBhbGlnbi1pdGVtc2AgcHJvcGVydHkuXHJcbiAgICBAZWFjaCAkdmFsdWUgaW4gc3RyZXRjaCwgY2VudGVyLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCwgYmFzZWxpbmUge1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEFsaWduIGAjeyR2YWx1ZX1gIGZvciB0aGUgI3ska2V5fSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cclxuXHJcbiAgICAgIC5hbGlnbi0jeyRrZXl9LSN7JHZhbHVlfSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBMb29wIHRocm91Z2ggYWxsIHZhbHVlcyBmb3IgdGhlIGBqdXN0aWZ5LWNvbnRlbnRgIHByb3BlcnR5LlxyXG4gICAgQGVhY2ggJHZhbHVlIGluIHN0YXJ0LCBjZW50ZXIsIHNwYWNlLWJldHdlZW4sIHNwYWNlLWFyb3VuZCwgc3BhY2UtZXZlbmx5IHtcclxuXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGAjeyR2YWx1ZX1gIGZvciB0aGUgI3ska2V5fSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cclxuXHJcbiAgICAgIC5qdXN0aWZ5LSN7JGtleX0tI3skdmFsdWV9IHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBMb29wIHRocm91Z2ggZXZlcnkgZGlyZWN0aW9uIGZyb20gbGVmdCB0byByaWdodC5cclxuICAgIEBlYWNoICRkaXJlY3Rpb24gaW4gbGVmdCwgcmlnaHQge1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEJsZWVkICN7JGRpcmVjdGlvbn0gZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xyXG5cclxuICAgICAgLmJsZWVkLSN7JGtleX0tI3skZGlyZWN0aW9ufSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT3JkZXIgZmlyc3QgZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuICAgICAqL1xyXG5cclxuICAgIC5maXJzdC0jeyRrZXl9IHtcclxuICAgICAgb3JkZXI6IC0xO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuICAgICAqL1xyXG5cclxuICAgIC5sYXN0LSN7JGtleX0ge1xyXG4gICAgICBvcmRlcjogMTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXZlcnNlIG9yZGVyIGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cclxuXHJcbiAgICAucmV2ZXJzZS0jeyRrZXl9IHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJcclxuaDEsXHJcbmgyLFxyXG5oMyB7XHJcbiAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnaGVhZGluZycpO1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcblxyXG4gICYuaGVhZGluZy0td2hpdGUge1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICB9XHJcblxyXG4gICYuaGVhZGluZy0tb3JhbmdlIHtcclxuICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlLW1haW47XHJcbiAgfVxyXG5cclxuICAmLmhlYWRpbmctLWFsaWduLWNlbnRlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5oMSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcclxuICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRmb250LXNpemUsICdoMScpO1xyXG4gIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodCwgJ2JvbGQnKTtcclxuICBsaW5lLWhlaWdodDogbWFwLWdldCgkbGluZS1oZWlnaHQsICdoMScpO1xyXG5cclxuICAmLmhlYWRpbmctLWNvbG9yLWJsYWNrIHtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi1hcnRpY2xlIGgxIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG5oMixcclxuLnNlY3Rpb24tYXJ0aWNsZSBoMSB7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICBmb250LXNpemU6IG1hcC1nZXQoJGZvbnQtc2l6ZSwgJ2gyJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0LCAnYm9sZCcpO1xyXG4gIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KCRsaW5lLWhlaWdodCwgJ2gyJyk7XHJcblxyXG4gICYuaGVhZGluZy0tYm9yZGVyLWJvdHRvbSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweDtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgICYuaGVhZGluZy0tYWxpZ24tY2VudGVyIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24tYXJ0aWNsZSB7XHJcblxyXG4gIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCB7IFxyXG4gICAgIFxyXG4gICAgaDIge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkc21hbGxlci1tYXJnaW47XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuaDMge1xyXG4gIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRmb250LXNpemUsICdoMycpO1xyXG4gIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodCwgJ2JvbGQnKTtcclxuICBsaW5lLWhlaWdodDogbWFwLWdldCgkbGluZS1oZWlnaHQsICdoMycpO1xyXG5cclxuICAmLmhlYWRpbmctLWJvcmRlci1ib3R0b20ge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgIH1cclxuXHJcbiAgICAmLmhlYWRpbmctLWFsaWduLWNlbnRlciB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICBoMSB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogNDRweDtcclxuICB9XHJcblxyXG4gIGgyIHtcclxuICAgICY6bm90KC5icmFuY2hlcy1tZW51X190cmlnZ2VyKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoMyB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjlweDtcclxuICB9XHJcblxyXG4gIGgxLFxyXG4gIGgyLFxyXG4gIGgzIHtcclxuICAgICYuaGVhZGluZy0tYm9yZGVyLWJvdHRvbTphZnRlcntcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIi5zZWxlY3Qge1xyXG4gIHBhZGRpbmc6IDVweCAxNXB4O1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodCwgJ3RoaW4nKTtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG5cclxuZm9ybSB7XHJcbiAgaW5wdXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9J3N1Ym1pdCddIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLmdmaWVsZF9jb250YWluc19yZXF1aXJlZCB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gXHJcbiAgOjpwbGFjZWhvbGRlciwgbGFiZWwge1xyXG4gICAgY29sb3I6ICMzZDNkM2Q7XHJcbiAgfVxyXG5cclxuICAuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnZhbGlkYXRpb25fbWVzc2FnZSB7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHQsICdsaWdodCcpO1xyXG4gIH1cclxuXHJcbiAgdGV4dGFyZWEge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9J2NoZWNrYm94J10sIFxyXG4gIGlucHV0W3R5cGU9J3JhZGlvJ10ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDExcHg7XHJcbiAgICBoZWlnaHQ6IDExcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLW9mZmJsYWNrO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgICAmOmNoZWNrZWQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiA2cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwLjA4ZW0gMC4wOGVtIDAgMDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLW9mZmJsYWNrO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IC03cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAuMDhlbSAwLjA4ZW0gMCAwO1xyXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itb2ZmYmxhY2s7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVsIHtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgJi5nZmllbGRfY2hlY2tib3gge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdmaWVsZCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgd2lkdGg6IDQ4JTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcclxuXHJcbiAgICAgICYudGV4dGFyZWEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi52YWxpZGF0aW9uX2Vycm9yIHtcclxuICBtYXJnaW46ICRtYXJnaW4gMDtcclxuICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICBmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdoZWFkaW5nJyk7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uY29udGFjdC1mb3JtLS1iYWNrZ3JvdW5kLW9yYW5nZSB7XHJcbiAgZm9ybSB7XHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogJHdoaXRlLWJ1dHRvbi1zaGFkb3c7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBcclxuICAgIGxhYmVsLCBcclxuICAgIDo6cGxhY2Vob2xkZXIge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG4gIH0gXHJcblxyXG4gIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcclxuICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxyXG4gIDo6cGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICBmb3JtIHtcclxuICAgIHVsIHtcclxuICAgICAgbGksXHJcbiAgICAgIC5nZmllbGQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbixcclxuICAgIGlucHV0W3R5cGU9J3N1Ym1pdCddIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwicCB7XHJcbiAgYSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLW9yYW5nZS1tYWluO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5saW5rIHtcclxuICBcclxuICAmLmxpbmstLW9yYW5nZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLW9yYW5nZS1tYWluO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJi5saW5rLS1ibHVlIHtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIFxyXG4gIH1cclxufVxyXG4iLCJ1bCB7XHJcbiAgbWFyZ2luLXRvcDogJHNtYWxsZXItbWFyZ2luO1xyXG5cclxuICAmLnRleHQtaW1hZ2VfX3VzcC1saXN0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgbWFyZ2luLXRvcDogMTJweDtcclxuICB9XHJcblxyXG4gICYudWwtbGlzdC0tb3JhbmdlIHtcclxuICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlLW1haW47XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICAmLnRleHQtaW1hZ2VfX3VzcC1pdGVtIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cclxuICAgICAgc3ZnIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uZm9vdGVyX19ibG9jay1hcHBvaW50bWVudCB7XHJcbiAgXHJcbiAgbGkge1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMXB4OyAgICAgIFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubG9nbyB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuICBhbmQgKG1pbi13aWR0aDogMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHR3aWR0aDogNjBweDtcclxuXHRoZWlnaHQ6IDYwcHg7XHJcbiAgfVxyXG5cclxuICB3aWR0aDogMzAwcHg7XHJcbn1cclxuIiwicCB7XHJcbiAgY29sb3I6ICRjb2xvci1vZmZibGFjaztcclxuICBmb250LXNpemU6IG1hcC1nZXQoJGZvbnQtc2l6ZSwgJ3AnKTtcclxuICBmb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHQsICdsaWdodCcpO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjQ0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGxpbmUtaGVpZ2h0LCAncCcpO1xyXG59XHJcblxyXG4uZGVmYXVsdC10ZXh0X19jb250ZW50IHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IDgyMHB4O1xyXG4gIG1hcmdpbjogYXV0bztcclxuXHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIH1cclxufVxyXG4iLCIvLyAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAgICBTbGlkZXNob3cuXHJcbi8vICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4udGV4dC1pbWFnZSB7XHJcbiAgJi50ZXh0LWltYWdlLnRleHQtaW1hZ2UtLWFsaWduLWNlbnRlciB7XHJcbiAgICAuc2xpZGVyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLnNlY3Rpb24tc2xpZGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5qcy1zbGlkZXNob3cge1xyXG4gICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0ge1xyXG5cdGltZyB7XHJcblx0ICBvYmplY3QtZml0OiBjb3ZlcjtcclxuXHQgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG5cdCAgd2lkdGg6IDEwMCU7XHJcblx0fVxyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlc2hvdyB7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBjdXJzb3I6IGdyYWI7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVyLWFycm93IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHdpZHRoOiAxNXB4O1xyXG4gIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gICYuc2xpZGVyLW5hdl9fYXJyb3ctbGVmdCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgfVxyXG5cclxuICBzdmcge1xyXG4gICAgd2lkdGg6IDE1cHg7XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG4ub3dsLW5hdiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMTBweDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICAuc2xpZGVyLXRlc3QgeyBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTcwO1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzOHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcblxyXG4gIC5vd2wtbmV4dCxcclxuICAub3dsLXByZXYge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTcwICFpbXBvcnRhbnQ7XHJcblxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IDNweDtcclxuICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAub3dsLXByZXYge1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzhweDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDM4cHg7XHJcbiAgfVxyXG5cclxuICAub3dsLW5leHQge1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDM4cHg7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMzhweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWFydGljbGUge1xyXG4gIC5vd2wtbmF2IHtcclxuICAgIHdpZHRoOiA5NSU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnNsaWRlci1pdGVtIHtcclxuICB3aWR0aDogYXV0bztcclxuICAvLyBtYXgtd2lkdGg6IDU4MHB4O1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBtYXgtaGVpZ2h0OiA1MDBweDtcclxufVxyXG5cclxuLnNsaWRlci1uYXYge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMTBweDtcclxuICBsZWZ0OiBjYWxjKDUwJSAtIDQwcHgpO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgbWF4LXdpZHRoOiA4MHB4O1xyXG4gIG1heC1oZWlnaHQ6IDMwcHg7XHJcbiAgcGFkZGluZzogN3B4IDEwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMzhweDtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICBzdmcge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcblxyXG4gIC5ibHVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDM4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtNzA7XHJcbiAgfVxyXG59IFxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcclxuXHJcbiAgLnNlY3Rpb24tYXJ0aWNsZSB7XHJcbiAgICAub3dsLW5hdiB7XHJcbiAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xyXG4gIC50ZXh0LWltYWdlX19zbGlkZXItaXRlbSB7XHJcbiAgICBtYXgtaGVpZ2h0OiAzNTBweDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcclxuICAuc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIC5zbGlkZXItaXRlbSB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcbiAgfSAgIFxyXG5cclxufVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAuc2VjdGlvbi10YWJzX190YWItaW1hZ2VzIHtcclxuICAgIC5vd2wtbmF2IHtcclxuICAgICAgYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5vd2wtbmF2IHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0ge1xyXG4gICAgaGVpZ2h0OiAzMDBweDtcclxuICB9XHJcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDTVMgT3V0cHV0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogRXZlcnkgY29uY2VpdmFibGUgSFRNTCBlbGVtZW50IHdpdGhpbiBhIGAuY21zLW91dHB1dGAgd3JhcHBlci5cclxuICpcclxuICogMS4gRXhjbHVkZSBsYXN0IGNoaWxkcy5cclxuICovXHJcblxyXG4uY21zLW91dHB1dCB7XHJcblxyXG4gID4gKiB7XHJcblxyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtOyAvKiAxICovXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB1bCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcbiAgfVxyXG5cclxuICBvbCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XHJcbiAgfVxyXG5cclxuICBwID4gYSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLW9yYW5nZS1ncmFkaWVudDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE1haW4gTWVudVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFdvcmRQcmVzcyBtYWluIG1lbnUuXHJcbiAqL1xyXG5cclxuXHJcbi8qKlxyXG4gKiBNYWluIG1lbnUuXHJcbiAqL1xyXG4ubWFpbi1oZWFkZXIge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgLy8gYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgLm1haW4taGVhZGVyX193cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG5cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLW5hdi1ncmFkaWVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgIH1cclxuXHJcbiAgICAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1heC13aWR0aDogMTI1MHB4O1xyXG4gICAgICBtYXJnaW46IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ28tY29udGFpbmVyLS1tb2JpbGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuXHJcbi5tYWluLWhlYWRlcl9fYmxvY2sge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogNTAlO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgXHJcbiAgLmxvZ28tY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuXHJcbiAgICAmLmhpZGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5tYWluLWhlYWRlcl9fYmxvY2subWFpbi1oZWFkZXJfX2Jsb2NrLXJpZ2h0IHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmxhbmd1YWdlLXN3aXRjaCxcclxuLmpzLW1haW4tbWVudS1idXR0b24ge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBNYWluIG1lbnUgaXRlbSBoYXMgY2hpbGRyZW4uXHJcbiAqL1xyXG5cclxuLm1haW4tbWVudSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcclxuICBAaW5jbHVkZSBtZWRpYSh4bCkge1xyXG4gICAgJjpob3ZlciAuc3VibWVudS1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vLyBMYW5ndWFnZSBTd2l0Y2hcclxuLmxhbmd1YWdlLXN3aXRjaCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1yaWdodDogMzBweDtcclxuXHJcbiAgLmxhbmd1YWdlLXN3aXRjaF9fbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIC5qcy1sYW5ndWFnZS1saXN0IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDMwcHg7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4O1xyXG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWxpZ2h0Ymx1ZTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgIC5sYW5ndWFnZS1zd2l0Y2hfX29wdGlvbiB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTsgXHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG5cclxuICAmLnNlbGVjdC0td2hpdGUge1xyXG5cclxuICAgIC5sYW5ndWFnZS1zd2l0Y2hfX2xpc3QuY2hldnJvbjphZnRlcixcclxuICAgIC5sYW5ndWFnZS1zd2l0Y2hfX29wdGlvbixcclxuICAgIHNwYW4ge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIC5qcy1sYW5ndWFnZS1saXN0IHtcclxuXHJcbiAgICAgIC5sYW5ndWFnZS1zd2l0Y2hfX29wdGlvbiB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmxhbmd1YWdlLXN3aXRjaF9fbGlzdC5jaGV2cm9uOmFmdGVyIHtcclxuICAgIHRvcDogMTBweDtcclxuICAgIGxlZnQ6IDhweDtcclxuICAgIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi5saW5lIHtcdFxyXG4gIHdpZHRoOiAxcHg7XHRcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbWF4LWhlaWdodDogNjU4cHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHRcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHsgXHJcbiAgLm1haW4taGVhZGVyIHsgXHJcbiAgICAubWFpbi1oZWFkZXJfX3dyYXBwZXIgeyBcclxuICAgICAgLm1haW4taGVhZGVyX19jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICAubWFpbi1oZWFkZXJfX3dyYXBwZXIge1xyXG4gICAgLmxvZ28tY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICYubG9nby1jb250YWluZXItLW1vYmlsZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIFxyXG4gICAgICAubWFpbi1oZWFkZXJfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgLm1haW4taGVhZGVyX19ibG9jayB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAubG9nby1jb250YWluZXItLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmxvZ28tY29udGFpbmVyLS13aGl0ZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc21hbGxlci1tYXJnaW47XHJcblxyXG5cdFx0XHQubG9nbyB7XHJcblx0XHRcdFx0d2lkdGg6IDMwMHB4O1xyXG5cdFx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdFx0fVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tYWluLWhlYWRlcl9fY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgLy8gZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyAgXHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFpbi1oZWFkZXJfX2Jsb2NrIHtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG5cclxufSAvLyBFTkQ6IG1lZGlhIHF1ZXJ5IFxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTdWJtZW51XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogU3VibWVudSBidXR0b24uXHJcbiAqL1xyXG5cclxuLnN1Ym1lbnUtYnV0dG9uIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gIC8vID4gLmlubGluZS1pY29uIHtcclxuXHJcbiAgLy8gfVxyXG5cclxuICAvLyAmLmlzLWFjdGl2ZSA+IC5pbmxpbmUtaWNvbiB7XHJcblxyXG4gIC8vIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTdWJtZW51IGNvbnRhaW5lci5cclxuICovXHJcblxyXG4uc3VibWVudS1jb250YWluZXIge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU3VibWVudS5cclxuICovXHJcblxyXG4vLyAuc3VibWVudSB7XHJcblxyXG4vLyB9XHJcblxyXG5cclxuLyoqXHJcbiAqIFN1Ym1lbnUgaXRlbS5cclxuICovXHJcblxyXG4vLyAuc3VibWVudSA+IC5tZW51LWl0ZW0ge1xyXG5cclxuLy8gfVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTdWJtZW51IGl0ZW0gbGluay5cclxuICovXHJcblxyXG4vLyAuc3VibWVudSA+IC5tZW51LWl0ZW0gPiBhIHtcclxuXHJcbi8vIH1cclxuIiwiLmJhcjEsIFxyXG4uYmFyMixcclxuLmJhcjMge1xyXG4gIHdpZHRoOiAzNXB4O1xyXG4gIGhlaWdodDogNXB4O1xyXG4gIG1hcmdpbjogNnB4IDA7XHJcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTtcclxufVxyXG5cclxuLmlzLWFjdGl2ZSAuYmFyMSB7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoLTlweCwgN3B4KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgtOXB4LCA3cHgpO1xyXG59XHJcblxyXG4uaXMtYWN0aXZlIC5iYXIyIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uaXMtYWN0aXZlIC5iYXIzIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKC04cHgsIC03cHgpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoLThweCwgLTdweCk7XHJcbn1cclxuXHJcbi5tYWluLW5hdmlnYXRpb24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLW5hdi1ncmFkaWVudDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHotaW5kZXg6IDkwO1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuXHJcbiAgLm1haW4tbWVudSB7XHJcbiAgICAubWVudS1pdGVtIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdoZWFkaW5nJyk7XHJcbiAgICAgICAgZm9udC1zaXplOiBtYXAtZ2V0KCRmb250LXNpemUsICdtZW51LWxpbmsnKTtcclxuICAgICAgICBmb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHQsICdib2xkJyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpOyAgICBcclxuICAgICAgICAgIHRleHQtc2hhZG93OiAycHggMnB4ICRjb2xvci1ibHVlO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3Qge1xyXG4gICAgbWFyZ2luLXRvcDogODBweDtcclxuXHJcblxyXG4gICAgLm1haW4tbmF2aWdhdGlvbl9fY29udGFjdC10aXRsZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tbmF2aWdhdGlvbl9fY29udGFjdC10ZWFzZXIgcCB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFpbi1uYXZpZ2F0aW9uX19sZWZ0LWNvbHVtbiB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIC5icmFuY2hlcy1tZW51X190cmlnZ2VyIHtcclxuXHJcbiAgICAgICYuY2hldnJvbjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTsgXHJcbiAgICAgICAgdG9wOiAxNnB4O1xyXG4gICAgICB9ICBcclxuXHJcbiAgICAgICYuY2hldnJvbi5vcGVuOmFmdGVyIHtcclxuXHJcbiAgICAgICAgdG9wOiAyMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubWFpbi1uYXZpZ2F0aW9uLmlzLWFjdGl2ZSB7XHJcbiAgcGFkZGluZzogMTUwcHggMTBweCA3MHB4O1xyXG4gIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XHJcbiAgb3BhY2l0eTogMTtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cclxuICAubGFuZ3VhZ2Utc3dpdGNoIHtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG4ubWFpbi1uYXZpZ2F0aW9uOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmpzLW5hdmlnYXRpb24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWFyZ2luOiAkbWFyZ2luIDA7XHJcblxyXG4gIGEge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLWl0ZW0ge1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmcgNXB4O1xyXG4gICAgdHJhbnNpdGlvbjogMC4ycyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5jaGUtY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzLWljb24ge1xyXG4gICAgICAvLyBtYXgtd2lkdGg6IDY0cHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtdGl0bGUge1xyXG4gICAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdkZWZhdWx0Jyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodCwgJ25vcm1hbCcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2hldnJvbjphZnRlciB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IDExcHg7XHJcbiAgbGVmdDogMC43NWVtO1xyXG4gIHdpZHRoOiAwLjQ1ZW07XHJcbiAgaGVpZ2h0OiAwLjQ1ZW07XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xyXG4gIGJvcmRlci13aWR0aDogMC4wOGVtIDAuMDhlbSAwIDA7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICBjb250ZW50OiAnJztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHotaW5kZXg6IC0xO1xyXG59XHJcblxyXG4uY2hldnJvbi5vcGVuOmFmdGVyIHtcclxuICB0b3A6IDE0cHg7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICAuanMtbmF2aWdhdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gIH1cclxuXHJcbiAgLm1haW4tbmF2aWdhdGlvbiB7XHJcbiAgICAubWFpbi1uYXZpZ2F0aW9uX19sZWZ0LWNvbHVtbiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgLmJyYW5jaGVzLW1lbnVfX3RyaWdnZXIge1xyXG5cclxuICAgICAgICAmLmNoZXZyb246YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH0gIFxyXG5cclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFpbi1uYXZpZ2F0aW9uX19taWRkbGUtY29sdW1uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAubWFpbi1uYXZpZ2F0aW9uX19tYWluLW1lbnUge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcblxyXG4gIC5tYWluLW5hdmlnYXRpb25fX2NvbnRhY3Qge1xyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tYWluLW5hdmlnYXRpb25fX2JyYW5jaGVzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXJnaW46ICRzbWFsbGVyLW1hcmdpbiAwIDUwcHg7XHJcblxyXG4gICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaXRlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7ICBcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgIFxyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtaWNvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMXB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm1haW4tbmF2aWdhdGlvbl9fYnJhbmNoZXMtdGl0bGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC1zaXplOiBtYXAtZ2V0KCRmb250LXNpemUsICdoMycpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH0gLy8gZW5kIGJyYW5jaGVzIGl0ZW1cclxuXHJcbiAgfSAvLyBlbmQgbmF2aWdhdGlvbiBicmFuY2hlc1xyXG5cclxufSAvLyBFTkQ6IG1lZGlhIHF1ZXJ5XHJcbiIsIiRmb290ZXItaW5zZXQtc2hhZG93OiBpbnNldCAwIDAgMTBweCAwIHJnYmEoMCwwLDAsMC4wNik7XHJcblxyXG4uZm9vdGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3gtc2hhZG93OiAkZm9vdGVyLWluc2V0LXNoYWRvdztcclxuXHJcbiAgLmZvb3Rlcl9fc29jaWFsLWljb25zIHN2ZyB7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1vcmFuZ2UtbWFpbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb290ZXJfX2Jsb2NrIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuZm9vdGVyX19ibG9jay0tZXh0cmEtcGFkZGluZyB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmZvb3Rlcl9fYmxvY2stY29udGFjdCB7XHJcbiAgICAgIC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmZvb3Rlcl9fYmxvY2stc29jaWFscyB7XHJcblxyXG4gICAgICAuZm9vdGVyX19zb2NpYWwtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICYuZm9vdGVyX19ibG9jay1zaXRlbWFwIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuXHJcbiAgICAmLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQge1xyXG5cclxuICAgICAgJi5ibG9jay1hcHBvaW50bWVudC0tZGVza3RvcCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYmxvY2stYXBwb2ludG1lbnQtLW1vYmlsZSxcclxuICAgICAgJi5ibG9jay1hcHBvaW50bWVudC0tdGFibGV0IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMyxcclxuICAgICAgcCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogMnB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMThweDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzM3B4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jay10aXRsZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlcl9fYmxvY2stY29udGVudCB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlLW1haW47XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mb290ZXJfX2Jsb2NrLWNvcHlyaWdodC13cmFwcGVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMTAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XHJcbiAgICBjb2xvcjogJGNvbG9yLW9mZmJsYWNrO1xyXG5cclxuICAgIC5mb290ZXJfX2Jsb2NrLWNvcHlyaWdodCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb290ZXJfX2Jsb2NrLXByaXZhY3kge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcclxuICAgICAgd2lkdGg6IDMzJTtcclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGZvbnQoMTRweCwgMTZweCk7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTIwcHg7XHJcbiAgICBsZWZ0OiA2MiU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiA2MCU7XHJcbiAgICBoZWlnaHQ6IDEzMCU7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2UtZ3JhZGllbnQ7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICB9XHJcblxyXG4gIC5jaGV2cm9uOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMzAwcHgpIHtcclxuICAuZm9vdGVyIHtcclxuICAgIC5mb290ZXJfX2JhY2tncm91bmQge1xyXG4gICAgICBsZWZ0OiA2MCU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogNjAlO1xyXG4gICAgICBoZWlnaHQ6IDEzMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxODAwcHgpIHtcclxuXHQuZm9vdGVyIHtcclxuICBcclxuXHQgIC5mb290ZXJfX2JhY2tncm91bmQge1xyXG5cdFx0bGVmdDogNjUlO1xyXG5cdCAgfVxyXG4gIFxyXG5cdCAgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0LXdyYXBwZXIge1xyXG5cdFx0cGFkZGluZzogMjBweCAwcHg7XHJcblx0ICB9XHJcbiAgXHJcblx0fVxyXG4gIFxyXG4gIH1cclxuICBcclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTUwMHB4KSB7XHJcbiAgLmZvb3RlciB7XHJcblxyXG4gICAgLmZvb3Rlcl9fYmFja2dyb3VuZCB7XHJcbiAgICAgIGxlZnQ6IDY3JTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciB7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMHB4O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xyXG4gIC5mb290ZXIge1xyXG5cclxuICAgIC5mb290ZXJfX2JhY2tncm91bmQge1xyXG4gICAgICBsZWZ0OiA3MCU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xyXG4gIC5mb290ZXIge1xyXG5cclxuICAgIC5mb290ZXJfX2JhY2tncm91bmQge1xyXG4gICAgICBsZWZ0OiA2OSU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuICBhbmQgKG1pbi13aWR0aDogMTAzMHB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuICBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTAzMHB4KSB7XHJcbiAgLmZvb3Rlcl9fYmxvY2sge1xyXG4gICAgJi5mb290ZXJfX2Jsb2NrLWNvbnRhY3Qge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcclxuXHJcbiAgLmZvb3RlciB7XHJcbiAgICAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcclxuICAgICAgei1pbmRleDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcclxuICAgICAgJi5zaG93LWRlc2t0b3Age1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jay1hcHBvaW50bWVudC5ibG9jay1hcHBvaW50bWVudC0tdGFibGV0IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0yMHB4O1xyXG4gICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDExMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMzAlO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIyNWRlZywgI2ZmOTI1NiAwJSwgI2ZmYTEwNyAxMDAlKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5mb290ZXJfX2Jsb2NrLXByaXZhY3kge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hcHBvaW50bWVudC13cmFwcGVyLS1tb2JpbGUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jayB7XHJcbiAgICAgICYuZm9vdGVyX19ibG9jay0tZXh0cmEtcGFkZGluZyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJi5ibG9jay1hcHBvaW50bWVudC0tZGVza3RvcCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5ibG9jay1hcHBvaW50bWVudC0tdGFibGV0IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgcGFkZGluZzogNTBweDtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTUwcHg7XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMsXHJcbiAgICAgICAgcCxcclxuICAgICAgICAuZm9vdGVyX19ibG9jay1jb250ZW50LFxyXG4gICAgICAgIC5idXR0b24ge1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcclxuXHJcbiAgLmZvb3RlciB7XHJcbiAgICAuZm9vdGVyX19ibG9jayB7XHJcblxyXG4gICAgICAuZm9vdGVyX19ibG9jay1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZvb3Rlcl9fYmxvY2stY29udGFjdCB7XHJcblxyXG4gICAgICAgIC5mb290ZXJfX2Jsb2NrLWNvbnRlbnQge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZvb3Rlcl9fYmxvY2stc2l0ZW1hcCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuY2hldnJvbjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG59IC8vIGVuZCBtZWRpYSBxdWVyeVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICAvLyBGb290ZXJcclxuXHJcbiAgLmZvb3RlciB7XHJcblxyXG4gICAgLmZvb3Rlcl9fYmxvY2sge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgJi5mb290ZXJfX2Jsb2NrLWNvbnRhY3Qge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZm9vdGVyX19ibG9jay1zb2NpYWxzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZvb3Rlcl9fYmxvY2stc2l0ZW1hcCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZm9vdGVyX19ibG9jay1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZvb3Rlcl9fYmxvY2stYXBwb2ludG1lbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgICAgJi5ibG9jay1hcHBvaW50bWVudC0tbW9iaWxlLFxyXG4gICAgICAgICYuYmxvY2stYXBwb2ludG1lbnQtLXRhYmxldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4ICRwYWRkaW5nO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgICAgICAuZm9vdGVyX19iYWNrZ3JvdW5kIHtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcclxuICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYmxvY2stYXBwb2ludG1lbnQtLW1vYmlsZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYmxvY2stYXBwb2ludG1lbnQtLXRhYmxldCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyX19ibG9jay1jb3B5cmlnaHQtd3JhcHBlciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgIC5mb290ZXJfX2Jsb2NrLWFwcG9pbnRtZW50LXdyYXBwZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICYuYXBwb2ludG1lbnQtd3JhcHBlci0tbW9iaWxlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmZvb3Rlcl9fYmxvY2stY29weXJpZ2h0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCA0NXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLmZvb3Rlcl9fYmxvY2stcHJpdmFjeSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jaGV2cm9uOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8gRU5EOiBmb290ZXJcclxuXHJcbn0gLy8gRU5EOiBtZWRpYSBxdWVyeVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMHB4KSBhbmQgKG1heC13aWR0aDogNzY5cHgpIHtcclxuICAuZm9vdGVyX19jZXJ0aWZpY2F0ZSAgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgLmZvb3Rlcl9fY2VydGlmaWNhdGVfX21vYmlsZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiA3NXB4O1xyXG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzcwcHgpIHtcclxuICAuZm9vdGVyX19jZXJ0aWZpY2F0ZV9fbW9iaWxlICB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAuZm9vdGVyX19jZXJ0aWZpY2F0ZSB7XHJcbiAgICBtYXgtd2lkdGg6IDc1cHg7XHJcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgU2VjdGlvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4uanMtcGFnZS1sb2FkIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uc2VjdGlvbl9faW50cm8td3JhcHBlciB7XHJcbiAgbWF4LXdpZHRoOiA2MTBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLnNlY3Rpb24tLWFsaWduLWNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAuc2VjdGlvbl9faW50cm8td3JhcHBlciB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICB9IFxyXG59XHJcblxyXG4uc2VjdGlvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICYudGV4dC1pbWFnZSxcclxuICAmLnNlY3Rpb24tbmV3cyxcclxuICAmLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCxcclxuICAmLnNlY3Rpb24tdGFicyxcclxuICAmLmNvbnRhY3QtZm9ybSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICB9XHJcbiAgXHJcbiAgJi50ZWFzZXJzX193cmFwcGVyIHtcclxuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xyXG4gIH1cclxuXHJcbiAgJi5zZWN0aW9uLXNlY3RvcnMsXHJcbiAgJi5zZWN0aW9uLXNsaWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICB9XHJcblxyXG4gICYudGVhc2Vyc19fd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgfVxyXG5cclxuICAmLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCB7XHJcbiAgICBtYXJnaW46IDIwMHB4IDAgMjAwcHg7XHJcbiAgfVxyXG5cclxuICAmLnNlY3Rpb24tbmV3cyB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICB9XHJcblxyXG4gICYuc2VjdGlvbi1zbGlkZXIge1xyXG4gICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi5zZWN0aW9uOmZpcnN0LW9mLXR5cGUge1xyXG4gICY6bm90KC5zZWN0aW9uLXNsaWRlcikge1xyXG4gICAgbWFyZ2luLXRvcDogMjAwcHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uOmxhc3Qtb2YtdHlwZSB7XHJcbiAgJi50ZXh0LWltYWdlIHtcclxuICAgICY6bm90KC5zZWN0aW9uLWFydGljbGUpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDE1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cclxuICAuc2VjdGlvbiB7XHJcbiAgICAmLnNlY3Rpb24tc2VjdG9ycywgXHJcbiAgICAmLnNlY3Rpb24tc2xpZGVyIHtcclxuICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5zZWN0aW9uX19kZWZhdWx0LXRleHQge1xyXG4gICAgICBtYXJnaW46IDEwMHB4IDAgMTAwcHg7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAmLnRlYXNlcnNfX3dyYXBwZXIge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxNTBweDtcclxuICAgIH1cclxuICB9XHJcbn0gXHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG5cclxuICAuc2VjdGlvbiB7XHJcbiAgICAmLnNlY3Rpb24tc2VjdG9ycyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LWltYWdlLFxyXG4gICAgJi50ZWFzZXJzX193cmFwcGVyLFxyXG4gICAgJi5zZWN0aW9uLW5ld3MsXHJcbiAgICAmLnNlY3Rpb25fX2RlZmF1bHQtdGV4dCxcclxuICAgICYuc2VjdGlvbi10YWJzLFxyXG4gICAgJi5jb250YWN0LWZvcm0ge1xyXG4gICAgICBtYXJnaW4tdG9wOiA3MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuc2VjdGlvbi5zZWN0aW9uX19kZWZhdWx0LXRleHQge1xyXG4gICAgcGFkZGluZzogNTBweCA2MHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xyXG5cclxuICAvLyBEZWZhdWx0IHRleHQgZWxlbWVudFxyXG5cclxuICAuc2VjdGlvbl9fZGVmYXVsdC10ZXh0IHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgfVxyXG5cclxuICAvLyBFTkQ6IGRlZmF1bHQgdGV4dCBlbGVtZW50XHJcblxyXG59IC8vIGVuZCBtZWRpYSBxdWVyeVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHJcbiAgLnNlY3Rpb246Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAmOm5vdCguc2VjdGlvbi1zbGlkZXIpIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFNlY3Rpb25zXHJcbiBcclxuICAuc2VjdGlvbiB7XHJcblxyXG4gICAgJi5zZWN0aW9uLS1zZXQtbWFyZ2luIHtcclxuICAgICAgbWFyZ2luOiA1MHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWN0aW9uX19kZWZhdWx0LXRleHQge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZWFzZXJzX193cmFwcGVyLCBcclxuICAgICYuc2VjdGlvbl9fZGVmYXVsdC10ZXh0IHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbl9faW50cm8td3JhcHBlciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC8vIEVORDogc2VjdGlvbnNcclxuXHJcbn0gLy8gZW5kIG1lZGlhIHF1ZXJ5XHJcbiIsIi50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtYXgtd2lkdGg6IDEyNTBweDtcclxuICBtYXJnaW46IGF1dG87XHJcblxyXG4gIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lcixcclxuICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDA7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGVudCB7XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnNlY3Rpb24udGV4dC1pbWFnZTpub3QoLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24pIHtcclxuICAuc2xpZGVzaG93IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1heC1oZWlnaHQ6IDU1MHB4O1xyXG5cclxuICAgIC5vd2wtc3RhZ2UsIC5vd2wtaXRlbXtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWltYWdlX19zbGlkZXItaXRlbSB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IHtcclxuICAgIC5zbGlkZXNob3cge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IHtcclxuICAgIC5zbGlkZXNob3cge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi50ZXh0LWltYWdlLnRleHQtaW1hZ2UtLWZpcnN0LXNlY3Rpb24ge1xyXG4gIGltZyB7XHJcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IHtcclxuICAmLnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IHtcclxuICAgIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4udGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQge1xyXG4gICYudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQge1xyXG4gICAgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogODBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4uc2VjdGlvbi1hcnRpY2xlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IHtcclxuICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogLTIwcHg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDUwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KXtcclxuXHJcbiAgLnNlY3Rpb24tYXJ0aWNsZS50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCB7XHJcbiAgICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zZWN0aW9uLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tcG9zaXRpb24tcmlnaHQudGV4dC1pbWFnZS0tZmlyc3Qtc2VjdGlvbiB7XHJcbiAgICAmLnNsaWRlci13cmFwcGVyIHtcclxuICAgICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG5cclxuICAgIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG5cclxuICAudGV4dC1pbWFnZV9fdXNwLWxpc3Qge1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tYXJ0aWNsZSB7XHJcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuc2VjdGlvbi1hcnRpY2xlIHtcclxuICAgIC50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAudGV4dC1pbWFnZV9fdXNwLWxpc3Qge1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAudGV4dC1pbWFnZV9fdXNwLWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodCB7XHJcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICAgIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLWxlZnQge1xyXG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG4gICAgICAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuc2VjdGlvbi1hcnRpY2xlLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0IHtcclxuXHJcbiAgICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xyXG4gIC50ZXh0LWltYWdlIHtcclxuICAgIC50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgICAgICAudGV4dC1pbWFnZV9fc2xpZGVyLWl0ZW0ge1xyXG5cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XHJcblxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bm90KC50ZXh0LWltYWdlLS1maXJzdC1zZWN0aW9uKSB7XHJcbiAgICAgIC50ZXh0LWltYWdlX19zbGlkZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWltYWdlX19zbGlkZXItaXRlbSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWltYWdlX19zbGlkZXIge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAzNTBweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0IHtcclxuICAgICYudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQge1xyXG4gICAgICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgbGVmdDogaW5pdGlhbDtcclxuICAgICAgICAgIHJpZ2h0OiBpbml0aWFsO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZSB7XHJcbiAgICAmLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQge1xyXG4gICAgICAmLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0IHtcclxuICAgICAgICAudGV4dC1pbWFnZV9fc2xpZGVyIHtcclxuICAgICAgICAgIC50ZXh0LWltYWdlX19zbGlkZXItaXRlbSB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZSB7XHJcbiAgICAmLnRleHQtaW1hZ2UudGV4dC1pbWFnZS0tYWxpZ24tcmlnaHQge1xyXG4gICAgICAmLnRleHQtaW1hZ2UtLXBvc2l0aW9uLWxlZnQge1xyXG4gICAgICAgIC50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZXh0LWltYWdlX19zbGlkZXIge1xyXG4gICAgICAgICAgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlIHtcclxuICAgICYudGV4dC1pbWFnZS50ZXh0LWltYWdlLS1hbGlnbi1yaWdodFxyXG4gICAgJi50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodCB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHJcbiAgICAudGV4dC1pbWFnZV9faW1hZ2UtY29udGFpbmVyLFxyXG4gICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0LnRleHQtaW1hZ2UtLWFsaWduLXJpZ2h0LFxyXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodC50ZXh0LWltYWdlLS1hbGlnbi1yaWdodCB7XHJcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICAgIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm93bC1uYXYge1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLFxyXG4gIC5zZWN0aW9uLnNlY3Rpb24tdGFic3tcclxuICAgIC5vd2wtbmF2IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cclxuICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblxyXG5cclxuICAgIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgLnRleHQtaW1hZ2VfX3NsaWRlci1pdGVtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbWFnZS0tcG9zaXRpb24tbGVmdCB7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblxyXG4gICAgICAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1yaWdodCB7XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG5cclxuICAgICAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGV4dC1pbWFnZV9fc2xpZGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRU5EOiB0ZWFzZXJzIGVsZW1lbnRcclxuXHJcbiAgLnRleHQtaW1hZ2VfX3RleHQtY29udGFpbmVyLFxyXG4gIC50ZXh0LWltYWdlX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG59IC8vIGVuZCBtZWRpYSBxdWVyeVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHJcbiAgLy8gVGV4dCBJbWFnZSBFbGVtZW50XHJcbiAgLnRleHQtaW1hZ2Uge1xyXG4gICAgLnRleHQtaW1hZ2VfX3dyYXBwZXIge1xyXG4gICAgICAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX2ltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQtaW1hZ2VfX3VzcC1saXN0IHtcclxuXHJcbiAgICAgIC50ZXh0LWltYWdlX191c3AtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlLS1wb3NpdGlvbi1sZWZ0IHtcclxuXHJcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHJcbiAgICAgIC50ZXh0LWltYWdlX190ZXh0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRleHQtaW1hZ2UtLXBvc2l0aW9uLXJpZ2h0IHtcclxuXHJcbiAgICAudGV4dC1pbWFnZV9fd3JhcHBlciB7XHJcblxyXG4gICAgICAudGV4dC1pbWFnZV9fdGV4dC1jb250YWluZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuIiwiLnNlY3Rpb24ge1xyXG5cclxuICAmLnNlY3Rpb24tc2VjdG9ycyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xyXG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1saWdodGJsdWU7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAuc2VjdG9yc19fY29udGVudC1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDI1JTtcclxuICAgIHBhZGRpbmc6ICRiaWdnZXItcGFkZGluZztcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAgIC5zZWN0b3JzLWhlYWRpbmcge1xyXG4gICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdG9yc19fc2VjdG9ycy1jb250YWluZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgd2lkdGg6IDc1JTtcclxufVxyXG5cclxuLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgd2lkdGg6IDI1JTtcclxuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5jaGUtY29sb3IpO1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICB9XHJcblxyXG4gICYubWFpbi1zZWN0b3Ige1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG5cclxuICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLXdyYXBwZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogNjBweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4uc2VjdGlvbi1zZWN0b3JzLS1zaG93LXNlY3RvcnMge1xyXG5cclxuICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluazpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxuXHJcbiAgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xyXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogJGJpZ2dlci1wYWRkaW5nIDAgNDVweDtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayB7XHJcbiAgICB3aWR0aDogMjIlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcclxuICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnN7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkge1xyXG4gIC5zZWN0aW9uLnNlY3Rpb24tc2VjdG9yc3tcclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogMCA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XHJcbiAgLnNlY3Rpb24uc2VjdGlvbi1zZWN0b3JzIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tc2VjdG9ycyB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgXHJcbiAgICAuc2VjdG9yc19fc2VjdG9ycy1jb250YWluZXIge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0b3JzX19jb250ZW50LXdyYXBwZXIge1xyXG5cclxuICAgICAgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDMwJTtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG5cclxuICAgICAgICAuc2VjdG9ycy1oZWFkaW5nIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rIHtcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG5cclxuICAgICAgICAmLm1haW4tc2VjdG9yOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xyXG4gIC5zZWN0aW9uLXNlY3RvcnMge1xyXG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgIC5zZWN0b3JzX19zZWN0b3JzLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuXHJcbiAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWN0b3JzX19zZWN0b3ItaXRlbS1saW5rIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAgICAgJi5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0td3JhcHBlciB7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tc2VjdG9ycy0tc2hvdy1zZWN0b3JzIHtcclxuXHJcbiAgICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIHtcclxuICAgICAgLnNlY3RvcnNfX3NlY3Rvci1pdGVtLWxpbmsge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgJi5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHJcbiAgLnNob3ctc2VjdG9ycy0tc2hvdy1tb2JpbGUge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnNob3ctc2VjdG9ycy0taGlkZS1tb2JpbGUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICAuc2VjdGlvbi5zZWN0aW9uLXNlY3RvcnMge1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyLFxyXG4gICAgLnNlY3RvcnNfX3NlY3RvcnMtY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3RvcnNfX3NlY3RvcnMtY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdG9yc19fc2VjdG9yLWl0ZW0tbGluayB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG5cclxuICAgICAgJi5tYWluLXNlY3RvcjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2hvdy1zZWN0b3JzLS1zaG93LW1vYmlsZSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyBcclxuICAgICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgICAgbWF4LXdpZHRoOiAxNzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2hvdy1zZWN0b3JzLS1oaWRlLW1vYmlsZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tc2VjdG9ycyB7XHJcbiAgICAuc2VjdG9yc19fY29udGVudC13cmFwcGVyIHtcclxuICAgICAgLnNlY3RvcnNfX3NlY3RvcnMtY29udGFpbmVyIHtcclxuXHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlY3RvcnNfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG4iLCIkdGFicy1ib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMzYsIDY5LCA3MywgMC4xNCk7XHJcblxyXG4uc2VjdGlvbi10YWJzX193cmFwcGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgcGFkZGluZzogJHBhZGRpbmcgMDtcclxuXHJcbiAgLnNlY3Rpb24tdGFic19fdGFicy1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMjUlO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3Itb3JhbmdlLXRhYnM7XHJcblxyXG4gICAgXHJcbiAgICAudGFicy1saXN0IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YWJzLWxpc3QtaXRlbSwgXHJcbiAgLm1vYmlsZS1hY2NvcmRpb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZzogMTBweCAxN3B4O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAtM3B4O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIuNXB4O1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1vcmFuZ2UtdGFicztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLXRhYjtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRjb2xvci1vcmFuZ2UtdGFicztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAubW9iaWxlLWFjY29yZGlvbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnaGVhZGluZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0LCAnYm9sZCcpO1xyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLXRhYjtcclxuICAgIH1cclxuICB9IFxyXG5cclxuICAuc2VjdGlvbi10YWJzX190YWItaW1hZ2VzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAuc2VjdGlvbi10YWJzX19zaW5nbGUtaW1hZ2Uge1xyXG4gICAgICBtYXgtd2lkdGg6IDQ4JTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IHtcclxuICAgIC50YWItc2luZ2xlLWNvbnRlbnQge1xyXG4gICAgICBtYXJnaW46IDEwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLXNpbmdsZV9fbGlzdHMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAkbWFyZ2luO1xyXG4gICAgfVxyXG5cclxuICAgIC50YWItc2luZ2xlX19saXN0IHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICAgIC50YWItc2luZ2xlX19saXN0LXRpdGxlIHtcclxuICAgICAgICBmb250LXdlaWdodDogbWFwLWdldCgkZm9udC13ZWlnaHQsICdib2xkJyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YWItc2luZ2xlX19saXN0LWJ1bGxldHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YWItc2luZ2xlX19saXN0LXNpbmdsZS1idWxsZXQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgIC50YWItc2luZ2xlX19saXN0LWljb24ge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgbWF4LWhlaWdodDogMzBweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnRhYi1zaW5nbGVfX2xpc3QtcHJvcyB7XHJcbiAgICAgICAgLnRhYi1zaW5nbGVfX2xpc3Qtc2luZ2xlLWJ1bGxldCB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi50YWItc2luZ2xlX19saXN0LWNvbnMge1xyXG4gICAgICAgIC50YWItc2luZ2xlX19saXN0LXNpbmdsZS1idWxsZXQge1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1yZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi10YWJzX19jb250ZW50LWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogNzUlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIlO1xyXG4gICAgcGFkZGluZzogNTBweCAxMDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBib3gtc2hhZG93OiAkdGFicy1ib3gtc2hhZG93O1xyXG5cclxuICAgIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uc2VjdGlvbi10YWJzX19zaW5nbGUtaW1hZ2UtY29udGFpbmVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHJcbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciB7XHJcblxyXG4gICAgLnNlY3Rpb24tdGFic19fdGFicy1jb250YWluZXIge1xyXG4gICAgICB3aWR0aDogMzAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLXRhYnNfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59IFxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xyXG4gIC5zZWN0aW9uLXRhYnNfX3dyYXBwZXIge1xyXG4gICAgXHJcbiAgICAuc2VjdGlvbi10YWJzX190YWJzLWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb24tdGFic19fY29udGVudC1jb250YWluZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG5cclxuICAgICAgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQge1xyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFiLXdyYXBwZXIge1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLW9yYW5nZS10YWJzO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLW9yYW5nZS10YWJzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS1hY2NvcmRpb24ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLXRhYjtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkY29sb3Itb3JhbmdlLXRhYnM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgYm94LXNoYWRvdzogJHRhYnMtYm94LXNoYWRvdztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgLnNlY3Rpb24tdGFic19fd3JhcHBlciB7XHJcblxyXG4gICAgLnNlY3Rpb24tdGFic19fY29udGVudC1jb250YWluZXIge1xyXG5cclxuICAgICAgLnNlY3Rpb24tdGFic19fdGFiLWNvbnRlbnQuYWN0aXZlIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLnNlY3Rpb24tdGFic19fdGFiLWltYWdlcyB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG5cclxuICAgICAgLnNlY3Rpb24tdGFic19fc2luZ2xlLWltYWdlIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5zZWN0aW9uLXRhYnNfX3RhYi1jb250ZW50IHtcclxuXHJcbiAgICAgIC50YWItc2luZ2xlX19saXN0cyB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgLnRhYi1zaW5nbGVfX2xpc3QtcHJvcyB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhYi1zaW5nbGVfX2xpc3Qge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIlxyXG4uY29udGFjdC1mb3JtIHtcclxuXHJcbiAgJi5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtb3JhbmdlIHtcclxuXHJcbiAgICAuY29udGFjdC1mb3JtX19jb250YWN0LWluZm8sIFxyXG4gICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlLWdyYWRpZW50O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5jb250YWN0LWZvcm0tLWJhY2tncm91bmQtZ3JlZW4ge1xyXG5cclxuICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIHtcclxuXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbywgXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtZm9ybS13cmFwcGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItbGlnaHRibHVlO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblxyXG4gICAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUsXHJcbiAgICAgICAgLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCxcclxuICAgICAgICAuaGVhZGluZy5oZWFkaW5nLS13aGl0ZSxcclxuICAgICAgICBmb3JtIGlucHV0ICB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLW9mZmJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JtIGlucHV0LFxyXG4gICAgICAgIGZvcm0gdGV4dGFyZWEgeyBcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLW9mZmJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgICAgICAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLW9mZmJsYWNrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlLWdyYWRpZW50O1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAkb3JhbmdlLWJ1dHRvbi1zaGFkb3c7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udGFjdC1mb3JtIHtcclxuICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIHtcclxuICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLWNvbnRhaW5lciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNjVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIHtcclxuICAgICAgLmNvbnRhY3QtZm9ybV9faW5mby1jb250ZW50LXdyYXBwZXIge1xyXG4gICAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tY29udGVudCB7XHJcbiAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1vZmZibGFjaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIHsgXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyB7XHJcbiAgICAgIHdpZHRoOiAzNCU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblxyXG4gICAgICAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nOiAkYmlnZ2VyLXBhZGRpbmcgMjBweDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAgICAgICAuY29udGFjdC1mb3JtX19pbmZvLWNvbnRlbnQge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcclxuXHJcbiAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1heC13aWR0aDogMjFweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUsXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tZW1haWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2hlYWRpbmcnKTtcclxuICAgICAgICBmb250LXNpemU6IG1hcC1nZXQoJGZvbnQtc2l6ZSwgJ2gzJyk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJGxpbmUtaGVpZ2h0LCAnaDMnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3QtZm9ybV9faW5mby1waG9uZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIge1xyXG4gICAgICB3aWR0aDogNjQlO1xyXG4gICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblxyXG4gICAgICAuaGVhZGluZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblxyXG4gIC5jb250YWN0LWZvcm0ge1xyXG4gICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIge1xyXG4gICAgICAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XHJcbiAgICAgICAgLmhlYWRpbmcge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIge1xyXG4gICAgICAgICAgcGFkZGluZzogNTBweCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cclxuXHJcbiAgLmNvbnRhY3QtZm9ybSB7XHJcbiAgICBcclxuICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtY29udGFpbmVyIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cclxuICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1mb3JtLXdyYXBwZXIge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNtYWxsZXItbWFyZ2luO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlcixcclxuICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvLFxyXG4gICAgICAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3QtZm9ybV9faW5mby1pbWFnZSB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250YWN0LWZvcm1fX2NvbnRhY3QtaW5mbyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gXHJcbiAgLmNvbnRhY3QtZm9ybSB7XHJcblxyXG4gICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1jb250YWluZXIge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblxyXG4gICAgICAuY29udGFjdC1mb3JtX19jb250YWN0LWZvcm0td3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3QtZm9ybV9fY29udGFjdC1pbmZvIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tY29udGVudC13cmFwcGVyIHtcclxuICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0LWZvcm1fX2luZm8tcGhvbmUsXHJcbiAgICAgICAgLmNvbnRhY3QtZm9ybV9faW5mby1lbWFpbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogNDclO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDElO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogN3B4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDM4cHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGFjdC1mb3JtX19pbmZvLWltYWdlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG59XHJcbiIsIiRib3gtc2hhZG93OiAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuXHJcbi5zZWN0aW9uLnRlYXNlcnNfX3dyYXBwZXIgeyAgXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgkY29sb3Itd2hpdGUsICRjb2xvci13aGl0ZSA2OS45JSwgJGNvbG9yLWxpZ2h0Ymx1ZSA3MC4xJSwgJGNvbG9yLWxpZ2h0Ymx1ZSAxMDAlKTtcclxuICBiYWNrZ3JvdW5kOiAtby1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDY5LjklLCAkY29sb3ItbGlnaHRibHVlIDcwLjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpO1xyXG4gIGJhY2tncm91bmQ6IC1tb3otcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgkY29sb3Itd2hpdGUsICRjb2xvci13aGl0ZSA2OS45JSwgJGNvbG9yLWxpZ2h0Ymx1ZSA3MC4xJSwgJGNvbG9yLWxpZ2h0Ymx1ZSAxMDAlKTtcclxuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDY5LjklLCAkY29sb3ItbGlnaHRibHVlIDcwLjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpOyBcclxuXHJcblxyXG4gIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIHtcclxuICAgIFxyXG4gICAgLnRlYXNlcnNfX3NsaWRlci1pdGVtIHtcclxuICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogMjk1cHg7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAgICYuaXRlbS0tb2Zmc2V0IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGVhc2Vyc19fc2xpZGVyLWl0ZW0td3JhcCB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdztcclxuICAgICAgfVxyXG5cclxuICAgICAgc3ZnIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50ZWFzZXJzX19zbGlkZXItaXRlbS1oZWFkaW5nIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcblxyXG4gIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyLCBcclxuICAudGVhc2Vyc19fc2xpZGVyLWl0ZW0ge1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgfVxyXG59XHJcbiIsIiR0ZWFzZXItYm94LXNoYWRvdzogMCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4wNik7XHJcblxyXG5cclxuLnNlY3Rpb24uc2VjdGlvbi10ZWFtIHsgIFxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDQ5LjklLCAkY29sb3ItbGlnaHRibHVlIDUxLjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpO1xyXG4gIGJhY2tncm91bmQ6IC1vLXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNDkuOSUsICRjb2xvci1saWdodGJsdWUgNTEuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSk7XHJcbiAgYmFja2dyb3VuZDogLW1vei1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDQ5LjklLCAkY29sb3ItbGlnaHRibHVlIDUxLjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpO1xyXG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNDkuOSUsICRjb2xvci1saWdodGJsdWUgNTEuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSk7IFxyXG59XHJcblxyXG4udGVhc2Vyc19fc2xpZGVyLWl0ZW0taW1hZ2Uge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogMTAwcHg7XHJcbiAgbWF4LWhlaWdodDogMTAwcHg7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcblxyXG4udGVhc2Vyc19fc2xpZGVyLWl0ZW0tZnVuY3Rpb24ge1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi50ZWFzZXJzX19zbGlkZXItaXRlbS1jb250YWN0IHtcclxuICBtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4uc2VjdGlvbi10ZWFtIHtcclxuXHJcbiAgLnRlYXNlcnNfX3NsaWRlci1jb250YWluZXIge1xyXG4gICAgLnRlYXNlcnNfX3NsaWRlci1pdGVtIHtcclxuICAgICAgbWF4LXdpZHRoOiAyOTVweDtcclxuICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcblxyXG4gICAgICAudGVhc2Vyc19fc2xpZGVyLWl0ZW0td3JhcCB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3gtc2hhZG93OiAkdGVhc2VyLWJveC1zaGFkb3c7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIFxyXG59XHJcblxyXG4udGVhc2Vyc19fc2xpZGVyLWljb24ge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMjBweDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHotaW5kZXg6IDE7XHJcblxyXG4gIHN2ZyB7XHJcbiAgICB3aWR0aDogMzBweDtcclxuICB9XHJcbn1cclxuICAgIFxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcclxuXHJcbiAgLnNlY3Rpb24tdGVhbSB7XHJcbiAgICBcclxuICAgIC50ZWFzZXJzX19zbGlkZXItY29udGFpbmVyIHtcclxuICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG5cclxuICAgICAgLnRlYXNlcnNfX3NsaWRlci1pdGVtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDI5NXB4O1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuXHJcbiAgICAgICAgJi5pdGVtLS1vZmZzZXQge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5zZWN0aW9uLnNlY3Rpb24tdGVhbSB7XHJcbiAgICAudGVhc2Vyc19fc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICAgIC50ZWFzZXJzX19zbGlkZXItaXRlbSB7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIC50ZWFzZXJzX19zbGlkZXItaXRlbS13cmFwIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogJHRlYXNlci1ib3gtc2hhZG93O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gIC5zZWN0aW9uIHtcclxuICAgICYuc2VjdGlvbi10ZWFtIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIiRib3gtc2hhZG93LW5ld3M6IDAgMCAxMHB4IDVweCByZ2JhKDM2LCA2OSwgNzMsIDAuMTQpO1xyXG4kYm94LXNoYWRvdy1uZXdzLWhvdmVyOiAwIDAgMjBweCA0cHggcmdiYSgzNiwgNjksIDczLCAwLjQpO1xyXG5cclxuLnNlY3Rpb24uc2VjdGlvbi1uZXdzIHtcclxuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNTkuOSUsICRjb2xvci1saWdodGJsdWUgNjAuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSwgJGNvbG9yLWxpZ2h0Ymx1ZSk7IFxyXG4gIGJhY2tncm91bmQ6IC1vLXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNTkuOSUsICRjb2xvci1saWdodGJsdWUgNjAuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSwgICRjb2xvci1saWdodGJsdWUpOyBcclxuICBiYWNrZ3JvdW5kOiAtbW96LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNTkuOSUsICRjb2xvci1saWdodGJsdWUgNjAuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSwgJGNvbG9yLWxpZ2h0Ymx1ZSk7IFxyXG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgNTkuOSUsICRjb2xvci1saWdodGJsdWUgNjAuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSwgJGNvbG9yLWxpZ2h0Ymx1ZSk7IFxyXG59XHJcblxyXG4uc2VjdGlvbi1uZXdzX19oZWFkaW5nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiA1MHB4IDA7XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX3NlZS1tb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIge1xyXG4gICY6aG92ZXIge1xyXG4gICAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWxpbmsge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS10aXRsZSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBtYXgtd2lkdGg6IDEyNTBweDtcclxuICBtYXJnaW46IGF1dG87XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG5cclxuICAgICYubmV3cy1jb2x1bW4tLWZsZXgtcmV2ZXJzZSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRlbnQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJHNtYWxsZXItbWFyZ2luO1xyXG4gIHRyYW5zaXRpb246IDAuMnMgY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1uZXdzO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbmV3cy1ob3ZlcjtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1pbWFnZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tbmV3c19fbmV3cy1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLW5ld3NfX2ltYWdlLWxpbmstY29udGFpbmVyIHtcclxuICAmLm5ld3MtaXRlbS0tc21hbGwge1xyXG4gICAgLnNlY3Rpb24tbmV3c19fbmV3cy1jb250ZW50IHtcclxuICAgICAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLXRlYXNlcixcclxuICAgICAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWxpbmsge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS1saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogMTJweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWUtbW9yZS0tc2hvdy1tb2JpbGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uIHtcclxuICBtYXJnaW46IDgwcHggMDtcclxuICBmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdoZWFkaW5nJyk7XHJcbiAgZm9udC1zaXplOiAzMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodCwgJ2JvbGQnKTtcclxuXHJcbiAgLnBhZ2UtbnVtYmVycyB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpO1xyXG5cclxuICAgICY6bm90KC5jdXJyZW50KSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuY3VycmVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS1kYXJrO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1saXN0IHtcclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcclxuICAgICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lciB7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcblxyXG4gICAgICAgICAgJi5uZXdzLWNvbHVtbi0tZmxleC1yZXZlcnNle1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcblxyXG4gIC5zZWN0aW9uLnNlY3Rpb24tbmV3cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgMzMuOSUsICRjb2xvci1saWdodGJsdWUgMzQuMSUsICRjb2xvci1saWdodGJsdWUgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtby1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDMzLjklLCAkY29sb3ItbGlnaHRibHVlIDM0LjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLW1vei1yZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KCRjb2xvci13aGl0ZSwgJGNvbG9yLXdoaXRlIDMzLjklLCAkY29sb3ItbGlnaHRibHVlIDM0LjElLCAkY29sb3ItbGlnaHRibHVlIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgkY29sb3Itd2hpdGUsICRjb2xvci13aGl0ZSAzMy45JSwgJGNvbG9yLWxpZ2h0Ymx1ZSAzNC4xJSwgJGNvbG9yLWxpZ2h0Ymx1ZSAxMDAlKTsgXHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi5zZWN0aW9uLW5ld3MubmV3cy1sYXRlc3Qge1xyXG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLXdyYXBwZXIge1xyXG5cclxuICAgICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICB3aWR0aDogNDglO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xyXG5cclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG4gICAgICB3aWR0aDogNDglO1xyXG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcblxyXG4gICAgICAuc2VjdGlvbi1uZXdzX19pbWFnZS1saW5rLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZGlzcGxheTogY29udGVudHM7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0taW1hZ2UgaW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1uZXdzLm5ld3MtbGlzdCB7XHJcbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciB7IFxyXG4gICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XHJcblxyXG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lciB7XHJcbiAgICAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcclxuXHJcbiAgICAgICAgLnNlY3Rpb24tbmV3c19fbmV3cy1jb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcclxuXHJcbiAgICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tdGl0bGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbS10ZWFzZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VjdGlvbi1uZXdzX19pbWFnZS1saW5rIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyLCBcclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXI6bGFzdC1jaGlsZCB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7ICAgICAgXHJcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9ICBcclxuXHJcbiAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtIHtcclxuICAgICYubmV3cy1pdGVtLS1zbWFsbCB7XHJcbiAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtY29udGVudCB7XHJcbiAgICAgICAgLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLXRlYXNlcixcclxuICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tbGluayB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0taW1hZ2Uge1xyXG4gICAgICBtaW4taGVpZ2h0OiAyNDBweDtcclxuICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0tbGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24uc2VjdGlvbi1uZXdzLm5ld3MtbGF0ZXN0IHtcclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcclxuXHJcbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgICAgICBcclxuXHJcbiAgICAgICAgICAuc2VjdGlvbi1uZXdzX19pbWFnZS1saW5rLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLnNlY3Rpb24tbmV3cy5uZXdzLWxhdGVzdCB7XHJcbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciB7IFxyXG4gICAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyIHtcclxuICAgICAgICAmOmxhc3QtY2hpbGQgeyAgICAgICAgXHJcbiAgICAgICAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gICAgXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAuc2VjdGlvbi1uZXdzX19jb2x1bW4td3JhcHBlciB7XHJcbiAgICAuc2VjdGlvbi1uZXdzX19jb2x1bW4tY29udGFpbmVyLFxyXG4gICAgLnNlY3Rpb24tbmV3c19fY29sdW1uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIHtcclxuICAgICAgLnNlY3Rpb24tbmV3c19faW1hZ2UtbGluay1jb250YWluZXIge1xyXG4gICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLW5ld3MubmV3cy1saXN0IHtcclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHsgXHJcbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7ICAgICAgICBcclxuICAgICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0gICAgXHJcbiAgXHJcbiAgLnNlY3Rpb24uc2VjdGlvbi1uZXdzLm5ld3MtbGF0ZXN0IHtcclxuICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHsgXHJcbiAgICAgIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi1jb250YWluZXIge1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7ICAgICAgICBcclxuICAgICAgICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSAgICBcclxuICB9XHJcbiAgXHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAuc2VjdGlvbi1uZXdzX19uZXdzLWl0ZW0taW1hZ2Uge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcclxuXHJcbiAgLnNlY3Rpb24tbmV3c19faGVhZGluZyB7XHJcbiAgICAuc2VjdGlvbi1uZXdzX19zZWUtbW9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VlLW1vcmUtLXNob3ctbW9iaWxlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLW5ld3NfX2NvbHVtbi13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IFxyXG5cclxuICAgIC5zZWN0aW9uLW5ld3NfX25ld3MtaXRlbSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLnNlY3Rpb24tbmV3c19fbmV3cy1pdGVtLWltYWdlIHtcclxuICAgIC8vIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4iLCIuc2VjdGlvbi1hcnRpY2xlIHtcclxuICBcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgaDEsXHJcbiAgaDIsXHJcbiAgaDMge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgyLFxyXG4gIGgzIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICB9XHJcblxyXG4gIC50ZXh0LWltYWdlX193cmFwcGVyIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1heC13aWR0aDogMTI1MHB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250ZW50LFxyXG4gICAgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItaW1hZ2VzIHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hcnRpY2xlX19tYWluLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogMjUwcHggMCAxMDBweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtaW1hZ2VzLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNTAwcHgpIHtcclxuICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXdyYXBwZXIge1xyXG5cclxuICAgIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtaW1hZ2VzLWNvbnRhaW5lciB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzAwcHgpIHtcclxuICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250YWluZXIge1xyXG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gIC5zZWN0aW9uLWFydGljbGUge1xyXG4gICAgLnNlY3Rpb24tYXJ0aWNsZV9fbWFpbi1jb250ZW50IHtcclxuICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xyXG4gIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hcnRpY2xlIHtcclxuICAgIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uOmZpcnN0LW9mLXR5cGU6bm90KC5zZWN0aW9uLXNsaWRlcikge1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcclxuICAuc2VjdGlvbi1hcnRpY2xlIHtcclxuICAgIC5zZWN0aW9uLWFydGljbGVfX21haW4tY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cclxuICBoMixcclxuICBoMyxcclxuICBwIHtcclxuICAgIG1hcmdpbjogMjBweCAwO1xyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tYXJ0aWNsZSB7XHJcbiAgICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1jb250YWluZXIge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItY29udGVudCxcclxuICAgICAgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItaW1hZ2VzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS10ZWFzZXItY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHNtYWxsZXItbWFyZ2luO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VjdGlvbi1hcnRpY2xlX19hcnRpY2xlLXRlYXNlci1pbWFnZXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtaW1hZ2VzLWNvbnRhaW5lciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB6b29tOiAxO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb24tYXJ0aWNsZV9fbWFpbi1jb250ZW50IHtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hcnRpY2xlIHtcclxuICAgIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWNvbnRhaW5lciB7XHJcbiAgICAgIC5zZWN0aW9uLWFydGljbGVfX2FydGljbGUtdGVhc2VyLWltYWdlcyB7XHJcbiAgICAgICAgLnNlY3Rpb24tYXJ0aWNsZV9fYXJ0aWNsZS1pbWFnZXMtY29udGFpbmVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubWMtZmllbGQtZ3JvdXAge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5tYy1maWVsZC1ncm91cCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1lbWFpbF0sIGlucHV0W3R5cGU9bnVtYmVyXSB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzNkM2QzZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG5cclxuICBzdHJvbmcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmlucHV0LWdyb3VwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tY2VfaW5saW5lX2Vycm9yIHtcclxuICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIGlucHV0W3R5cGU9dGV4dF0sICNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdLCAjbWNfZW1iZWRfc2lnbnVwIC5tYy1maWVsZC1ncm91cCBpbnB1dFt0eXBlPW51bWJlcl0ge1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzNkM2QzZDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGNvbG9yOiAjM2QzZDNkO1xyXG4gIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtY19lbWJlZF9zaWdudXAge1xyXG4gIG1hcmdpbi10b3A6IDc1cHg7XHJcbn1cclxuXHJcbiNtY19lbWJlZF9zaWdudXBfc2Nyb2xsIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5pbmRpY2F0ZXMtcmVxdWlyZWQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuc2l6ZTFvZjIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4jbWMtZW1iZWRkZWQtc3Vic2NyaWJlIHtcclxuICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogJGJ1dHRvbi1zcGFjaW5nICFpbXBvcnRhbnQ7XHJcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDM4cHghaW1wb3J0YW50O1xyXG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkZm9udC1zaXplLCAncCcpICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0LCAnYm9sZCcpICFpbXBvcnRhbnQ7XHJcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluZS1oZWlnaHQgIWltcG9ydGFudDtcclxuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkY29sb3Itb2Zmd2hpdGUgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlLWdyYWRpZW50ICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xyXG5cclxuICAmOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICBib3gtc2hhZG93OiAkb3JhbmdlLWJ1dHRvbi1zaGFkb3c7XHJcbiAgfVxyXG59XHJcblxyXG4jbWNfZW1iZWRfc2lnbnVwICNtYy1lbWJlZGRlZC1zdWJzY3JpYmUtZm9ybSBpbnB1dC5tY2VfaW5saW5lX2Vycm9yIHtcclxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXJlZCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWNlX2lubGluZV9lcnJvciB7XHJcbiAgY29sb3I6ICRjb2xvci1yZWQgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDb2xvclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIENvbG9yIHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG4vLyBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBjb2xvciBhbmQgYmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IGNsYXNzZXMgYmFzZWQgb25cclxuLy8gZXZlcnkgY29sb3IgZGVmaW5pdGlvbiBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4vL1xyXG4vLyBMb29wIHRocm91Z2ggZXZlcnkgYCRrZXlgIGFuZCBgJG1hcGAgaW4gdGhlIGAkY29sb3JzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpblxyXG4vLyBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG5AZWFjaCAka2V5LCAkbWFwIGluICRjb2xvcnMge1xyXG5cclxuICAvLyBMb29wIHRocm91Z2ggZXZlcnkgYCRzaGFkZWAgYW5kIGAkcmdiYCBpbiBgJG1hcGAuXHJcbiAgQGVhY2ggJHNoYWRlLCAkcmdiIGluICRtYXAge1xyXG5cclxuICAgIC8vIExvb3AgdGhyb3VnaCBldmVyeSBgY29sb3JgIGFuZCBgYmFja2dyb3VuZC1jb2xvcmAgcnVsZXMuXHJcbiAgICBAZWFjaCAkcnVsZSBpbiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciB7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogYCN7JHJ1bGV9YCAjeyRyZ2J9LSN7JHNoYWRlfSBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cclxuXHJcbiAgICAgIC4jeyRydWxlfS0je3VucXVvdGUoJGtleSl9LSN7dW5xdW90ZSgkc2hhZGUpfSB7XHJcbiAgICAgICAgI3skcnVsZX06ICRyZ2I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgT2JqZWN0IEZpdFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIE9iamVjdCBmaXQuXHJcbiAqXHJcbiAqIDEuIEZvbnQgZmFtaWx5IHBvbHlmaWxsIHdpdGggKGh0dHBzOi8vZ2l0aHViLmNvbS9iZnJlZC1pdC9vYmplY3QtZml0LWltYWdlcykuXHJcbiAqL1xyXG5cclxuLy8gTG9vcCB0aHJvdWdoIGV2ZXJ5IHZhbHVlIGZvciB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG5AZWFjaCAkdmFsdWUgaW4gZmlsbCwgY29udGFpbiwgY292ZXIsIG5vbmUsIHNjYWxlLWRvd24ge1xyXG5cclxuICAvKipcclxuICAgKiBgb2JqZWN0LWZpdGAgI3skdmFsdWV9IHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXHJcblxyXG4gIC4jeyR2YWx1ZX0ge1xyXG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiAjeyR2YWx1ZX07JzsgLyogMSAqL1xyXG4gICAgb2JqZWN0LWZpdDogI3skdmFsdWV9O1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBQb3NpdGlvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFBvc2l0aW9uIHV0aWxpdHkgY2xhc3MuXHJcbiAqL1xyXG5cclxuQGVhY2ggJHZhbHVlIGluIHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5IHtcclxuICAuI3skdmFsdWV9IHtcclxuICAgIHBvc2l0aW9uOiAkdmFsdWU7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFRleHRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBGb250IGZhbWlseSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1mYW1pbHkge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JHByb3BlcnR5fSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAkcHJvcGVydHkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgc2l6ZSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1zaXplIHtcclxuICAgICAgLnRleHQtI3ska2V5fS0jeyRwcm9wZXJ0eX0ge1xyXG4gICAgICAgIEBpbmNsdWRlIHRleHQoJHByb3BlcnR5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0IGFsaWdubWVudCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkZGlyZWN0aW9uIGluIGxlZnQsIHJpZ2h0LCBjZW50ZXIge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JGRpcmVjdGlvbn0ge1xyXG4gICAgICAgIHRleHQtYWxpZ246ICRkaXJlY3Rpb247XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRm9udCB3ZWlnaHQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKlxyXG4gKiAxLiBNdWx0aXBseSBsb29wZWQgaW50ZWdlciBieSAxMDAgZm9yIGNvcnJlY3QgZm9udCB3ZWlnaHQgdmFsdWUuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xyXG4gICAgICAkaTogJGkgKiAxMDA7IC8vIFsxXVxyXG5cclxuICAgICAgLnRleHQtI3ska2V5fS0jeyRpfSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICN7JGl9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgdHJhbnNmb3JtIHVpdGxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCRrZXkpIHtcclxuICAgIEBlYWNoICR0cmFuc2Zvcm0gaW4gY2FwaXRhbGl6ZSwgdXBwZXJjYXNlLCBsb3dlcmNhc2UsIG5vbmUsIGZ1bGwtd2lkdGgge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JHRyYW5zZm9ybX0ge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdHJhbnNmb3JtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFZlcnRpY2FsIFJoeXRobVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMCB7XHJcbiAgJGk6ICRpICogODtcclxuXHJcbiAgLnZyLSN7JGl9IHtcclxuICAgIG1hcmdpbi1ib3R0b206ICN7JGl9cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFotaW5kZXhcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBVdGlsaXR5IGNsYXNzZXMgZm9yIG1hbmlwdWxhdGluZyBzdGFja2luZyBvcmRlciBpbiBIVE1MLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkei1pbmRleCB7XHJcbiAgLnotaW5kZXgtI3ska2V5fSB7XHJcbiAgICB6LWluZGV4OiAkdmFsdWU7XHJcbiAgfVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFotaW5kZXhcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIEEgbGltaXRlZCBhcnJheSBvZiB2YWx1ZXMgZm9yIHRoZSBgei1pbmRleGAgcHJvcGVydHkgdG8gcHJldmVudFxyXG4vLyBleGFnZ2VyYXRlZCBhbW91bnRzIGFuZCB1Z2x5IGhhY2tzLlxyXG5cclxuJHotaW5kZXg6IChcclxuICAnMCc6ICAwLFxyXG4gICcxJzogIDEwLFxyXG4gICcyJzogIDIwLFxyXG4gICczJzogIDMwLFxyXG4gICc0JzogIDQwLFxyXG4gICc1JzogIDUwLFxyXG4gICc2JzogIDYwLFxyXG4gICc3JzogIDcwLFxyXG4gICc4JzogIDgwLFxyXG4gICc5JzogIDkwLFxyXG4gICcxMCc6IDEwMFxyXG4pO1xyXG4iXX0= */
