/* Put your global styles here */ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*! HTML5 Boilerplate v6.0.1 | MIT License | https://html5boilerplate.com/ */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
  text-align: center;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers
 */
.hidden {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  -webkit-clip-path: none;
  clip-path: none;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important; /* Black prints faster:
   http://www.sanbeiji.com/archives/953 */
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
   * Printing Tables:
   * http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
/*!
 * fullPage 3.1.0
 * https://github.com/alvarotrigo/fullPage.js
 *
 * @license GPLv3 for open source use only
 * or Fullpage Commercial License for commercial use
 * http://alvarotrigo.com/fullPage/pricing/
 *
 * Copyright (C) 2018 http://alvarotrigo.com/fullPage - A project by Alvaro Trigo
 */
html.fp-enabled,
.fp-enabled body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  /*Avoid flicker on slides transitions for mobile phones #336 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.fp-section {
  position: relative;
  -webkit-box-sizing: border-box; /* Safari<=5 Android<=3 */
  -moz-box-sizing: border-box; /* <=28 */
  box-sizing: border-box;
}

.fp-slide {
  float: left;
}

.fp-slide, .fp-slidesContainer {
  height: 100%;
  display: block;
}

.fp-slides {
  z-index: 1;
  height: 100%;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s ease-out; /* Safari<=6 Android<=4.3 */
  transition: all 0.3s ease-out;
}

.fp-section.fp-table, .fp-slide.fp-table {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.fp-tableCell {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

.fp-slidesContainer {
  float: left;
  position: relative;
}

.fp-controlArrow {
  -webkit-user-select: none; /* webkit (safari, chrome) browsers */
  -moz-user-select: none; /* mozilla browsers */
  -khtml-user-select: none; /* webkit (konqueror) browsers */
  -ms-user-select: none; /* IE10+ */
  position: absolute;
  z-index: 4;
  top: 50%;
  cursor: pointer;
  width: 0;
  height: 0;
  border-style: solid;
  margin-top: -38px;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.fp-controlArrow.fp-prev {
  left: 15px;
  width: 0;
  border-width: 38.5px 34px 38.5px 0;
  border-color: transparent #fff transparent transparent;
}

.fp-controlArrow.fp-next {
  right: 15px;
  border-width: 38.5px 0 38.5px 34px;
  border-color: transparent transparent transparent #fff;
}

.fp-scrollable {
  overflow: hidden;
  position: relative;
}

.fp-scroller {
  overflow: hidden;
}

.iScrollIndicator {
  border: 0 !important;
}

.fp-notransition {
  -webkit-transition: none !important;
  transition: none !important;
}

#fp-nav {
  position: fixed;
  z-index: 100;
  bottom: 20px;
  opacity: 1;
}

#fp-nav.fp-right {
  right: 17px;
}

#fp-nav.fp-left {
  left: 20px;
}

.fp-slidesNav {
  position: absolute;
  z-index: 4;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  left: 0 !important;
  right: 0;
  margin: 0 auto !important;
}

.fp-slidesNav.fp-bottom {
  bottom: 17px;
}

.fp-slidesNav.fp-top {
  top: 17px;
}

#fp-nav ul,
.fp-slidesNav ul {
  margin: 0;
  padding: 0;
}

#fp-nav ul li,
.fp-slidesNav ul li {
  display: block;
  width: 32px;
  height: 33px;
  margin: 0px;
  position: relative;
}

.fp-slidesNav ul li {
  display: inline-block;
}

#fp-nav ul li a,
.fp-slidesNav ul li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
}

#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span,
#fp-nav ul li:hover a.active span,
.fp-slidesNav ul li:hover a.active span {
  background-color: #ccc;
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  height: 8px;
  width: 8px;
  border: 1px solid #ccc;
  background: white;
  left: 50%;
  top: 50%;
  margin: -5px 0 0 -5px;
  -webkit-transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}

#fp-nav ul li:hover a span,
.fp-slidesNav ul li:hover a span {
  background-color: #ccc;
}

#fp-nav ul li .fp-tooltip {
  position: absolute;
  top: 1px;
  margin-left: 10px;
  color: #ccc;
  font-size: 0.75rem;
  text-transform: uppercase;
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
  display: block;
  opacity: 0;
  width: 0;
  cursor: pointer;
}

#fp-nav ul li:hover .fp-tooltip,
#fp-nav.fp-show-active a.active + .fp-tooltip {
  -webkit-transition: opacity 0.2s ease-in;
  transition: opacity 0.2s ease-in;
  width: auto;
  opacity: 1;
}

#fp-nav ul li .fp-tooltip.fp-right {
  right: 20px;
}

#fp-nav ul li .fp-tooltip.fp-left {
  left: 20px;
}

.fp-auto-height.fp-section,
.fp-auto-height .fp-slide,
.fp-auto-height .fp-tableCell {
  height: auto !important;
}

.fp-responsive .fp-auto-height-responsive.fp-section,
.fp-responsive .fp-auto-height-responsive .fp-slide,
.fp-responsive .fp-auto-height-responsive .fp-tableCell {
  height: auto !important;
}

/*Only display content to screen readers*/
.fp-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media only screen and (max-width: 45em) {
  #fp-nav.fp-left {
    left: 10px;
    bottom: 10px;
  }
}
@media only screen and (max-width: 35em) {
  #fp-nav.fp-left {
    left: 0px;
  }
}
html {
  -webkit-font-smoothing: antialiased;
}

body {
  font-family: neue-haas-grotesk-text, sans-serif;
  font-size: 1.75rem;
  line-height: 2rem;
  font-weight: 700;
  font-style: normal;
}

.header.new .logo div {
  font-size: 1.25rem;
  line-height: 1.25rem;
}

.lang-switch, .filters {
  font-size: 1.25rem;
  line-height: 1.5rem;
}

.home .content, .project-detail .content, .together .content {
  font-size: 3rem;
  line-height: 3.375rem;
}

.projects h2, .projects .how, .discover h2, .discover .how, .knowledge h2, .knowledge .how, .trainings h2, .trainings .how {
  font-size: 1.5rem;
  line-height: 1.875rem;
  font-weight: 700;
}

.item.training .date {
  font-size: 1rem;
  line-height: 1.25rem;
}

.e-popup {
  font-family: neue-haas-grotesk-text, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
}

.together h2 {
  font-size: 3rem;
  line-height: 3.375rem;
  font-weight: 700;
}
.together h3, .together .clients, .together .socials {
  font-size: 1.5rem;
  line-height: 1.875rem;
}
.together .title, .together .email, .together .phone, .together .you-url, .together [type=submit], .together form button {
  font-size: 1.25rem;
  line-height: 1.5rem;
  font-weight: 500;
}
.together h4, .together .txt, .together .more {
  font-size: 1rem;
  line-height: 1.5rem;
}
.together .txt {
  font-weight: 500;
}
.together [type=email], .together textarea, .together form button {
  font-weight: 700;
}
.together .error {
  font-size: 1.5rem;
  line-height: 1.875rem;
}

.services h1, .services h2, .ventures h1, .ventures h2, .cooperative h1, .cooperative h2 {
  font-size: 3rem;
  line-height: 3.375rem;
  font-weight: 700;
}
.services h3, .ventures h3, .cooperative h3 {
  font-size: 1.75rem;
  line-height: 1.875rem;
  font-weight: 700;
}
.services .block, .ventures .block, .cooperative .block {
  font-size: 1rem;
  line-height: 1.25rem;
}
.services .subtitle, .ventures .subtitle, .cooperative .subtitle {
  font-style: italic;
  font-size: 1.2rem;
  line-height: 1.5rem;
}
.services .desc, .ventures .desc, .cooperative .desc {
  font-weight: 500;
  line-height: 1.5rem;
}
.services .our-expertise h3, .services .our-clients h3, .ventures .our-expertise h3, .ventures .our-clients h3, .cooperative .our-expertise h3, .cooperative .our-clients h3 {
  font-size: 1.5rem;
  line-height: 1.75rem;
}

.services .clients-txt {
  font-size: 1.5rem;
  line-height: 1.875rem;
}

.more, .contact form input {
  font-size: 1rem;
  font-weight: bold;
}

.member-page h1 {
  line-height: 3rem;
}

.member-page .endeavours, .cooperative .endeavours {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 500;
}

.ongoing .intro {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2rem;
}
.ongoing .blocks {
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}

.cooperative .block {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.homepage .blocks .block {
  font-size: 2.5rem;
  line-height: 3.375rem;
}

.contact .main, .training-detail .desc {
  font-size: 1.5rem;
  line-height: 1.65rem;
}
.contact .main h3, .training-detail .desc h3 {
  font-size: 1.75rem;
  line-height: 1.875rem;
}
.contact .main form input, .training-detail .desc form input {
  font-weight: bold;
}

.training-detail h1 {
  line-height: 3.5rem;
}
.training-detail .btn {
  font-size: 1rem;
  line-height: 1.15rem;
  font-weight: bold;
}
.training-detail .desc {
  font-size: 1rem;
  line-height: 1.15rem;
}
.training-detail h4 {
  font-size: 1.25rem;
  line-height: 1.5rem;
}

.m-menu {
  font-size: 1.25rem;
}

@media only screen and (max-width: 60em) {
  .home .content, .project-detail .content, .together .content {
    font-size: 2.25rem;
    line-height: 2.625rem;
  }
  .together h2 {
    font-size: 2.25rem;
    line-height: 2.625rem;
  }
}
@media only screen and (max-width: 45em) {
  .header.new .logo div {
    font-size: 1rem;
  }
  .m-menu-open header.header.new .inner .main-nav a {
    font-size: 2.5rem;
    line-height: 2.5rem;
  }
  .m-menu-open header.header.new .inner .main-nav .lang-switch a {
    font-size: 1.25rem;
    line-height: 1.5rem;
  }
  .home .content, .project-detail .content, .together .content {
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .together h2 {
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .together h3, .together .clients, .together .socials {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .ongoing h1 {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #000000;
}

/* Prev / Next */
.slick-prev, .slick-next {
  position: absolute;
  bottom: 23px;
  z-index: 1;
  font-size: 0;
  background: none;
  border: none !important;
  background-image: url(/img/arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 13px;
  height: 18px;
  outline: none;
}

.slick-prev {
  left: 15%;
  transform: rotate(180deg);
}

.slick-next {
  right: 15%;
}

.slide-leave-active,
.slide-enter-active {
  transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.slide-leave,
.slide-enter-to {
  transform: translateX(0);
  opacity: 1;
}

.slide-leave-to {
  transform: translateX(100%);
}

.slide-enter {
  transform: translateX(-100%) !important;
  opacity: 0;
}

.slide-left-leave-active,
.slide-left-enter-active {
  transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.slide-left-leave {
  transform: translateX(0);
  opacity: 1;
}

.slide-left-leave-to {
  transform: translateX(-100%);
}

.slide-left-enter-to {
  transform: translateX(0) !important;
  opacity: 1;
}

.slide-left-enter {
  transform: translateX(100%) !important;
  opacity: 0;
}

.together main.slide-left-enter {
  transform: translateX(40%) !important;
}

/* Put your layout here */
body, html {
  height: 100%;
}

.logger {
  position: fixed;
  width: 100%;
  background-color: yellow;
  color: black;
  z-index: 123;
  font-size: 1rem;
}

header.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 2;
}
header.header .inner {
  padding-left: 20px;
  padding-right: 20px;
  max-width: 1300px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header.header .inner .logo img {
  margin-left: -25px;
}

.header.old .main-nav {
  width: 50%;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.header.old .main-nav a {
  text-decoration: none;
  padding: 20px 40px 20px 0;
}
.header.old .main-nav a.active, .header.old .main-nav a:hover {
  color: #000;
  font-style: italic;
  margin-right: 2px;
}
.header.old .lang-switch {
  display: flex;
  flex-direction: column;
  position: relative;
}
.header.old .lang-switch a {
  text-transform: uppercase;
  padding: 0;
  position: absolute;
  display: none;
}
.header.old .lang-switch a:not(.active) {
  top: 20px;
  left: 0;
}
.header.old .lang-switch a.active {
  color: #000;
  display: block;
  position: relative;
  font-style: normal;
}
.header.old .lang-switch:before {
  position: absolute;
  left: -20px;
  top: 2px;
  content: "";
  width: 13px;
  height: 18px;
  background-image: url(/img/arrow.svg);
  transform: rotate(90deg);
  transition: all 0.15s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.header.old .lang-switch:hover a {
  display: block !important;
}
.header.old .lang-switch:hover:before {
  transform: rotate(-90deg);
}

.header.new .inner {
  align-items: end;
  padding-bottom: 40px;
}
.header.new .inner .logo {
  width: 33.3333333333%;
}
.header.new .inner .logo img {
  max-width: 331px;
}
.header.new .inner .logo a {
  text-decoration: none;
}
.header.new .inner .logo .img-holder {
  max-height: 130px;
}
.header.new .inner .logo .baseline {
  margin-top: -20px;
  font-style: italic;
  padding-bottom: 10px;
}
.header.new .inner .main-nav {
  margin-left: 10px;
  width: calc(66.6666666667% - 10px);
}
.header.new .inner .nav__container {
  display: flex;
}
.header.new .inner .nav__container ul {
  display: flex;
  flex-wrap: wrap;
}
.header.new .inner .nav__container ul li {
  margin-top: 5px;
  margin-bottom: 5px;
}
.header.new .inner .nav__container ul:first-child {
  width: calc(75% + 25px);
}
.header.new .inner .nav__container ul:first-child li {
  width: 33.3333333333%;
}
.header.new .inner .nav__container ul:nth-child(2) {
  width: calc(25% - 25px);
  flex-direction: column;
}
.header.new .inner .nav__container a {
  text-decoration: none;
}
.header.new .inner .nav__container a:hover {
  font-style: normal;
}
.header.new .inner .nav__container a.active {
  font-style: italic;
}
.header.new .inner .nav__container .lang-switch {
  text-transform: uppercase;
  margin-top: 6px;
}
.header.new .inner .nav__container .lang-switch .active {
  color: #ccc;
  font-style: normal;
}
.header.new .inner .nav__container .lang-switch a:nth-child(2) {
  margin-left: 20px;
}

#container {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  margin: 0 auto;
  padding: 0;
  overflow-x: hidden;
}

main.main {
  flex: 1 0 auto;
  padding-top: 200px;
}

.content {
  max-width: 1340px;
  margin: 0 auto;
}

.home .content {
  position: fixed;
  width: 100%;
  margin: 0 auto;
  left: 0;
  right: 0;
  top: 200px;
  height: 100%;
}
.home .content .left {
  padding-left: 20px;
  width: calc(33.3333333333% - 20px);
  max-width: 390px;
}
.home .content .right {
  position: absolute;
  left: calc(33.3333333333% + 20px);
  width: calc(66.6666666667% - 45px);
  padding-right: 20px;
  padding-bottom: 100px;
  padding-left: 5px;
  top: 0px;
  scroll-snap-type: y proximity;
  height: calc(100vh - 150px);
  overflow-y: scroll;
}
.home .project {
  margin-bottom: 40px;
  scroll-snap-align: start;
  text-decoration: none;
  display: block;
  position: relative;
}
.home .project .pic {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
.home .project:hover .pic {
  display: block;
}
.dots {
  z-index: 1234;
  position: fixed;
  left: 20px;
  bottom: 20px;
  display: flex;
  flex-direction: column;
}
.dots .dot {
  cursor: pointer;
  background: none;
  border: none;
  width: 32px;
  height: 33px;
  position: relative;
}
.dots .dot:after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  margin-left: -4px;
  margin-top: -4px;
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}
.dots .dot:hover {
  color: #ccc;
}
.dots .dot[aria-pressed=true]:after, .dots .dot:hover:after {
  background-color: #ccc;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.right::-webkit-scrollbar, .endeavours::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.right, .endeavours {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

.project-detail main.main {
  padding-top: 0;
}
.project-detail .slide {
  position: relative;
  padding-left: 60px;
  padding-right: 60px;
}
.project-detail .slide .hover-img {
  position: absolute;
  left: 50%;
  top: 25%;
  max-width: 500px;
  pointer-events: none;
}
.project-detail .slide:not(.open-img) .hover-img {
  display: none;
}
.project-detail .slide.alive .hover-img {
  display: block;
}
.project-detail .linked {
  color: #1749F5;
  cursor: pointer;
}
.project-detail .linked:hover {
  font-style: italic;
}
.project-detail .crdt {
  display: flex;
}
.project-detail .crdt .label {
  width: 250px;
  flex-shrink: 0;
}

.fp-responsive #fp-nav {
  display: block !important;
}
.fp-responsive .section {
  padding-top: 200px;
}

.filters {
  display: flex;
  justify-content: space-between;
  padding: 0px 20px 10px 20px;
  text-transform: uppercase;
}
.filters a {
  text-decoration: none;
  margin-right: 40px;
  color: #ccc;
  display: inline-flex;
  flex-direction: column;
}
.filters a:hover, .filters a.active {
  color: #000;
  font-style: normal;
}
.filters a:hover:after, .filters a.active:after {
  font-style: normal;
}
.filters a:last-child {
  margin-right: 0;
}
.filters a:after {
  content: attr(data-text);
  content: attr(data-text)/"";
  font-style: italic;
  height: 0;
  visibility: hidden;
  overflow: hidden;
  user-select: none;
  pointer-events: none;
}

.discover .filters, .projects .filters {
  position: fixed;
  background-color: #fff;
  top: 152px;
  z-index: 3;
  width: calc(100% - 40px);
  max-width: 1300px;
  margin: 0 auto 40px auto;
  left: 0;
  right: 0;
}
.discover .filters .project-type, .projects .filters .project-type {
  width: calc(66.6666666667% - 10px);
  display: flex;
  flex-wrap: wrap;
}
.discover .list, .projects .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 40px;
}
.discover .list .item, .projects .list .item {
  width: calc(33.3333333333% - 20px);
  margin: 10px;
  position: relative;
  text-decoration: none;
  display: block;
}
.discover .list .item h2, .projects .list .item h2 {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.discover .list .item .how, .projects .list .item .how {
  visibility: hidden;
  font-style: italic;
}
.discover .list .item h2, .discover .list .item .how, .projects .list .item h2, .projects .list .item .how {
  word-break: break-word;
}
.discover .list .item:hover .how, .projects .list .item:hover .how {
  visibility: visible;
}
.discover .list .item:hover h2, .projects .list .item:hover h2 {
  visibility: hidden;
}
.discover #map, .projects #map {
  width: calc(100% - 40px);
  margin: 0 20px 40px 20px;
  height: 600px;
}

.e-popup {
  padding: 10px 60px 60px 10px;
}
.e-popup a {
  text-decoration: none;
}

.knowledge .filters, .trainings .filters, .training-detail .filters {
  position: fixed;
  background-color: #fff;
  top: 152px;
  z-index: 3;
  width: calc(100% - 40px);
  max-width: 1300px;
  margin: 0 auto 40px auto;
  left: 0;
  right: 0;
}

.knowledge .list, .trainings .list {
  display: flex;
  flex-wrap: wrap;
  padding-left: 20px;
  padding-right: 20px;
}
.knowledge .list .item, .trainings .list .item {
  text-decoration: none;
  margin-bottom: 60px;
}
.knowledge .list .item.training h2, .trainings .list .item.training h2 {
  margin-bottom: 5px;
}
.knowledge .list .item.training:hover .date, .trainings .list .item.training:hover .date {
  font-style: normal;
}
.knowledge .list .item.training .date, .trainings .list .item.training .date {
  margin-bottom: 0;
}
.knowledge .list .item.training .datestr, .trainings .list .item.training .datestr {
  display: inline-block;
  min-width: 120px;
  text-transform: uppercase;
}

.time {
  position: relative;
}
.time:before {
  position: absolute;
  left: -10px;
  top: 8px;
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #000;
}

.trainings .btn.more {
  color: #EA1D22;
  text-transform: uppercase;
  cursor: pointer;
  text-decoration: none;
}
.trainings .list .item:hover h2 {
  font-style: normal;
}

.training-detail .content {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.training-detail h1 {
  margin-bottom: 30px;
}
.training-detail .time {
  margin-left: 30px;
}
.training-detail .time:before {
  width: 6px;
  height: 6px;
  top: 17px;
  left: -17px;
}
.training-detail .desc {
  margin-top: 30px;
  margin-bottom: 40px;
}
.training-detail .btn {
  margin-bottom: 60px;
  display: inline-block;
  text-align: center;
  max-width: 200px !important;
}
.training-detail .more-desc {
  margin-top: -30px !important;
}

.together .content {
  max-width: none;
}
.together .we-can, .together .manifesto, .together .members, .together .clients, .together .socials, .together .stadsform .upper {
  max-width: 1300px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
.together h2 {
  margin-bottom: 0;
}
.together h3 {
  margin-top: 20px;
  margin-bottom: 5px;
}
.together .we-can {
  display: flex;
  overflow: hidden;
  height: 50vh;
}
.together .we-can .left {
  width: calc(50% - 20px);
  padding-right: 20px;
}
.together .we-can #todos {
  outline: none;
}
.together .we-can .right {
  width: 50%;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
}
.together .we-can .right .todo {
  margin-bottom: 20px;
  scroll-snap-align: start;
}
.together .we-can .right .todo p {
  margin: 0;
  padding: 0;
}
.together .we-can .right .todo:last-child {
  margin-bottom: calc(50vh - 200px);
  margin-top: 40px;
}
.together .we-can .right a {
  text-decoration: none;
  color: #EA1D22;
}
.together .we-can .right .errors, .together .we-can .right .success {
  color: #1749F5;
  margin-bottom: 10px;
}
.together .we-can .right form {
  padding: 10px;
  background-color: #ccc;
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}
.together .we-can .right form .row {
  display: flex;
  flex-direction: column;
}
.together .we-can .right form .s2 {
  display: none;
}
.together .we-can .right form .s2.show {
  display: flex;
}
.together .we-can .right form textarea, .together .we-can .right form [type=email] {
  border: none;
  background: transparent;
  margin: 10px 0;
  color: #000;
  padding: 5px 10px;
  border-left: 5px solid #000;
}
.together .we-can .right form.h-error .s2 {
  display: flex !important;
}
.together .we-can .right form.h-error button {
  display: none;
}
.together .we-can .right form button, .together .we-can .right form [type=submit] {
  background-color: #000;
  color: white;
  text-transform: uppercase;
  border: none;
  padding: 10px;
}
.together .we-can .right form .error {
  color: #1749F5;
  margin-bottom: 10px;
}

.stadsform {
  margin-top: 60px;
  margin-bottom: 100px;
}
.stadsform .upper {
  display: flex;
  align-items: center;
}
.stadsform .upper .s-logo, .stadsform .upper .s-intro {
  width: 50%;
}
.stadsform .upper .s-logo p, .stadsform .upper .s-intro p {
  margin-bottom: 0;
}
.stadsform .upper .s-logo a, .stadsform .upper .s-intro a {
  text-decoration: none;
  color: #EA1D22;
}
.stadsform .upper .s-logo img {
  margin-left: -10px;
}
.stadsform .gallery .event {
  padding: 20px;
  background-color: #fff;
}
.stadsform .gallery .event .title {
  padding: 20px 0 0 20px;
}
.stadsform .gallery .event img, .stadsform .gallery .event iframe {
  width: 100%;
  margin: 0 auto;
}

.manifesto .blocks {
  display: flex;
}
.manifesto .blocks .block {
  margin-right: 10px;
}
.manifesto .blocks .block:nth-child(even) {
  margin-left: 10px;
  margin-right: 0;
}

.members .blocks {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.members .blocks .block {
  position: relative;
  width: calc(25% - 15px);
  margin-right: 20px;
  display: flex;
  flex-direction: column;
}
.members .blocks .block:nth-child(4n) {
  margin-right: 0;
}
.members .blocks .block:nth-child(4n) .profile-pic {
  right: auto;
  left: -100%;
}
.members .blocks .block .title {
  text-transform: uppercase;
}
.members .blocks .block .email, .members .blocks .block .phone {
  color: #ccc;
  word-break: break-all;
  margin-top: 10px;
}
.members .blocks .block .endeavours {
  height: 190px;
  overflow-y: scroll;
  flex-grow: 1;
}
.members .blocks .block .endeavours .txt {
  display: block;
  margin-top: 20px;
}
.members .blocks .block .endeavours .txt h4 {
  margin: 0;
}
.members .blocks .block .endeavours .txt p {
  margin-top: 0;
}
.members .blocks .block .more {
  color: #ccc;
  text-transform: uppercase;
  display: none;
  margin-top: 5px;
}
.members .blocks .block .profile-pic {
  position: absolute;
  bottom: -50px;
  right: -100%;
  display: none;
  z-index: 2;
}
.members .blocks .block .you-url {
  display: none;
  position: absolute;
  top: 60px;
  width: 100%;
}
.members .blocks .block .you-url a {
  display: block;
  background-color: #000;
  color: white;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  padding: 20px;
}
.members .blocks .block:hover h3 {
  font-style: italic;
}
.members .blocks .block:hover .profile-pic, .members .blocks .block:hover .you-url {
  display: block;
}

.clients {
  margin-bottom: 80px !important;
}
.clients p {
  margin-top: 10px;
}

.socials a {
  text-decoration: none;
  display: inline-block;
  margin: 10px 40px 0 0;
  text-transform: capitalize;
}

.member-page .content {
  padding-left: 20px;
  padding-right: 20px;
}
.member-page h1 {
  margin-bottom: 10px;
}
.member-page .email, .member-page .phone {
  color: #ccc;
  margin-top: 5px;
}
.member-page .email a, .member-page .phone a {
  color: #ccc;
  text-decoration: none;
}
.member-page .title {
  text-transform: uppercase;
}
.member-page .profile-pic {
  margin-top: 20px;
  margin-bottom: 20px;
}
.member-page .profile-pic img {
  margin-left: auto;
}
.member-page .endeavours {
  margin-bottom: 40px;
}
.member-page .endeavours h4 {
  margin: 0;
}

.ongoing #container {
  overflow-x: inherit;
}
.ongoing #container .content {
  max-width: none;
}
.ongoing #container h1, .ongoing #container .subtitle, .ongoing #container .intro, .ongoing #container .cols, .ongoing #container .img {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.ongoing #container .blocks {
  margin-bottom: 80px;
}
.ongoing #container .cols {
  display: flex;
}
.ongoing #container .cols.col-2 .col:first-child {
  margin-right: 20px;
}
.ongoing #container .cols.col-2 .col:last-child {
  margin-left: 20px;
}
.ongoing #container .img {
  margin-top: 40px;
  margin-bottom: 40px;
}
.ongoing #container .img img {
  width: 100%;
  height: auto;
}
.ongoing #container .img .caption {
  margin-top: 20px;
  text-align: right;
}
.ongoing #container .embed {
  width: 100%;
  margin-top: 80px;
  margin-bottom: 40px;
}
.ongoing #container .embed iframe {
  width: 100%;
}
.ongoing #container .gallery .event {
  padding: 20px;
  background-color: #fff;
}
.ongoing #container .gallery .event .title {
  padding: 20px 0 0 20px;
}
.ongoing #container .gallery .event img, .ongoing #container .gallery .event iframe {
  width: 100%;
  margin: 0 auto;
}

.services .section, .ventures .section, .cooperative .section {
  max-width: 1300px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
.services .blocks, .ventures .blocks, .cooperative .blocks {
  display: flex;
  flex-wrap: wrap;
}

.ventures .intro {
  text-align: center;
  margin-bottom: 80px;
}

.knowledge .list .item,
.trainings .list .item,
.services .blocks .block,
.ventures .blocks .block,
.projects .list .item {
  width: calc(33.3333333333% - 20px);
  margin-left: 15px;
  margin-right: 15px;
}
.knowledge .list .item:nth-child(3n+3),
.trainings .list .item:nth-child(3n+3),
.services .blocks .block:nth-child(3n+3),
.ventures .blocks .block:nth-child(3n+3),
.projects .list .item:nth-child(3n+3) {
  margin-right: 0;
}
.knowledge .list .item:nth-child(3n-2),
.trainings .list .item:nth-child(3n-2),
.services .blocks .block:nth-child(3n-2),
.ventures .blocks .block:nth-child(3n-2),
.projects .list .item:nth-child(3n-2) {
  margin-left: 0;
}

.projects .list {
  margin-left: 0;
  margin-right: 0;
  padding-left: 20px;
  padding-right: 20px;
}

.services .blocks .block, .ventures .blocks .block {
  margin-bottom: 60px;
}
.services .blocks .block h3, .ventures .blocks .block h3 {
  margin-bottom: 5px;
}
.services .blocks .block .btn.more, .ventures .blocks .block .btn.more {
  color: #EA1D22;
  text-transform: uppercase;
  cursor: pointer;
  margin-top: 10px;
  text-decoration: none;
}
.services .more-info, .ventures .more-info {
  display: none;
  position: relative;
}
.services .more-info .img, .ventures .more-info .img {
  position: absolute;
  top: -150px;
  right: calc(-100% - 40px);
  width: 100%;
}

.services .content {
  max-width: none;
}
.services .block.service.open .more-info {
  display: flex;
}
.services .block.service.open:nth-child(3n+3) .img {
  right: auto;
  left: calc(-100% - 40px);
}
.services .our-expertise h2, .services .our-clients h2 {
  margin-bottom: 20px;
}
.services .our-clients {
  margin-top: 60px;
}
.services .our-clients .blocks .block {
  margin-left: 10px;
  margin-right: 10px;
  width: calc(16.6666666667% - 16.6666666667px);
  margin-bottom: 40px;
}
.services .our-clients .blocks .block:nth-child(6n+6) {
  margin-right: 0;
}
.services .our-clients .blocks .block:nth-child(6n-5) {
  margin-left: 0;
}
.services .our-clients .blocks .block h3 {
  margin-top: 0;
}
.services .our-clients .clients-txt {
  margin-bottom: 80px;
}
.services .our-expertise {
  background: #EBEBEB;
  padding-top: 10px;
  padding-bottom: 50px;
  max-width: none;
}
.services .our-expertise .btns {
  display: flex;
  flex-wrap: wrap;
}
.services .our-expertise .btn {
  background: #ffffff;
  color: #000;
  text-decoration: none;
  width: calc(33.3333333333% - 60px);
  text-align: center;
  margin: 10px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.services .grey-inner {
  max-width: 1300px;
  margin: 0 auto;
}
.services .why-us {
  counter-reset: block;
  background: #EBEBEB;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 40px;
  max-width: none;
}
.services .why-us .blocks {
  flex-wrap: nowrap;
  overflow-x: scroll;
  margin-left: -20px;
  width: calc(100% + 40px);
  /* Hide scrollbar for Chrome, Safari and Opera */
  /* Hide scrollbar for IE, Edge and Firefox */
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.services .why-us .blocks::-webkit-scrollbar {
  display: none;
}
.services .why-us .block {
  width: 25%;
  padding-left: 40px;
  padding-right: 40px;
  margin-left: 0;
  margin-right: 0;
  flex-shrink: 0;
}
.services .why-us .block h3 {
  position: relative;
  padding-left: 80px;
}
.services .why-us .block h3::before {
  counter-increment: block; /* Increment the value of block counter by 1 */
  content: counter(block); /* Display counter value in default style (decimal) */
  position: absolute;
  left: 0;
  top: -10px;
  color: #ffffff;
  font-size: 3rem;
  font-style: italic;
  padding: 0 20px;
}

.ventures .blocks .block .desc > p {
  margin-top: 10px;
}

.contact-us {
  text-align: center;
  margin-bottom: 60px;
}
.contact-us a {
  text-decoration: none;
  color: #EA1D22;
  font-style: italic;
}

.cooperative h2, .cooperative h3 {
  margin-bottom: 10px;
}
.cooperative .blocks.intro {
  justify-content: space-between;
}
.cooperative .blocks.intro .block {
  width: calc(50% - 15px);
}
.cooperative .blocks.intro .block:nth-child(odd) {
  margin-right: 15px;
}
.cooperative .blocks.intro .block:nth-child(even) {
  margin-left: 15px;
}
.cooperative .members {
  margin-bottom: 60px;
}
.cooperative .members .blocks .block {
  margin-left: 15px;
  margin-right: 15px;
  width: calc(25% - 22.5px);
}
.cooperative .members .blocks .block:nth-child(4n-3) {
  margin-left: 0;
}
.cooperative .members .blocks .block:nth-child(4n+4) {
  margin-right: 0;
}
.cooperative .members .blocks h3, .cooperative .members .blocks .title {
  margin-bottom: 5px;
}
.cooperative .members .blocks .email, .cooperative .members .blocks .phone {
  margin-top: 0;
}

.contact .contact-links {
  display: flex;
  padding-left: 20px;
  padding-right: 20px;
  max-width: 1300px;
  margin-bottom: 40px;
}
.contact .contact-links a {
  text-decoration: none;
}
.contact .contact-links .block:nth-child(1) {
  width: 33.3333333333%;
}
.contact .contact-links .block:nth-child(2) {
  margin-left: 10px;
  width: calc(66.6666666667% - 10px);
  display: flex;
}
.contact .contact-links .block:nth-child(2) a {
  width: 25%;
}
.contact .contact-links .block:nth-child(2) a:nth-child(2) {
  margin-left: 10px;
  width: calc(25% - 10px);
}
.contact .contact-links .block:nth-child(2) a:nth-child(3) {
  margin-left: 20px;
  width: calc(25% - 20px);
}
.contact .contact-links .block:nth-child(2) a:nth-child(4) {
  margin-left: 25px;
  width: calc(25% - 25px);
}
.contact .blocks {
  max-width: 1000px;
  margin: 0 auto 60px auto;
  display: flex;
  justify-content: space-between;
  padding-left: 20px;
  padding-right: 20px;
}
.contact .blocks .block {
  width: calc(50% - 60px);
}
.contact .blocks .block h3 {
  margin-bottom: 10px;
}
.contact #map {
  width: 100%;
  margin: 0 auto 20px auto;
  height: 300px;
}
.contact form div {
  margin-bottom: 10px;
}
.contact form input {
  width: calc(100% - 30px);
  padding: 15px;
  border: none;
  background: #EBEBEB;
  color: #000;
  border-radius: 0;
}
.contact form input::placeholder {
  color: #000;
}

.contact form input[type=submit], .training-detail .btn {
  background: #1749F5;
  color: white;
  padding: 15px 40px;
  text-transform: uppercase;
  border-radius: 0;
  width: calc(100% - 80px);
  max-width: 300px;
  text-decoration: none;
  text-align: center;
}
.contact form input[type=submit]:hover, .training-detail .btn:hover {
  background-color: #000;
  font-style: normal;
}

.homepage main.main {
  padding-top: 0;
  margin-top: 200px;
  z-index: 3;
}
.homepage .blocks {
  display: flex;
  flex-wrap: wrap;
}
.homepage .col {
  width: calc(33.3333333333% - 40px);
  text-decoration: none;
  padding: 20px;
  align-self: flex-start;
}
.homepage .col:nth-child(2) {
  margin-top: 60px;
}
.homepage .col .block {
  display: block;
  margin-bottom: 120px;
}
.homepage .col .block.no-img {
  margin-top: 180px;
}
.homepage .col .block-content {
  width: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.homepage .col h3 {
  margin: -30px 0 0 -20px;
  visibility: hidden;
}
.homepage .col .no-img h3 {
  visibility: visible;
  text-align: center;
}
.homepage .col .img {
  background-color: blue;
  position: relative;
  align-self: center;
  box-shadow: 10px 10px 25px 1px rgba(5, 5, 5, 0.125);
}
.homepage .col .img img {
  margin: 0 auto;
}
.homepage .col .img h3 {
  position: absolute;
  transform: translate(-3px, 3px);
  visibility: visible;
  text-align: left;
  z-index: -1;
}
.homepage .col .block:hover {
  font-style: italic;
}
.homepage .col .block:hover h3 {
  z-index: 0;
}
.homepage .col .block:hover .img img {
  filter: grayscale(1);
  mix-blend-mode: screen;
}

.projects main.main, .knowledge main.main, .trainings main.main, .training-detail main.main {
  padding-top: 230px;
}
.projects .filters, .knowledge .filters, .trainings .filters, .training-detail .filters {
  display: flex;
  justify-content: flex-start;
  top: 172px;
}
.projects .filters .list-type, .knowledge .filters .list-type, .trainings .filters .list-type, .training-detail .filters .list-type {
  width: calc(33.3333333333% - 20px);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-right: 20px;
}
.projects .filters .filter-type, .knowledge .filters .filter-type, .trainings .filters .filter-type, .training-detail .filters .filter-type {
  margin-left: 10px;
  width: calc(66.6666666667% - 10px);
  display: flex;
  flex-wrap: wrap;
}
.projects .filters .filter-type a, .knowledge .filters .filter-type a, .trainings .filters .filter-type a, .training-detail .filters .filter-type a {
  margin-bottom: 10px;
}

#m-filter {
  cursor: pointer;
  display: none;
}

#d-filter {
  cursor: pointer;
  margin-left: 10px;
}

.projects .filters .filter-type, .projects #filter-all {
  display: none;
}

@media only screen and (max-width: 65em) {
  .projects .filters a, .discover .filters a {
    margin-right: 20px;
  }
  header.header.new .inner {
    align-items: flex-start;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  header.header.new .inner .logo {
    text-align: center;
    width: calc(50% - 10px);
  }
  header.header.new .inner .logo .img-holder img {
    margin-top: -40px;
    margin-left: auto;
    margin-right: auto;
    max-width: 320px;
    width: 100%;
  }
  header.header.new .inner .main-nav {
    width: calc(50% - 10px);
  }
  header.header.new .inner .main-nav .nav__container {
    flex-direction: column;
  }
  header.header.new .inner .main-nav .nav__container ul {
    width: 100%;
  }
  header.header.new .inner .main-nav .nav__container ul:nth-of-type(2) {
    align-items: end;
    flex-direction: row;
  }
  header.header.new .inner .main-nav .nav__container li {
    width: 50%;
  }
  .homepage .col {
    width: calc(50% - 40px);
  }
  .projects main.main, .knowledge main.main, .trainings main.main {
    padding-top: 260px;
  }
  .projects .filters, .knowledge .filters, .trainings .filters {
    top: 202px;
  }
  .filters.single .list-type {
    display: none !important;
  }
  .filters.single .filter-type {
    margin-left: 0;
  }
  .contact .contact-links {
    margin-top: 20px;
  }
  .services .why-us .block {
    width: 50%;
  }
}
@media only screen and (max-width: 45em) {
  header.header.old .inner {
    flex-direction: column;
    padding-bottom: 20px;
    min-height: 180px;
  }
  header.header.old .inner .main-nav {
    width: 100%;
    max-width: none;
  }
  header.header.old .inner .logo img {
    margin: 0 auto;
  }
  header.header.new .inner .logo {
    text-align: left;
    width: auto;
  }
  header.header.new .inner .logo .img-holder {
    max-height: 100px;
  }
  header.header.new .inner .logo .img-holder img {
    margin-top: -33px;
    margin-left: -25px;
    width: 250px;
  }
  header.header.new .inner .logo .baseline {
    margin-top: -7px;
  }
  header.header.new .inner .main-nav {
    width: auto;
    margin-top: 53px;
  }
  header.header.new .inner .main-nav ul:first-child {
    display: none;
  }
  header.header.new .inner .main-nav ul:nth-child(2) li:first-child {
    display: none;
  }
  header.header.new .inner .main-nav ul:nth-of-type(2) {
    align-self: end;
  }
  header.header.new .inner .main-nav .lang-switch {
    margin-top: 0;
  }
  header.header.new .inner .main-nav .nav__container li {
    width: 100%;
  }
  .m-menu-open header.header.new {
    z-index: 5;
  }
  .m-menu-open header.header.new, .m-menu-open header.header.new .inner {
    height: 100%;
  }
  .m-menu-open header.header.new .inner {
    padding: 0;
    flex-direction: column;
  }
  .m-menu-open .logo {
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 80px;
  }
  .m-menu-open .main-nav {
    display: block;
    max-width: 100% !important;
    width: 100% !important;
    height: 100%;
    margin-top: 10px !important;
    margin-left: 0 !important;
    background: #000;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .m-menu-open .main-nav a {
    color: white;
  }
  .m-menu-open .main-nav ul {
    display: flex !important;
    flex-direction: column;
  }
  .m-menu-open .main-nav ul a {
    display: block;
    text-align: left;
    padding: 5px 40px;
  }
  .m-menu-open .main-nav ul:nth-child(2) {
    align-self: flex-start !important;
    align-items: flex-start !important;
  }
  .m-menu-open .main-nav ul:nth-child(2) li:first-child {
    display: flex !important;
  }
  .m-menu-open .main-nav ul:nth-child(2) li:last-child {
    position: fixed;
    top: 72px;
    right: 20px;
    width: auto !important;
  }
  .m-menu-open .main-nav ul:nth-child(2) li:last-child .lang-switch {
    display: flex;
  }
  .m-menu-open .main-nav ul:nth-child(2) li:last-child .lang-switch a {
    color: #000;
    padding: 0;
  }
  .home .content {
    flex-direction: column;
  }
  .home .content .left, .home .content .right {
    padding: 0 20px;
    width: calc(100% - 40px) !important;
    margin: 0 !important;
    left: 0;
  }
  .home .content .right {
    top: 40px;
    height: calc(100vh - 250px);
  }
  .home .content .project .pic {
    position: relative;
    display: block;
    z-index: -1;
    top: -10px;
  }
  .home .content .project .pic img {
    margin-left: auto;
  }
  .dots {
    left: 10px;
    bottom: 10px;
  }
  .discover main.main, .projects main.main {
    padding-top: 320px;
  }
  .discover .filters, .projects .filters {
    top: 200px;
    padding-top: 20px;
    flex-direction: column;
  }
  .discover .filters .project-type, .projects .filters .project-type {
    width: 100%;
    margin-top: 10px;
  }
  .discover .list .item, .projects .list .item {
    width: calc(50% - 20px);
    word-break: break-word;
  }
  .projects .m-filter-wrap {
    display: flex;
  }
  .projects #m-filter {
    display: block;
  }
  .projects #filter-all {
    display: none;
  }
  .projects #d-filter {
    display: none;
  }
  .together .we-can {
    flex-direction: column;
  }
  .together .we-can .left, .together .we-can .right {
    margin: 0;
    width: 100%;
  }
  .manifesto .blocks {
    flex-direction: column;
  }
  .manifesto .blocks .block {
    margin: 0 !important;
    width: 100%;
  }
  .members .blocks .block {
    width: calc(50% - 20px);
    margin: 0 !important;
  }
  .members .blocks .block:nth-child(odd) {
    margin-right: 10px !important;
  }
  .members .blocks .block:nth-child(even) {
    margin-left: 10px !important;
  }
  .members .blocks .block:nth-child(even) .profile-pic {
    right: auto;
    left: -100%;
  }
  .members .blocks .block .more {
    display: block;
    cursor: pointer;
  }
  .members .blocks .block .profile-pic {
    position: relative;
    top: 40px;
    bottom: auto;
    left: 0 !important;
    right: auto;
    margin-bottom: 40px;
    z-index: 0;
  }
  .members .blocks .block .email, .members .blocks .block .phone, .members .blocks .block .endeavours, .members .blocks .block .profile-pic {
    display: none !important;
  }
  .members .blocks .block.you .endeavours {
    display: block !important;
  }
  .members .blocks .block.open {
    width: 100%;
    margin: 0;
  }
  .members .blocks .block.open .email, .members .blocks .block.open .phone, .members .blocks .block.open .endeavours, .members .blocks .block.open .profile-pic {
    display: block !important;
  }
  .homepage main.main {
    margin-top: 150px;
  }
  .homepage .col {
    width: calc(100% - 40px);
    margin-top: 0 !important;
  }
  .homepage .col .block {
    margin-bottom: 20px;
  }
  .homepage .col h3 {
    margin-bottom: 60px;
    margin-left: -10px;
  }
  .services .blocks .block, .ventures .blocks .block, .knowledge .list .item, .trainings .list .item, .projects .list .item, .cooperative .members .blocks .block {
    width: calc(50% - 20px);
  }
  .services .blocks .block:nth-child(odd), .ventures .blocks .block:nth-child(odd), .knowledge .list .item:nth-child(odd), .trainings .list .item:nth-child(odd), .projects .list .item:nth-child(odd), .cooperative .members .blocks .block:nth-child(odd) {
    margin-left: 0 !important;
    margin-right: 20px !important;
  }
  .services .blocks .block:nth-child(even), .ventures .blocks .block:nth-child(even), .knowledge .list .item:nth-child(even), .trainings .list .item:nth-child(even), .projects .list .item:nth-child(even), .cooperative .members .blocks .block:nth-child(even) {
    margin-right: 0 !important;
    margin-left: 20px !important;
  }
  .services .our-expertise .blocks .block, .services .our-clients .blocks .block {
    width: calc(33.3333333333% - 26.6666666667px);
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .services .our-expertise .blocks .block:nth-child(3n+3), .services .our-clients .blocks .block:nth-child(3n+3) {
    margin-right: 0 !important;
  }
  .services .our-expertise .blocks .block:nth-child(3n-2), .services .our-clients .blocks .block:nth-child(3n-2) {
    margin-left: 0 !important;
  }
  .cooperative .blocks.intro .block {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .contact .blocks {
    flex-direction: column;
  }
  .contact .blocks .block {
    width: 100%;
  }
  .contact .blocks .b-map {
    order: 1;
  }
  .contact .blocks .form {
    order: 2;
  }
  .projects main.main, .knowledge main.main, .trainings main.main {
    padding-top: 200px;
  }
  .projects .filters, .knowledge .filters, .trainings .filters {
    top: 125px;
  }
  .projects .filters .list-type, .knowledge .filters .list-type, .trainings .filters .list-type {
    padding-right: 0;
    min-width: 0;
  }
  .projects .filters .list-type a:last-child, .knowledge .filters .list-type a:last-child, .trainings .filters .list-type a:last-child {
    margin-right: 0;
  }
  .projects main.main {
    padding-top: 250px;
  }
  .projects .filters .list-type, .projects .filters .filter-type, .knowledge .filters .list-type, .knowledge .filters .filter-type, .trainings .filters .list-type, .trainings .filters .filter-type, .training-detail .filters .list-type, .training-detail .filters .filter-type {
    margin: 0;
    width: 100%;
  }
  .projects .filters .list-type, .knowledge .filters .list-type, .trainings .filters .list-type, .training-detail .filters .list-type {
    margin-bottom: 10px;
  }
  .services main.main, .cooperative main.main, .contact main.main {
    padding-top: 120px;
  }
  .ventures main.main {
    padding-top: 150px;
  }
  .contact .contact-links {
    flex-direction: column;
  }
  .contact .contact-links .block {
    width: 100% !important;
    margin: 0 0 20px 0 !important;
    flex-wrap: wrap;
  }
  .contact .contact-links .block a {
    width: auto !important;
    margin: 0 20px 10px 0 !important;
  }
  .services .our-expertise .btn {
    width: calc(50% - 60px);
  }
}
@media only screen and (max-width: 35em) {
  header.header.old .inner .main-nav li a {
    padding: 0;
  }
  header.header.old .inner .main-nav li:last-child a {
    margin-left: 10px;
  }
  header.header.old .inner .main-nav .lang-switch {
    margin-right: 5px;
  }
  .dots {
    left: -5px;
  }
  .discover .list .item, .projects .list .item {
    width: calc(100% - 20px);
    margin-bottom: 10px;
  }
  .discover .list .item .how, .projects .list .item .how {
    display: none;
  }
  .discover .list .item h2, .projects .list .item h2 {
    position: relative;
  }
  .discover .list .item:hover, .projects .list .item:hover {
    margin-bottom: 0;
  }
  .discover .list .item:hover h2, .projects .list .item:hover h2 {
    visibility: visible;
  }
  .discover .list .item:hover .how, .projects .list .item:hover .how {
    display: block;
  }
  .project-detail .slide {
    padding-left: 35px;
    padding-right: 35px;
  }
  .project-detail .crdt {
    flex-direction: column;
    margin-bottom: 20px;
  }
  .project-detail .crdt .label {
    width: auto;
  }
  .together h3 {
    margin-top: 10px;
  }
  .together .blocks .block {
    margin-bottom: 10px !important;
  }
  .ongoing .cols {
    flex-direction: column;
  }
  .ongoing .cols.col-2 .col:first-child {
    margin-right: 0 !important;
  }
  .ongoing .cols.col-2 .col:last-child {
    margin-left: 0 !important;
  }
  .services .blocks .block, .ventures .blocks .block, .knowledge .list .item, .trainings .list .item, .projects .list .item {
    width: 100%;
  }
  .services .blocks .block:nth-child(odd), .services .blocks .block:nth-child(even), .ventures .blocks .block:nth-child(odd), .ventures .blocks .block:nth-child(even), .knowledge .list .item:nth-child(odd), .knowledge .list .item:nth-child(even), .trainings .list .item:nth-child(odd), .trainings .list .item:nth-child(even), .projects .list .item:nth-child(odd), .projects .list .item:nth-child(even) {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .services .our-expertise .blocks .block, .services .our-clients .blocks .block {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .services .why-us .block {
    padding-left: 20px;
    padding-right: 20px;
  }
  .services .our-expertise .btn {
    width: calc(100% - 40px);
    margin-left: 0;
    margin-right: 0;
  }
}
@media only screen and (max-width: 27em) {
  .discover .project-type a:nth-child(even), .projects .project-type a:nth-child(even) {
    flex-basis: 57%;
  }
}
.main-nav ul {
  display: flex;
}

.m-menu {
  position: fixed;
  top: 30px;
  right: 20px;
  display: none;
  cursor: pointer;
  z-index: 6;
}
.m-menu .open {
  display: none;
}
.m-menu .mm {
  border: none;
  background: pink;
  cursor: pointer;
  position: relative;
  display: block;
  outline: none;
  padding: 0;
}

.m-menu-open .closed {
  display: none;
}
.m-menu-open .open {
  display: block;
}

@media only screen and (max-width: 45em) {
  .m-menu {
    display: block;
  }
  html.noscroll {
    overflow: hidden;
  }
  body.noscroll {
    overflow: visible;
    height: 100%;
  }
  .m-menu-open .nav__container {
    position: absolute;
    top: 100px;
    left: 0;
    width: 100%;
    height: calc(100% - 180px);
    padding-top: 40px;
    padding-bottom: 40px;
    /* These 2 below are all the magic: */
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    /* Hide scrollbar for Chrome, Safari and Opera */
    /* Hide scrollbar for IE and Edge */
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .m-menu-open .nav__container::-webkit-scrollbar {
    display: none;
  }
}
body {
  background-color: #fff;
  color: #000;
}

a {
  color: #000;
}

ul,
li {
  margin: 0;
  padding: 0;
}

nav li {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a.active, a:hover {
  color: #000;
  font-style: italic;
}

.gm-style .gm-style-iw-c {
  border-radius: 0;
}
.gm-style .gm-style-iw-c button {
  transform: scale(2);
  top: 0 !important;
  right: 0 !important;
}

.gm-style .gm-style-iw-t::after {
  visibility: hidden;
}

::-webkit-input-placeholder { /* Edge */
  color: white;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: white;
}

::placeholder {
  color: white;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm5vcm1hbGl6ZS5zY3NzIiwiX2JvaWxlcnBsYXRlLnNjc3MiLCJfZnVsbHBhZ2Uuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl90eXBvLnNjc3MiLCJzbGljay5zY3NzIiwic2xpY2stdGhlbWUuc2NzcyIsIl90cmFuc2l0aW9ucy5zY3NzIiwiX2xheW91dC5zY3NzIiwiX25hdi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FDRUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7RUFHRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBLFFBQ1E7RUFDTjs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBLFNBQ1M7RUFDUDs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0VBRUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FDM1ZGO0FBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1JOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFNSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtFQUNJOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlBO0FBQUE7RUFFSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFJSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7RUFDSTtBQUFBO0FBQUE7SUFHSTtJQUNBO0FBQUE7SUFFQTtJQUNBOztFQUdKO0FBQUE7SUFFSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFLQTtBQUFBO0lBRUk7O0VBR0o7SUFDSTs7RUFFSjtBQUFBO0lBRUk7SUFDQTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtFQUtBO0lBQ0k7O0VBR0o7QUFBQTtJQUVJOztFQUdKO0FBQUE7QUFBQTtJQUdJO0lBQ0E7O0VBR0o7QUFBQTtJQUVJOzs7QUMxUFI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0VBRUk7RUFDQTtFQUNBO0FBRUE7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFFQTs7O0FBS0o7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0FBQUE7RUFFRTtFQUNBOzs7QUFFRjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtBQUFBO0FBQUE7QUFBQTtFQUlJLGtCQzNKRzs7O0FENkpQO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtBQUFBO0VBRUksa0JDaExHOzs7QURrTFA7RUFDSTtFQUNBO0VBQ0E7RUFDQSxPQ3RMRztFRHVMSDtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0FBQUE7QUFBQTtFQUdJOzs7QUFHSjtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtJQUNJO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTs7O0FFdFBSO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDRDs7O0FBSUE7RUFDQztFQUNBOzs7QUFJRjtFQUNDO0VBQ0E7OztBQUlBO0VBQ0M7RUFDQTs7O0FBS0Q7RUFDQztFQUNBO0VBQ0E7OztBQUlGO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7OztBQUlBO0VBQ0M7RUFDQTtFQUNBOztBQUVEO0VBQ0M7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBRUQ7RUFDQzs7QUFHRDtFQUNDOztBQUVEO0VBQ0M7RUFDQTs7O0FBS0Q7RUFDQztFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBOztBQUVEO0VBQ0M7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7OztBQUlGO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFJQTtFQUNDOzs7QUFLRDtFQUNDO0VBQ0E7RUFDQTs7O0FBS0Q7RUFDQztFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUtEO0VBQ0M7RUFDQTs7O0FBSUY7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7O0FBQ0E7RUFHQztFQUNBOztBQUVEO0VBQ0M7OztBQUtEO0VBQ0M7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBOztBQUVEO0VBQ0M7RUFDQTs7O0FBSUY7RUFDQzs7O0FBR0Q7RUFFRTtJQUNDO0lBQ0E7O0VBSUQ7SUFDQztJQUNBOzs7QUFRSDtFQUVDO0lBQ0M7O0VBSUE7SUFDQztJQUNBOztFQUVEO0lBQ0M7SUFDQTs7RUFJRDtJQUNDO0lBQ0E7O0VBS0Q7SUFDQztJQUNBOztFQUVEO0lBQ0M7SUFDQTs7RUFJRDtJQUNDO0lBQ0E7OztBQzVQSDtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7OztBQUdSO0FBQUE7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QTs7QUFDQTtFQUNDLGtCTHR3Q1U7RUt1d0NWOzs7QUFLRDtFQUNDO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNDOztBQUdEO0VBQ0M7RUFDQTs7QUFFQTtFQUNDOztBQUdGO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBR0E7RUFDQztFQUNBOztBQUdGO0VBQ0M7RUFDQTtFQUVBO0VBQ0E7O0FBQ0E7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDQzs7QUFDQztFQUNDOztBQUdBO0VBQ0M7RUFDQTs7O0FBVUw7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDOzs7QUFTSjtFQUNDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBSUE7RUFDQzs7O0FBSUY7RUFFRTtJQUNDOztFQUlGO0lBQ0M7SUFDQTtJQUNBOztFQUdBO0lBQ0M7SUFDQTs7RUFHQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBS0g7SUFDQzs7RUFDQTtJQUNDOztFQUNBO0lBQ0M7O0VBRUQ7SUFDQztJQUNBOztFQUVEO0lBQ0M7O0VBS0o7SUFDRTs7RUFJQTtJQUNBOztFQUVBO0lBQ0M7O0VBS0Q7SUFDQzs7RUFFRDtJQUNDOztFQUdGO0lBQ0M7O0VBRUQ7SUFDQzs7O0FBSUg7RUFFRTtJQUNDO0lBQ0E7SUFDQTs7RUFDQTtJQUNDO0lBQ0E7O0VBR0E7SUFDQzs7RUFNRjtJQUNDO0lBRUE7O0VBQ0E7SUFDQzs7RUFDQTtJQUNDO0lBQ0E7SUFDQTs7RUFHRjtJQUNDOztFQUlGO0lBQ0M7SUFVQTs7RUFUQTtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDQzs7RUFHRDtJQUNDOztFQUVEO0lBQ0M7O0VBZ0JGO0lBQ0M7O0VBRUQ7SUFDQzs7RUFFQTtJQUNFO0lBQ0E7O0VBS0Y7SUFD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ZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogUHV0IHlvdXIgZ2xvYmFsIHN0eWxlcyBoZXJlICovXG5AaW1wb3J0ICdub3JtYWxpemUnO1xuQGltcG9ydCAnYm9pbGVycGxhdGUnO1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJ2Z1bGxwYWdlJztcbkBpbXBvcnQgJ3R5cG8nO1xuQGltcG9ydCAnc2xpY2snO1xuQGltcG9ydCAnc2xpY2stdGhlbWUnO1xuQGltcG9ydCAndHJhbnNpdGlvbnMnO1xuQGltcG9ydCAnbGF5b3V0JztcbkBpbXBvcnQgJ25hdic7XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcbiAgY29sb3I6ICRtYWluY29sb3I7XG59XG5cbmEge1xuICBjb2xvcjogJG1haW5jb2xvcjtcbn1cblxudWwsXG5saSB7XG4gIG1hcmdpbjowO1xuICBwYWRkaW5nOjA7XG59XG5cbm5hdiBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYS5hY3RpdmUsIGE6aG92ZXJ7XG4gIGNvbG9yOiAkbWFpbmNvbG9yO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIG1hcHNcbi5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJ1dHRvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ20tc3R5bGUgLmdtLXN0eWxlLWl3LXQ6OmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBFZGdlICovXG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbn0iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyohIEhUTUw1IEJvaWxlcnBsYXRlIHY2LjAuMSB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9odG1sNWJvaWxlcnBsYXRlLmNvbS8gKi9cblxuLypcbiAqIFdoYXQgZm9sbG93cyBpcyB0aGUgcmVzdWx0IG9mIG11Y2ggcmVzZWFyY2ggb24gY3Jvc3MtYnJvd3NlciBzdHlsaW5nLlxuICogQ3JlZGl0IGxlZnQgaW5saW5lIGFuZCBiaWcgdGhhbmtzIHRvIE5pY29sYXMgR2FsbGFnaGVyLCBKb25hdGhhbiBOZWFsLFxuICogS3JvYyBDYW1lbiwgYW5kIHRoZSBINUJQIGRldiBjb21tdW5pdHkgYW5kIHRlYW0uXG4gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2Ugc3R5bGVzOiBvcGluaW9uYXRlZCBkZWZhdWx0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSB0ZXh0LXNoYWRvdyBpbiBzZWxlY3Rpb24gaGlnaGxpZ2h0OlxuICogaHR0cHM6Ly90d2l0dGVyLmNvbS9taWtldGF5bHIvc3RhdHVzLzEyMjI4ODA1MzAxXG4gKlxuICogVmVuZG9yLXByZWZpeGVkIGFuZCByZWd1bGFyIDo6c2VsZWN0aW9uIHNlbGVjdG9ycyBjYW5ub3QgYmUgY29tYmluZWQ6XG4gKiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTY5ODI1MTAvNzEzMzQ3MVxuICpcbiAqIEN1c3RvbWl6ZSB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBtYXRjaCB5b3VyIGRlc2lnbi5cbiAqL1xuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjYjNkNGZjO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2IzZDRmYztcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLypcbiAqIEEgYmV0dGVyIGxvb2tpbmcgZGVmYXVsdCBob3Jpem9udGFsIHJ1bGVcbiAqL1xuXG5ociB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gYXVkaW8sIGNhbnZhcywgaWZyYW1lcyxcbiAqIGltYWdlcywgdmlkZW9zIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnM6XG4gKiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvNDQwXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLypcbiAqIFJlbW92ZSBkZWZhdWx0IGZpZWxkc2V0IHN0eWxlcy5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogQWxsb3cgb25seSB2ZXJ0aWNhbCByZXNpemluZyBvZiB0ZXh0YXJlYXMuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCcm93c2VyIFVwZ3JhZGUgUHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYnJvd3NlcnVwZ3JhZGUge1xuICAgIG1hcmdpbjogMC4yZW0gMDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDAuMmVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVscGVyIGNsYXNzZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzXG4gKi9cblxuLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogSGlkZSBvbmx5IHZpc3VhbGx5LCBidXQgaGF2ZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbiByZWFkZXJzOlxuICogaHR0cHM6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbiAqXG4gKiAxLiBGb3IgbG9uZyBjb250ZW50LCBsaW5lIGZlZWRzIGFyZSBub3QgaW50ZXJwcmV0ZWQgYXMgc3BhY2VzIGFuZCBzbWFsbCB3aWR0aFxuICogICAgY2F1c2VzIGNvbnRlbnQgdG8gd3JhcCAxIHdvcmQgcGVyIGxpbmU6XG4gKiAgICBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiAxICovXG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnRcbiAqIHRvIGJlIGZvY3VzYWJsZSB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOlxuICogaHR0cHM6Ly93d3cuZHJ1cGFsLm9yZy9ub2RlLzg5NzYzOFxuICovXG5cbi52aXN1YWxseWhpZGRlbi5mb2N1c2FibGU6YWN0aXZlLFxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTpmb2N1cyB7XG4gICAgY2xpcDogYXV0bztcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZTtcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBpbmhlcml0O1xufVxuXG4vKlxuICogSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICovXG5cbi5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcbiAqIENsZWFyZml4OiBjb250YWluIGZsb2F0c1xuICpcbiAqIEZvciBtb2Rlcm4gYnJvd3NlcnNcbiAqIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4gKiAgICBgY29udGVudGVkaXRhYmxlYCBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4gKiAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbiAqICAgIHRoYXQgcmVjZWl2ZSB0aGUgYGNsZWFyZml4YCBjbGFzcy5cbiAqIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4gKiAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4gKi9cblxuLmNsZWFyZml4OmJlZm9yZSxcbi5jbGVhcmZpeDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8qIDEgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMiAqL1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQcmludCBzdHlsZXMuXG4gICBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbiAgIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwOi8vd3d3LnNhbmJlaWppLmNvbS9hcmNoaXZlcy85NTMgKi9cbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAgKiBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgICovXG5cbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIFByaW50aW5nIFRhYmxlczpcbiAgICAgKiBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAgKi9cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxufVxuIiwiLyohXHJcbiAqIGZ1bGxQYWdlIDMuMS4wXHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9hbHZhcm90cmlnby9mdWxsUGFnZS5qc1xyXG4gKlxyXG4gKiBAbGljZW5zZSBHUEx2MyBmb3Igb3BlbiBzb3VyY2UgdXNlIG9ubHlcclxuICogb3IgRnVsbHBhZ2UgQ29tbWVyY2lhbCBMaWNlbnNlIGZvciBjb21tZXJjaWFsIHVzZVxyXG4gKiBodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlL3ByaWNpbmcvXHJcbiAqXHJcbiAqIENvcHlyaWdodCAoQykgMjAxOCBodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlIC0gQSBwcm9qZWN0IGJ5IEFsdmFybyBUcmlnb1xyXG4gKi9cclxuaHRtbC5mcC1lbmFibGVkLFxyXG4uZnAtZW5hYmxlZCBib2R5IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcblxyXG4gICAgLypBdm9pZCBmbGlja2VyIG9uIHNsaWRlcyB0cmFuc2l0aW9ucyBmb3IgbW9iaWxlIHBob25lcyAjMzM2ICovXHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XHJcbn1cclxuLmZwLXNlY3Rpb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBTYWZhcmk8PTUgQW5kcm9pZDw9MyAqL1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiA8PTI4ICovXHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbi5mcC1zbGlkZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG4uZnAtc2xpZGUsIC5mcC1zbGlkZXNDb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmZwLXNsaWRlcyB7XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDsgLyogU2FmYXJpPD02IEFuZHJvaWQ8PTQuMyAqL1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcbn1cclxuLmZwLXNlY3Rpb24uZnAtdGFibGUsIC5mcC1zbGlkZS5mcC10YWJsZSB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHRhYmxlLWxheW91dDpmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5mcC10YWJsZUNlbGwge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG4uZnAtc2xpZGVzQ29udGFpbmVyIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5mcC1jb250cm9sQXJyb3cge1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLyogd2Via2l0IChzYWZhcmksIGNocm9tZSkgYnJvd3NlcnMgKi9cclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIG1vemlsbGEgYnJvd3NlcnMgKi9cclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLyogd2Via2l0IChrb25xdWVyb3IpIGJyb3dzZXJzICovXHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIElFMTArICovXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBtYXJnaW4tdG9wOiAtMzhweDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxufVxyXG4uZnAtY29udHJvbEFycm93LmZwLXByZXYge1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAzOC41cHggMzRweCAzOC41cHggMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxufVxyXG4uZnAtY29udHJvbEFycm93LmZwLW5leHQge1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDM4LjVweCAwIDM4LjVweCAzNHB4O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmO1xyXG59XHJcbi5mcC1zY3JvbGxhYmxlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLmZwLXNjcm9sbGVye1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4uaVNjcm9sbEluZGljYXRvcntcclxuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG59XHJcbi5mcC1ub3RyYW5zaXRpb24ge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuI2ZwLW5hdiB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgICAvLyB0b3A6IDUwJTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAvLyAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLy8gLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTUwJSwwKTtcclxufVxyXG4jZnAtbmF2LmZwLXJpZ2h0IHtcclxuICAgIHJpZ2h0OiAxN3B4O1xyXG59XHJcbiNmcC1uYXYuZnAtbGVmdCB7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG59XHJcbi5mcC1zbGlkZXNOYXZ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxufVxyXG4uZnAtc2xpZGVzTmF2LmZwLWJvdHRvbSB7XHJcbiAgICBib3R0b206IDE3cHg7XHJcbn1cclxuLmZwLXNsaWRlc05hdi5mcC10b3Age1xyXG4gICAgdG9wOiAxN3B4O1xyXG59XHJcbiNmcC1uYXYgdWwsXHJcbi5mcC1zbGlkZXNOYXYgdWwge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbiNmcC1uYXYgdWwgbGksXHJcbi5mcC1zbGlkZXNOYXYgdWwgbGkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzNweDtcclxuICAgIG1hcmdpbjogMHB4O1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuLmZwLXNsaWRlc05hdiB1bCBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSBhLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSBhLmFjdGl2ZSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEuYWN0aXZlIHNwYW4sXHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgYS5hY3RpdmUgc3BhbixcclxuLmZwLXNsaWRlc05hdiB1bCBsaTpob3ZlciBhLmFjdGl2ZSBzcGFue1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XHJcbiB9XHJcbiNmcC1uYXYgdWwgbGkgYSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEgc3BhbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgaGVpZ2h0OiA4cHg7XHJcbiAgICB3aWR0aDogOHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luOiAtNXB4IDAgMCAtNXB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG59XHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgYSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpOmhvdmVyIGEgc3BhbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xyXG59XHJcbiNmcC1uYXYgdWwgbGkgLmZwLXRvb2x0aXAge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIGNvbG9yOiAkZ3JleTtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAvLyBmb250LXNpemU6IDE0cHg7XHJcbiAgICAvLyBmb250LWZhbWlseTogYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBtYXgtd2lkdGg6IDIyMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgLmZwLXRvb2x0aXAsXHJcbiNmcC1uYXYuZnAtc2hvdy1hY3RpdmUgYS5hY3RpdmUgKyAuZnAtdG9vbHRpcCB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSAuZnAtdG9vbHRpcC5mcC1yaWdodCB7XHJcbiAgICByaWdodDogMjBweDtcclxufVxyXG4jZnAtbmF2IHVsIGxpIC5mcC10b29sdGlwLmZwLWxlZnQge1xyXG4gICAgbGVmdDogMjBweDtcclxufVxyXG4uZnAtYXV0by1oZWlnaHQuZnAtc2VjdGlvbixcclxuLmZwLWF1dG8taGVpZ2h0IC5mcC1zbGlkZSxcclxuLmZwLWF1dG8taGVpZ2h0IC5mcC10YWJsZUNlbGx7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUuZnAtc2VjdGlvbixcclxuLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUgLmZwLXNsaWRlLFxyXG4uZnAtcmVzcG9uc2l2ZSAuZnAtYXV0by1oZWlnaHQtcmVzcG9uc2l2ZSAuZnAtdGFibGVDZWxsIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKk9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzKi9cclxuLmZwLXNyLW9ubHl7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1ZW0pIHtcclxuICAgICNmcC1uYXYuZnAtbGVmdCB7XHJcbiAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICBib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzVlbSkge1xyXG4gICAgI2ZwLW5hdi5mcC1sZWZ0IHtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiJGJnY29sb3I6ICNmZmY7XG4kbWFpbmNvbG9yOiAjMDAwO1xuJGhpZ2hsaWdodDogIzE3NDlGNTtcbiRyZWQ6ICNFQTFEMjI7XG4kYmx1ZTogIzE3NDlGNTtcbiRncmV5OiAjY2NjO1xuLy8gJG1heC13aWR0aDogMTIwMHB4O1xuJG1heC13aWR0aDogMTMwMHB4O1xuJGdyZXlfYWx0OiAjRUJFQkVCO1xuJHdoaXRlOiAjZmZmZmZmOyIsImh0bWwge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBuZXVlLWhhYXMtZ3JvdGVzay10ZXh0LCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5oZWFkZXIubmV3IHtcblx0LmxvZ28gZGl2IHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjVyZW07XG5cdH1cbn1cblxuLmxhbmctc3dpdGNoLCAuZmlsdGVycyB7XG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcbn1cblxuLmhvbWUsIC5wcm9qZWN0LWRldGFpbCwgLnRvZ2V0aGVyIHtcblx0LmNvbnRlbnQge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRsaW5lLWhlaWdodDogMy4zNzVyZW07XG5cdH1cbn1cblxuLnByb2plY3RzLCAuZGlzY292ZXIsIC5rbm93bGVkZ2UsIC50cmFpbmluZ3Mge1xuXHRoMiwgLmhvdyB7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdH1cbn1cblxuLml0ZW0udHJhaW5pbmcgLmRhdGUge1xuXHRmb250LXNpemU6IDFyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4uZS1wb3B1cCB7XG5cdGZvbnQtZmFtaWx5OiBuZXVlLWhhYXMtZ3JvdGVzay10ZXh0LCBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IDEuNXJlbTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRvZ2V0aGVyIHtcblx0aDIge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRsaW5lLWhlaWdodDogMy4zNzVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0fVxuXHRoMywgLmNsaWVudHMsIC5zb2NpYWxzIHtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS44NzVyZW07XG5cdH1cblx0LnRpdGxlLCAuZW1haWwsIC5waG9uZSwgLnlvdS11cmwsIFt0eXBlPXN1Ym1pdF0sIGZvcm0gYnV0dG9uIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHR9XG5cdGg0LCAudHh0LCAubW9yZSB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdH1cblx0LnR4dCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0fVxuXG5cdFt0eXBlPWVtYWlsXSwgdGV4dGFyZWEsIGZvcm0gYnV0dG9uIHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHR9XG5cdC5lcnJvciB7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHR9XG5cbn1cbi5zZXJ2aWNlcywgLnZlbnR1cmVzLCAuY29vcGVyYXRpdmUge1xuXHRoMSwgaDIge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRsaW5lLWhlaWdodDogMy4zNzVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0fVxuXHRoMyB7XG5cdFx0Zm9udC1zaXplOiAxLjc1cmVtOyAvLzEuNjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdH1cblx0LmJsb2NrIHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjVyZW07XG5cdH1cblx0LnN1YnRpdGxlIHtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0Zm9udC1zaXplOiAxLjJyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0fVxuXHQuZGVzYyB7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRsaW5lLWhlaWdodDogMS41cmVtO1xuXHR9XG5cdC5vdXItZXhwZXJ0aXNlIGgzLCAub3VyLWNsaWVudHMgaDMge1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuXHR9XG59XG5cbi5zZXJ2aWNlcyAuY2xpZW50cy10eHQge1xuXHRmb250LXNpemU6IDEuNXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xufVxuXG4ubW9yZSwgLmNvbnRhY3QgZm9ybSBpbnB1dCB7XG5cdGZvbnQtc2l6ZTogMXJlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tZW1iZXItcGFnZSB7XG5cdGgxIHtcblx0XHRsaW5lLWhlaWdodDogM3JlbTtcblx0fVxuXG59XG4ubWVtYmVyLXBhZ2UsIC5jb29wZXJhdGl2ZSB7XG5cdC5lbmRlYXZvdXJzIHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHR9XG59XG5cbi5vbmdvaW5nIHtcblx0LmludHJvIHtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAycmVtO1xuXHR9XG5cdC5ibG9ja3Mge1xuXHRcdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS43NXJlbTtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHR9XG59XG5cbi5jb29wZXJhdGl2ZSB7XG5cdC5ibG9jayB7XG5cdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuXHR9XG59XG5cbi5ob21lcGFnZSAuYmxvY2tzIC5ibG9ja3tcblx0Zm9udC1zaXplOiAyLjVyZW07XG5cdGxpbmUtaGVpZ2h0OiAzLjM3NXJlbTtcbn1cblxuLmNvbnRhY3QgLm1haW4sIC50cmFpbmluZy1kZXRhaWwgLmRlc2Mge1xuXHRmb250LXNpemU6IDEuNXJlbTsvLzEuMjVyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjY1cmVtO1xuXHRoMyB7XG5cdFx0Ly8gZm9udC1zaXplOiAxLjVyZW07XG5cdFx0Ly8gbGluZS1oZWlnaHQ6IDJyZW07XG5cdFx0Zm9udC1zaXplOiAxLjc1cmVtOyAvLzEuNjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHR9XG5cdGZvcm0gaW5wdXQge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG59XG5cbi50cmFpbmluZy1kZXRhaWwge1xuXHRoMSB7XG5cdFx0bGluZS1oZWlnaHQ6IDMuNXJlbTtcblx0fVxuXHQuYnRuIHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMTVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblx0LmRlc2Mge1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS4xNXJlbTtcblx0fVxuXHRoNCB7XG5cdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdH1cbn1cblxuLm0tbWVudSB7XG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MGVtKSB7XG5cdC5ob21lLCAucHJvamVjdC1kZXRhaWwsIC50b2dldGhlciB7XG5cdFx0LmNvbnRlbnQge1xuXHRcdFx0Zm9udC1zaXplOiAyLjI1cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuXHRcdH1cblx0fVxuXHQudG9nZXRoZXIge1xuXHRcdGgyIHtcblx0XHRcdGZvbnQtc2l6ZTogMi4yNXJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcblx0XHR9XG5cblx0fVxuXG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NWVtKSB7XG5cblx0LmhlYWRlci5uZXcgLmxvZ28gZGl2IHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdH1cblxuXHQubS1tZW51LW9wZW4gaGVhZGVyLmhlYWRlci5uZXcgLmlubmVyIHtcblx0XHQubWFpbi1uYXYgYSB7XG5cdFx0XHRmb250LXNpemU6IDIuNXJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyLjVyZW07XG5cdFx0fVxuXHRcdC5tYWluLW5hdiAubGFuZy1zd2l0Y2ggYSB7XG5cdFx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMS41cmVtO1xuXHRcdH1cblx0fVxuXHQuaG9tZSwgLnByb2plY3QtZGV0YWlsLCAudG9nZXRoZXIge1xuXHRcdC5jb250ZW50IHtcblx0XHRcdGZvbnQtc2l6ZTogMnJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyLjVyZW07XG5cdFx0fVxuXHR9XG5cblx0LnRvZ2V0aGVyIHtcblx0XHRoMiB7XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMi41cmVtO1xuXHRcdH1cblx0XHRoMywgLmNsaWVudHMsIC5zb2NpYWxzIHtcblx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDJyZW07XG5cdFx0fVxuXHR9XG5cdC5vbmdvaW5nIHtcblx0XHRoMSB7XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMi41cmVtO1xuXHRcdH1cblx0fVxuXG59IiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi9pbWcvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgICB9XG59XG5cblxuXG4vKiBQcmV2IC8gTmV4dCAqL1xuXG4uc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyB0b3A6IGNhbGMoNTAlIC0gMTNweCk7XG4gICAgYm90dG9tOiAyM3B4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICBib3JkZXI6bm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2Fycm93LnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHdpZHRoOiAxM3B4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBvdXRsaW5lOm5vbmU7XG59XG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogMTUlO1xuICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbn1cbi5zbGljay1uZXh0IHtcbiAgICAvLyB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcbiAgICByaWdodDogMTUlO1xufVxuXG5cbiIsIi5zbGlkZS1sZWF2ZS1hY3RpdmUsXG4uc2xpZGUtZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG59XG5cbi5zbGlkZS1sZWF2ZSxcbi5zbGlkZS1lbnRlci10byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5zbGlkZS1sZWF2ZS10byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtZW50ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vLyBTbGlkZSBmcm9tIHJpZ2h0IHRvIGxlZnRcbi5zbGlkZS1sZWZ0LWxlYXZlLWFjdGl2ZSxcbi5zbGlkZS1sZWZ0LWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjRzICBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUwLCAwLjU1MCwgMC45NTApO1xufVxuXG4uc2xpZGUtbGVmdC1lbnRlci1hY3RpdmUge1xuICAvLyB0cmFuc2l0aW9uOiBhbGwgMTRzICBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUwLCAwLjU1MCwgMC45NTApO1xufVxuXG4uc2xpZGUtbGVmdC1sZWF2ZXtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnNsaWRlLWxlZnQtbGVhdmUtdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5zbGlkZS1sZWZ0LWVudGVyLXRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxO1xufVxuLnNsaWRlLWxlZnQtZW50ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi50b2dldGhlciBtYWluLnNsaWRlLWxlZnQtZW50ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MCUpICFpbXBvcnRhbnQ7XG59XG4iLCIvKiBQdXQgeW91ciBsYXlvdXQgaGVyZSAqL1xuXG5ib2R5LCBodG1sIHtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLmxvZ2dlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IHllbGxvdztcblx0Y29sb3I6IGJsYWNrO1xuXHR6LWluZGV4OiAxMjM7XG5cdGZvbnQtc2l6ZTogMXJlbTtcbn1cbmhlYWRlci5oZWFkZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuXHR6LWluZGV4OiAyO1xuXHQuaW5uZXIge1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdG1heC13aWR0aDogJG1heC13aWR0aDtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XG5cdFx0LmxvZ28ge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0yNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uaGVhZGVyLm9sZCB7XG5cdC5tYWluLW5hdiB7XG5cdFx0d2lkdGg6IDUwJTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDQwcHggMjBweCAwO1xuXHRcdFx0Ji5hY3RpdmUsICY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDJweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Lmxhbmctc3dpdGNoIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGEge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQmOm5vdCguYWN0aXZlKXtcblx0XHRcdFx0dG9wOiAyMHB4O1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdCYuYWN0aXZle1xuXHRcdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IC0yMHB4O1xuXHRcdFx0dG9wOiAycHg7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHdpZHRoOiAxM3B4O1xuXHRcdFx0aGVpZ2h0OiAxOHB4O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvYXJyb3cuc3ZnKTtcblx0XHRcdHRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMTVzICBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUwLCAwLjU1MCwgMC45NTApO1xuXHRcdH1cblx0XHQmOmhvdmVyIHtcblx0XHRcdGF7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5oZWFkZXIubmV3IHtcblx0LmlubmVyIHtcblx0XHRhbGlnbi1pdGVtczogZW5kO1xuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXHRcdC5sb2dvIHtcblx0XHRcdC8vIG1pbi13aWR0aDogMzMxcHg7XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDMzMXB4O1xuXHRcdFx0fVxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS8zKTtcblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHQuaW1nLWhvbGRlciB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6IDEzMHB4O1xuXG5cdFx0XHR9XG5cblx0XHRcdC5iYXNlbGluZSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC0yMHB4O1xuXHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5tYWluLW5hdiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyoyIC0gMTBweCk7XG5cdFx0fVxuXG5cdFx0Lm5hdl9fY29udGFpbmVyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR1bCB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdHVsOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0d2lkdGg6IGNhbGMoNzUlICsgMjVweCk7XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHR3aWR0aDogY2FsYygxMDAlLzMpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHR1bDpudGgtY2hpbGQoMikge1xuXHRcdFx0XHR3aWR0aDogY2FsYygyNSUgLSAyNXB4KTtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdH1cblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQubGFuZy1zd2l0Y2gge1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2cHg7XG5cdFx0XHRcdC5hY3RpdmUge1xuXHRcdFx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRcdH1cblx0XHRcdFx0YTpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbiNjb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRtaW4taGVpZ2h0OiAxMDAlOyAvLyBzb2x2ZXMgc2FmYXJpIGJ1Z1xuXHRtYXJnaW46IDAgYXV0bztcblx0cGFkZGluZzogMDtcblx0b3ZlcmZsb3cteDpoaWRkZW47XG59XG5cbm1haW4ubWFpbiB7XG5cdGZsZXg6IDEgMCBhdXRvO1xuXHRwYWRkaW5nLXRvcDogMjAwcHg7XG59XG5cbi5jb250ZW50IHtcblx0Ly8gbWF4LXdpZHRoOiAxMjQwcHg7XG5cdG1heC13aWR0aDogMTM0MHB4O1xuXHRtYXJnaW46IDAgYXV0bztcbn1cblxuLmhvbWUge1xuXHQuY29udGVudCB7XG5cdFx0Ly8gZGlzcGxheTogZmxleDtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR0b3A6IDIwMHB4O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHQubGVmdCB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlLzMgLSAyMHB4KTtcblx0XHRcdG1heC13aWR0aDogMzkwcHg7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG5cdFx0fVxuXHRcdC5yaWdodCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiBjYWxjKDEwMCUvMyArIDIwcHgpO1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS8zKjIgLSA0NXB4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDVweDtcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0c2Nyb2xsLXNuYXAtdHlwZTogeSBwcm94aW1pdHk7XG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNTBweCk7XG5cdFx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cblx0XHR9XG5cdH1cblxuXHQucHJvamVjdCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQucGljIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXHRcdCY6aG92ZXIge1xuXHRcdFx0LnBpYyB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMCwwLDAuMDUpO1xuXHRcdH1cblx0fVxufVxuXG4uZG90cyB7XG5cdHotaW5kZXg6IDEyMzQ7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0bGVmdDogMjBweDtcblx0Ym90dG9tOiAyMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG5cdC5kb3Qge1xuXHQgIGN1cnNvcjogcG9pbnRlcjtcblx0ICBiYWNrZ3JvdW5kOiBub25lO1xuXHQgIGJvcmRlcjogbm9uZTtcblx0ICB3aWR0aDogMzJweDtcblx0ICBoZWlnaHQ6IDMzcHg7XG5cdCAgLy8gYmFja2dyb3VuZC1jb2xvcjogcGluaztcblx0ICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgJjphZnRlciB7XG5cdCAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgXHR0b3A6IDUwJTtcblx0ICBcdGxlZnQ6IDUwJTtcblx0ICAgIGNvbnRlbnQ6ICcnO1xuXHQgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG5cdCAgICBtYXJnaW4tdG9wOiAtNHB4O1xuXHQgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JleTtcblx0ICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblx0ICAgIHdpZHRoOiA4cHg7XG5cdCAgICBoZWlnaHQ6IDhweDtcblx0ICB9XG5cblx0ICAmOmhvdmVyIHtcblx0ICAgIGNvbG9yOiAkZ3JleTtcblx0ICB9XG5cblx0ICAmW2FyaWEtcHJlc3NlZD1cInRydWVcIl06YWZ0ZXIsICY6aG92ZXI6YWZ0ZXIge1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdCAgfVxuXHR9XG59XG5cblxuLyogSGlkZSBzY3JvbGxiYXIgZm9yIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYSAqL1xuLnJpZ2h0Ojotd2Via2l0LXNjcm9sbGJhciwgLmVuZGVhdm91cnM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZSBzY3JvbGxiYXIgZm9yIElFLCBFZGdlIGFuZCBGaXJlZm94ICovXG4ucmlnaHQsIC5lbmRlYXZvdXJzIHtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAgLyogRmlyZWZveCAqL1xufVxuXG5cbi8vIHByb2plY3QgZGV0YWlsXG4ucHJvamVjdC1kZXRhaWwge1xuXHRtYWluLm1haW4ge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHR9XG5cblx0LnNsaWRlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZy1sZWZ0OiA2MHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDYwcHg7XG5cdFx0LmhvdmVyLWltZyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR0b3A6IDI1JTtcblx0XHRcdG1heC13aWR0aDogNTAwcHg7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR9XG5cdFx0Jjpub3QoLm9wZW4taW1nKSAuaG92ZXItaW1ne1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0Ji5hbGl2ZSB7XG5cdFx0XHQuaG92ZXItaW1nIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5saW5rZWQge1xuXHRcdGNvbG9yOiAkYmx1ZTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0fVxuXHR9XG5cblx0LmNyZHQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0LmxhYmVsIHtcblx0XHRcdHdpZHRoOiAyNTBweDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblx0fVxuXG59XG5cbi5mcC1yZXNwb25zaXZlIHtcblx0I2ZwLW5hdiB7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxuXHQuc2VjdGlvbiB7XG5cdFx0cGFkZGluZy10b3A6IDIwMHB4O1xuXHR9XG59XG5cbi5maWx0ZXJzIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRwYWRkaW5nOiAwcHggMjBweCAxMHB4IDIwcHg7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGEge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cdFx0Y29sb3I6ICRncmV5O1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHQmOmhvdmVyLCAmLmFjdGl2ZSB7XG5cdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdCY6YWZ0ZXJ7XG5cdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHQmOmFmdGVye1xuXHRcdFx0Y29udGVudDogYXR0cihkYXRhLXRleHQpO1xuXHRcdCAgY29udGVudDogYXR0cihkYXRhLXRleHQpIC8gXCJcIjtcblx0XHQgIGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHQgIGhlaWdodDogMDtcblx0XHQgIHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQgIG92ZXJmbG93OiBoaWRkZW47XG5cdFx0ICB1c2VyLXNlbGVjdDogbm9uZTtcblx0XHQgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdH1cblx0fVxuXG59XG5cbi5kaXNjb3ZlciwgLnByb2plY3RzIHtcblx0LmZpbHRlcnMge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcblx0XHR0b3A6IDE1MnB4O1xuXHRcdHotaW5kZXg6IDM7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXHRcdG1heC13aWR0aDogJG1heC13aWR0aDtcblx0XHRtYXJnaW46MCBhdXRvIDQwcHggYXV0bztcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXG5cdFx0LnByb2plY3QtdHlwZSB7XG5cdFx0XHR3aWR0aDpjYWxjKDEwMCUvMyoyIC0gMTBweCk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdH1cblx0fVxuXHQubGlzdCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdC5pdGVtIHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDIwcHgpO1xuXHRcdFx0bWFyZ2luOiAxMHB4O1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoMiB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHQuaG93IHtcblx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHR9XG5cdFx0XHRoMiwgLmhvdyB7XG5cdFx0XHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0LmhvdyB7XG5cdFx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0I21hcCB7XG5cdFx0d2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7XG5cdFx0bWFyZ2luOiAwIDIwcHggNDBweCAyMHB4O1xuXHRcdGhlaWdodDo2MDBweDtcblx0fVxuXG59XG5cbi5lLXBvcHVwIHtcblx0cGFkZGluZzogMTBweCA2MHB4IDYwcHggMTBweDtcblx0Ly8gbWF4LXdpZHRoOiAyMDBweDtcblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdC8vIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdH1cbn1cblxuLmtub3dsZWRnZSwgLnRyYWluaW5ncywgLnRyYWluaW5nLWRldGFpbCB7XG5cdC5maWx0ZXJzIHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnY29sb3I7XG5cdFx0dG9wOiAxNTJweDtcblx0XHR6LWluZGV4OiAzO1xuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcblx0XHRtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG5cdFx0bWFyZ2luOjAgYXV0byA0MHB4IGF1dG87XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0fVxufVxuXG5cbi5rbm93bGVkZ2UsIC50cmFpbmluZ3Mge1xuXHQubGlzdCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0Lml0ZW0ge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblxuXHRcdFx0Ji50cmFpbmluZyB7XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0LmRhdGUge1xuXHRcdFx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuZGF0ZSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZGF0ZXN0ciB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdG1pbi13aWR0aDogMTIwcHg7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi50aW1lIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQmOmJlZm9yZXtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogLTEwcHg7XG5cdFx0dG9wOiA4cHg7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcblx0fVxufVxuXG4udHJhaW5pbmdzIHtcblx0LmJ0bi5tb3JlIHtcblx0XHRjb2xvcjogJHJlZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQvLyBtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXG5cdC5saXN0IC5pdGVtOmhvdmVyIHtcblx0XHRoMiB7XG5cdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0fVxuXHR9XG59XG5cbi50cmFpbmluZy1kZXRhaWwge1xuXG5cdC5jb250ZW50IHtcblx0XHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0fVxuXG5cdGgxIHtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHR9XG5cdC50aW1lIHtcblx0XHRtYXJnaW4tbGVmdDogMzBweDtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR3aWR0aDogNnB4O1xuXHRcdFx0aGVpZ2h0OiA2cHg7XG5cdFx0XHR0b3A6IDE3cHg7XG5cdFx0XHRsZWZ0OiAtMTdweDtcblx0XHR9XG5cdH1cblxuXHQuZGVzYyB7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHR9XG5cdC5idG4ge1xuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRtYXgtd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQubW9yZS1kZXNjIHtcblx0XHRtYXJnaW4tdG9wOiAtMzBweCAhaW1wb3J0YW50O1xuXHR9XG5cbn1cbi50b2dldGhlciB7XG5cdC5jb250ZW50IHtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdH1cblx0LndlLWNhbiwgLm1hbmlmZXN0bywgLm1lbWJlcnMsIC5jbGllbnRzLCAuc29jaWFscywgLnN0YWRzZm9ybSAudXBwZXIge1xuXHRcdG1heC13aWR0aDogJG1heC13aWR0aDtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0fVxuXHRoMiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXHRoMyB7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdH1cblx0LndlLWNhbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGhlaWdodDogNTB2aDtcblx0XHQubGVmdCB7XG5cdFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXHRcdCN0b2RvcyB7XG5cdFx0XHRvdXRsaW5lOm5vbmU7XG5cdFx0fVxuXHRcdC5yaWdodCB7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0b3ZlcmZsb3cteTogc2Nyb2xsO1xuXHRcdFx0c2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG5cdFx0XHQvLyBzY3JvbGwtc25hcC10eXBlOiB5IHByb3hpbWl0eTtcblx0XHRcdC8vIGhlaWdodDogNTB2aDtcblxuXHRcdFx0LnRvZG8ge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdFx0XHRzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0Ly9tYXJnaW4tYm90dG9tOiA1MHZoO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IGNhbGMoNTB2aCAtIDIwMHB4KTtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRhIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRjb2xvcjogJHJlZDtcblx0XHRcdH1cblx0XHRcdC5lcnJvcnMsIC5zdWNjZXNzIHtcblx0XHRcdFx0Y29sb3I6ICRoaWdobGlnaHQ7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHRmb3JtIHtcblx0XHRcdFx0cGFkZGluZzogMTBweDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdC5yb3cge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5zMiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHQmLnNob3d7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHR0ZXh0YXJlYSwgW3R5cGU9ZW1haWxdIHtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XG5cdFx0XHRcdFx0Y29sb3I6ICRtYWluY29sb3I7XG5cdFx0XHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkbWFpbmNvbG9yO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFt0eXBlPWVtYWlsXXtcblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5oLWVycm9yIHtcblx0XHRcdFx0XHQuczIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRidXR0b257XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRidXR0b24sIFt0eXBlPXN1Ym1pdF17XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRib3JkZXI6bm9uZTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5lcnJvciB7XG5cdFx0XHRcdFx0Y29sb3I6ICRoaWdobGlnaHQ7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc3RhZHNmb3JtIHtcblx0bWFyZ2luLXRvcDogNjBweDtcblx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XG5cdC51cHBlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdC5zLWxvZ28sIC5zLWludHJvIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGNvbG9yOiAkcmVkO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucy1sb2dvIHtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZ2FsbGVyeSB7XG5cdFx0LmV2ZW50IHtcblx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcblx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG5cdFx0XHR9XG5cdFx0XHRpbWcsIGlmcmFtZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdH1cblxuXHRcdH1cblx0fVxufVxuLm1hbmlmZXN0byB7XG5cdC5ibG9ja3Mge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0LmJsb2NrIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubWVtYmVycyB7XG5cdC5ibG9ja3Mge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHQuYmxvY2sge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdCY6bnRoLWNoaWxkKDRuKXtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHQucHJvZmlsZS1waWMge1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdGxlZnQ6IC0xMDAlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudGl0bGUge1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0fVxuXHRcdFx0LmVtYWlsLCAucGhvbmUge1xuXHRcdFx0XHRjb2xvcjogJGdyZXk7XG5cdFx0XHRcdHdvcmQtYnJlYWs6YnJlYWstYWxsO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0fVxuXHRcdFx0LmVuZGVhdm91cnMge1xuXHRcdFx0XHRoZWlnaHQ6IDE5MHB4O1xuXHRcdFx0XHRvdmVyZmxvdy15OnNjcm9sbDtcblx0XHRcdFx0ZmxleC1ncm93OiAxO1xuXHRcdFx0XHQudHh0IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0XHRcdGg0IHtcblx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Lm1vcmUge1xuXHRcdFx0XHRjb2xvcjogJGdyZXk7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHRcdH1cblx0XHRcdC5wcm9maWxlLXBpYyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAtNTBweDtcblx0XHRcdFx0cmlnaHQ6IC0xMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0fVxuXHRcdFx0LnlvdS11cmwge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNjBweDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRtYWluY29sb3I7XG5cdFx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRcdFx0fVxuXHRcdFx0XHQucHJvZmlsZS1waWMsIC55b3UtdXJsIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uY2xpZW50cyB7XG5cdG1hcmdpbi1ib3R0b206IDgwcHggIWltcG9ydGFudDtcblx0cCB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0fVxufVxuXG4uc29jaWFscyB7XG5cblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW46IDEwcHggNDBweCAwIDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdH1cbn1cblxuLm1lbWJlci1wYWdlIHtcblx0LmNvbnRlbnQge1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHR9XG5cdGgxIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cdC5lbWFpbCwgLnBob25lIHtcblx0XHRjb2xvcjogJGdyZXk7XG5cdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6JGdyZXk7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LnRpdGxlIHtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR9XG5cdC5wcm9maWxlLXBpYyB7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdGltZyB7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHR9XG5cdH1cblx0LmVuZGVhdm91cnMge1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0aDQge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxufVxuXG4vLyBvbmdvaW5nXG4ub25nb2luZyB7XG5cdCNjb250YWluZXIge1xuXHRcdG92ZXJmbG93LXg6IGluaGVyaXQ7XG5cdFx0LmNvbnRlbnQge1xuXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdH1cblx0XHRoMSwgLnN1YnRpdGxlLCAuaW50cm8sIC5jb2xzLCAuaW1nIHtcblx0XHRcdG1heC13aWR0aDogOTUwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXHRcdC5ibG9ja3Mge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogODBweDtcblx0XHR9XG5cdFx0LmNvbHMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdCYuY29sLTIge1xuXHRcdFx0XHQuY29sOmZpcnN0LWNoaWxke1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuY29sOmxhc3QtY2hpbGR7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmltZyB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0XHQuY2FwdGlvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZW1iZWQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW4tdG9wOiA4MHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRcdGlmcmFtZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZ2FsbGVyeSB7XG5cdFx0XHQuZXZlbnQge1xuXHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcblx0XHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4IDAgMCAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdGltZywgaWZyYW1lIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zZXJ2aWNlcywgLnZlbnR1cmVzLCAuY29vcGVyYXRpdmUge1xuXHQuc2VjdGlvbiB7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHR9XG5cdC5ibG9ja3Mge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG59XG5cbi52ZW50dXJlcyB7XG5cdC5pbnRybyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbi1ib3R0b206IDgwcHg7XG5cdH1cbn1cblxuLmtub3dsZWRnZSAubGlzdCAuaXRlbSxcbi50cmFpbmluZ3MgLmxpc3QgLml0ZW0sXG4uc2VydmljZXMgLmJsb2NrcyAuYmxvY2ssXG4udmVudHVyZXMgLmJsb2NrcyAuYmxvY2ssXG4ucHJvamVjdHMgLmxpc3QgLml0ZW0ge1xuXHR3aWR0aDogY2FsYygxMDAlLzMgLSAyMHB4KTtcblx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdG1hcmdpbi1yaWdodDogMTVweDtcblx0JjpudGgtY2hpbGQoM24gKyAzKXtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblx0JjpudGgtY2hpbGQoM24gLSAyKXtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0fVxufVxuLnByb2plY3RzIC5saXN0IHtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdG1hcmdpbi1yaWdodDogMDtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uc2VydmljZXMsIC52ZW50dXJlcyB7XG5cdC5ibG9ja3Mge1xuXHRcdC5ibG9jayB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0XHRcdH1cblxuXHRcdFx0LmJ0bi5tb3JlIHtcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubW9yZS1pbmZvIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQuaW1nIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogLTE1MHB4O1xuXHRcdFx0cmlnaHQ6IGNhbGMoLTEwMCUgLSA0MHB4KTtcblx0XHRcdHdpZHRoOiAxMDAlXHQ7XG5cdFx0fVxuXHR9XG59XG5cbi5zZXJ2aWNlcyB7XG5cdC5jb250ZW50IHtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdH1cblx0LmJsb2NrLnNlcnZpY2Uub3BlbiB7XG5cdFx0Lm1vcmUtaW5mbyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgzbiszKXtcblx0XHRcdC5pbWcge1xuXHRcdFx0XHRyaWdodDogYXV0bztcblx0XHRcdFx0bGVmdDogY2FsYygtMTAwJSAtIDQwcHgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5vdXItZXhwZXJ0aXNlLCAub3VyLWNsaWVudHMge1xuXHRcdGgyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0fVxuXG5cdH1cblxuXHQub3VyLWNsaWVudHMge1xuXHRcdC5ibG9ja3MgLmJsb2NrIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS82IC0gMTAwcHgvNik7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdFx0JjpudGgtY2hpbGQoNm4gKyA2KXtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoNm4gLSA1KXtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR9XG5cblx0XHRcdGgzIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHRcdC5jbGllbnRzLXR4dCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA4MHB4O1xuXHRcdH1cblxuXHR9XG5cblx0Lm91ci1leHBlcnRpc2Uge1xuXHRcdGJhY2tncm91bmQ6ICRncmV5X2FsdDtcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cblxuXG5cdFx0LmJ0bnMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHR9XG5cdFx0LmJ0biB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDYwcHgpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0bWFyZ2luOiAxMHB4O1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cdC5ncmV5LWlubmVyIHtcblx0XHRtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0LndoeS11cyB7XG5cdFx0Y291bnRlci1yZXNldDogYmxvY2s7IC8vIFNldCBhIGNvdW50ZXIgbmFtZWQgJ2Jsb2NrJywgYW5kIGl0cyBpbml0aWFsIHZhbHVlIGlzIDAuXG5cdFx0YmFja2dyb3VuZDogJGdyZXlfYWx0O1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXG5cdFx0LmJsb2NrcyB7XG5cdFx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRcdG92ZXJmbG93LXg6IHNjcm9sbDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMjBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcblx0XHRcdC8qIEhpZGUgc2Nyb2xsYmFyIGZvciBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEgKi9cblx0XHRcdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0XHRcdCAgZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LyogSGlkZSBzY3JvbGxiYXIgZm9yIElFLCBFZGdlIGFuZCBGaXJlZm94ICovXG5cbiAgXHRcdC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgIC8qIElFIGFuZCBFZGdlICovXG4gIFx0XHRzY3JvbGxiYXItd2lkdGg6IG5vbmU7ICAvKiBGaXJlZm94ICovXG5cblx0XHR9XG5cblx0XHQuYmxvY2sge1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS80KTtcblx0XHRcdHBhZGRpbmctbGVmdDogNDBweDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA4MHB4O1xuXHRcdFx0fVxuXHRcdFx0aDM6OmJlZm9yZSB7XG5cdFx0XHQgIGNvdW50ZXItaW5jcmVtZW50OiBibG9jazsgLyogSW5jcmVtZW50IHRoZSB2YWx1ZSBvZiBibG9jayBjb3VudGVyIGJ5IDEgKi9cblx0XHRcdCAgY29udGVudDogY291bnRlcihibG9jayk7IC8qIERpc3BsYXkgY291bnRlciB2YWx1ZSBpbiBkZWZhdWx0IHN0eWxlIChkZWNpbWFsKSAqL1xuXHRcdFx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQgIGxlZnQ6IDA7XG5cdFx0XHQgIHRvcDogLTEwcHg7XG5cdFx0XHQgIGNvbG9yOiAkd2hpdGU7XG5cdFx0XHQgIGZvbnQtc2l6ZTogM3JlbTtcblx0XHRcdCAgZm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0ICBwYWRkaW5nOiAwIDIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi52ZW50dXJlcyB7XG5cdC5ibG9ja3MgLmJsb2NrIHtcblx0XHQuZGVzYyA+IHAge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHR9XG5cdH1cbn1cblxuLmNvbnRhY3QtdXMge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGEge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRjb2xvcjogJHJlZDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdH1cblx0bWFyZ2luLWJvdHRvbTogNjBweDtcbn1cblxuLmNvb3BlcmF0aXZlIHtcblx0aDIsIGgzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cdC5ibG9ja3MuaW50cm8ge1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHQuYmxvY2sge1xuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG5cdFx0XHQmOm50aC1jaGlsZChvZGQpe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZChldmVuKXtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm1lbWJlcnMge1xuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cblx0XHQuYmxvY2tzIHtcblx0XHRcdC5ibG9jayB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDkwcHgvNCk7XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDRuIC0gMykge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDRuICsgNCkge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0aDMsIC50aXRsZSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdFx0XHR9XG5cdFx0XHQuZW1haWwsIC5waG9uZSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuXG5cbi5jb250YWN0IHtcblxuXHQuY29udGFjdC1saW5rcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHRtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblxuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdH1cblx0XHQuYmxvY2s6bnRoLWNoaWxkKDEpIHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyk7XG5cdFx0fVxuXHRcdC5ibG9jazpudGgtY2hpbGQoMikge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgXHR3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEwcHgpO1xuICAgIFx0ZGlzcGxheTogZmxleDtcbiAgICBcdGEge1xuICAgIFx0XHR3aWR0aDogY2FsYygyNSUpO1xuICAgIFx0XHQmOm50aC1jaGlsZCgyKXtcbiAgICBcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcbiAgICBcdFx0XHR3aWR0aDogY2FsYygyNSUgLSAxMHB4KTtcbiAgICBcdFx0fVxuICAgIFx0XHQmOm50aC1jaGlsZCgzKXtcbiAgICBcdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcbiAgICBcdFx0XHR3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICBcdFx0fVxuICAgIFx0XHQmOm50aC1jaGlsZCg0KXtcbiAgICBcdFx0XHRtYXJnaW4tbGVmdDogMjVweDtcbiAgICBcdFx0XHR3aWR0aDogY2FsYygyNSUgLSAyNXB4KTtcbiAgICBcdFx0fVxuICAgIFx0fVxuXHRcdH1cblx0fVxuXG5cdC5ibG9ja3Mge1xuXHRcdG1heC13aWR0aDogMTAwMHB4O1xuXHRcdG1hcmdpbjogMCBhdXRvIDYwcHggYXV0bztcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHQuYmxvY2sge1xuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gNjBweCk7XG5cblx0XHRcdGgzIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0I21hcCB7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHRtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87XG5cdFx0aGVpZ2h0OjMwMHB4O1xuXHR9XG5cblx0Zm9ybSB7XG5cdFx0ZGl2IHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0fVxuXHRcdGlucHV0IHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcblx0XHRcdHBhZGRpbmc6IDE1cHg7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkZ3JleV9hbHQ7XG5cdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6MDtcblxuXHRcdH1cblx0XHRpbnB1dDo6cGxhY2Vob2xkZXIge1xuXHRcdCAgICBjb2xvcjogJG1haW5jb2xvcjtcblx0XHR9XG5cblx0fVxufVxuXG4uY29udGFjdCBmb3JtIGlucHV0W3R5cGU9c3VibWl0XSwgLnRyYWluaW5nLWRldGFpbCAuYnRuIHtcblx0YmFja2dyb3VuZDogJGJsdWU7XG5cdGNvbG9yOiB3aGl0ZTtcblx0cGFkZGluZzogMTVweCA0MHB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRib3JkZXItcmFkaXVzOjA7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcblx0bWF4LXdpZHRoOiAzMDBweDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRtYWluY29sb3I7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHR9XG59XG5cbi5ob21lcGFnZSB7XG5cdG1haW4ubWFpbiB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0bWFyZ2luLXRvcDogMjAwcHg7XG5cdFx0ei1pbmRleDogMztcblx0fVxuXHQuYmxvY2tzIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0fVxuXHQuY29sIHtcblx0XHQvLyB3aWR0aDogYXV0bztcblx0XHR3aWR0aDogY2FsYygxMDAlLzMgLSA0MHB4KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0cGFkZGluZzogMjBweDtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0bWFyZ2luLXRvcDogNjBweDtcblx0XHR9XG5cblx0XHQuYmxvY2sge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMjBweDtcblxuXHRcdFx0Ji5uby1pbWcge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxODBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJsb2NrLWNvbnRlbnQge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6ZmxleC1zdGFydDtcblx0XHR9XG5cdFx0aDMge1xuXHRcdFx0bWFyZ2luOiAtMzBweCAwIDAgLTIwcHg7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0fVxuXHRcdC5uby1pbWcge1xuXHRcdFx0aDMge1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWcge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdC8vIHdpZHRoOiBhdXRvO1xuXHRcdFx0YWxpZ24tc2VsZjpjZW50ZXI7XG5cdFx0XHRib3gtc2hhZG93OiAxMHB4IDEwcHggMjVweCAxcHggcmdiYSg1LCA1LCA1LCAuMTI1KTtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0fVxuXHRcdFx0aDMge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRyYW5zZm9ybTp0cmFuc2xhdGUoLTNweCwzcHgpO1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHR6LWluZGV4OiAtMTtcblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC5ibG9jazpob3ZlciB7XG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdGgzIHtcblx0XHRcdFx0XHR6LWluZGV4OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5pbWcge1xuXHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcblx0XHRcdFx0XHRcdG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0fVxuXG5cdH1cbn1cblxuLnByb2plY3RzLCAua25vd2xlZGdlLCAudHJhaW5pbmdzLCAudHJhaW5pbmctZGV0YWlsIHtcblxuXHRtYWluLm1haW4ge1xuXHRcdHBhZGRpbmctdG9wOiAyMzBweDtcblx0fVxuXHQuZmlsdGVycyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0dG9wOiAxNzJweDtcblx0XHQubGlzdC10eXBlIHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDIwcHgpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXHRcdC5maWx0ZXItdHlwZSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyoyIC0gMTBweCk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0YSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHQvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHQvLyBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdH1cblx0fVxufVxuXG4vLyB0b2dnbGUgbW9iaWxlIGZpbHRlclxuI20tZmlsdGVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRkaXNwbGF5OiBub25lO1xufVxuI2QtZmlsdGVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLnByb2plY3RzIHtcblx0LmZpbHRlcnMgLmZpbHRlci10eXBlLCAjZmlsdGVyLWFsbCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1ZW0pIHtcblx0LnByb2plY3RzIC5maWx0ZXJzLCAuZGlzY292ZXIgLmZpbHRlcnMge1xuXHRcdGEge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdH1cblx0fVxuXG5cdGhlYWRlci5oZWFkZXIubmV3IC5pbm5lciB7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogcGluaztcblxuXHRcdC5sb2dvIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuXG5cdFx0XHQuaW1nLWhvbGRlciB7XG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdG1heC13aWR0aDogMzIwcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblx0XHQubWFpbi1uYXYge1xuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG5cdFx0XHQubmF2X19jb250YWluZXIge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0dWw6bnRoLW9mLXR5cGUoMil7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6ZW5kO1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRcdH1cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmhvbWVwYWdlIC5jb2wge1xuICBcdHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpO1xuICB9XG5cbiAgLnByb2plY3RzLCAua25vd2xlZGdlLCAudHJhaW5pbmdzIHtcbiAgXHRtYWluLm1haW4ge1xuXHRcdFx0cGFkZGluZy10b3A6IDI2MHB4O1xuXHRcdH1cbiAgXHQuZmlsdGVycyB7XG4gIFx0XHR0b3A6IDIwMnB4O1xuICBcdH1cbiAgfVxuXG4gIC5maWx0ZXJzLnNpbmdsZSB7XG4gIFx0Lmxpc3QtdHlwZSB7XG4gIFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIFx0fVxuICBcdC5maWx0ZXItdHlwZSB7XG4gIFx0XHRtYXJnaW4tbGVmdDogMDtcbiAgXHR9XG4gIH1cbiAgLmNvbnRhY3QgLmNvbnRhY3QtbGlua3Mge1xuICBcdG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLnNlcnZpY2VzIC53aHktdXMgLmJsb2NrIHtcbiAgXHR3aWR0aDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDVlbSkge1xuXG4gIGhlYWRlci5oZWFkZXIub2xkIC5pbm5lciB7XG4gIFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgXHRtaW4taGVpZ2h0OiAxODBweDtcbiAgXHQubWFpbi1uYXYge1xuICBcdFx0d2lkdGg6IDEwMCU7XG4gIFx0XHRtYXgtd2lkdGg6IG5vbmU7XG4gIFx0fVxuICBcdC5sb2dvIHtcbiAgXHRcdGltZyB7XG4gIFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuICBcdFx0fVxuICBcdH1cbiAgfVxuXG4gIGhlYWRlci5oZWFkZXIubmV3IC5pbm5lciB7XG4gIFx0LmxvZ28ge1xuICBcdFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgXHRcdC8vIG1pbi13aWR0aDogMDtcbiAgXHRcdHdpZHRoOiBhdXRvO1xuICBcdFx0LmltZy1ob2xkZXIge1xuICBcdFx0XHRtYXgtaGVpZ2h0OiAxMDBweDtcbiAgXHRcdFx0aW1nIHtcbiAgXHRcdFx0XHRtYXJnaW4tdG9wOiAtMzNweDtcbiAgXHRcdFx0XHRtYXJnaW4tbGVmdDogLTI1cHg7XG4gIFx0XHRcdFx0d2lkdGg6IDI1MHB4O1xuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHQuYmFzZWxpbmUge1xuICBcdFx0XHRtYXJnaW4tdG9wOiAtN3B4O1xuICBcdFx0fVxuICBcdH1cblxuICBcdC5tYWluLW5hdiB7XG4gIFx0XHR3aWR0aDogYXV0bztcblx0XHQgIHVsOmZpcnN0LWNoaWxkIHtcblx0XHQgICAgZGlzcGxheTogbm9uZTtcblx0XHQgIH1cblx0XHQgIHVsOm50aC1jaGlsZCgyKSBsaTpmaXJzdC1jaGlsZCB7XG5cdFx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0ICB9XG5cdFx0ICB1bDpudGgtb2YtdHlwZSgyKXtcblx0XHQgIFx0YWxpZ24tc2VsZjplbmQ7XG5cdFx0ICB9XG5cdFx0ICBtYXJnaW4tdG9wOiA1M3B4O1xuXHRcdCAgLmxhbmctc3dpdGNoIHtcblx0XHQgIFx0bWFyZ2luLXRvcDogMDtcblx0XHQgIH1cblx0XHQgIC5uYXZfX2NvbnRhaW5lciBsaSB7XG5cdFx0ICBcdHdpZHRoOiAxMDAlO1xuXHRcdCAgfVxuXHRcdH1cblxuXHRcdC8vIC5tYWluLW5hdiAsIC5uYXZfX2NvbnRhaW5lciB7XG5cdFx0Ly8gXHR0cmFuc2l0aW9uOiBhbGwgMC4yNXMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG5cdFx0Ly8gfVxuXHRcdC8vIC5tYWluLW5hdiB7XG5cdFx0Ly8gXHRtYXJnaW4tbGVmdDogMTAwJTtcblx0XHQvLyB9XG5cdFx0Ly8gLm5hdl9fY29udGFpbmVyIHtcblx0XHQvLyBcdGxlZnQ6IDEwMCU7XG5cdFx0Ly8gfVxuICB9XG5cbiAgLm0tbWVudS1vcGVuIHtcbiAgXHRoZWFkZXIuaGVhZGVyLm5ldyB7XG4gIFx0XHR6LWluZGV4OiA1O1xuICBcdH1cbiAgXHRoZWFkZXIuaGVhZGVyLm5ldywgaGVhZGVyLmhlYWRlci5uZXcgLmlubmVyIHtcbiAgXHRcdGhlaWdodDogMTAwJTtcbiAgXHR9XG4gICAgaGVhZGVyLmhlYWRlci5uZXcgLmlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLm5hdl9fY29udGFpbmVyIHtcblx0XHRcdFx0Ly8gbGVmdDogMDsgLy8gYW5pbWF0ZSBvcHRpb25cblx0XHRcdH1cbiAgICB9XG4gICAgLmxvZ28ge1xuICAgIFx0cGFkZGluZy10b3A6IDIwcHg7XG4gICAgXHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgXHRwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICAgIH1cbiAgICAubWFpbi1uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDQwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsOm50aC1jaGlsZCgyKSB7XG4gICAgICBcdGFsaWduLXNlbGY6ZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgICAgXHRhbGlnbi1pdGVtczpmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG5cbiAgICAgIFx0bGk6Zmlyc3QtY2hpbGQge1xuXHRcdCAgICBcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHQgICAgfVxuXHRcdCAgICBsaTpsYXN0LWNoaWxkIHtcblx0XHQgICAgXHQvLyBkaXNwbGF5OiBub25lO1xuXHRcdCAgICBcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHQgICAgXHR0b3A6IDcycHg7XG5cdFx0ICAgIFx0cmlnaHQ6IDIwcHg7XG5cdFx0ICAgIFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0XHQgICAgXHQubGFuZy1zd2l0Y2gge1xuXHRcdCAgICBcdFx0ZGlzcGxheTogZmxleDtcblx0XHQgICAgXHRcdGEge1xuXHRcdCAgICBcdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHQgICAgXHRcdFx0cGFkZGluZzogMDtcblx0XHQgICAgXHRcdH1cblx0XHQgICAgXHR9XG5cblx0XHQgICAgfVxuXHRcdCAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuaG9tZSAuY29udGVudCB7XG4gIFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHQubGVmdCwgLnJpZ2h0IHtcbiAgXHRcdHBhZGRpbmc6IDAgMjBweDtcbiAgXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICBcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIFx0XHRsZWZ0OiAwO1xuICBcdH1cbiAgXHQucmlnaHQge1xuICBcdFx0dG9wOiA0MHB4O1xuICBcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjUwcHgpO1xuICBcdH1cblxuICBcdC5wcm9qZWN0IHtcbiAgXHRcdC5waWMge1xuICBcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHR6LWluZGV4OiAtMTtcbiAgXHRcdFx0dG9wOiAtMTBweDtcbiAgXHRcdFx0aW1nIHtcbiAgXHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH1cbiAgfVxuXG4gIC5kb3RzIHtcbiAgXHRsZWZ0OiAxMHB4O1xuICBcdGJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5kaXNjb3ZlciwgLnByb2plY3RzIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0cGFkZGluZy10b3A6IDMyMHB4O1xuICBcdH1cbiAgXHQuZmlsdGVycyB7XG4gIFx0XHR0b3A6IDIwMHB4O1xuICBcdFx0cGFkZGluZy10b3A6IDIwcHg7XG4gIFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBcdFx0LnByb2plY3QtdHlwZSB7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuICBcdFx0fVxuICBcdH1cbiAgXHQubGlzdCAuaXRlbSB7XG4gIFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgXHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIFx0fVxuXG4gIH1cblxuICAucHJvamVjdHMge1xuICBcdC8vIHRvZ2dsZSBtb2JpbGUgZmlsdGVyXG4gIFx0Lm0tZmlsdGVyLXdyYXAge1xuICBcdFx0ZGlzcGxheTogZmxleDtcbiAgXHR9XG5cdFx0I20tZmlsdGVyIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHQjZmlsdGVyLWFsbCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdCNkLWZpbHRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXG4gIH1cblxuICAudG9nZXRoZXIge1xuICBcdC53ZS1jYW4ge1xuICBcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHRcdC5sZWZ0LCAucmlnaHQge1xuICBcdFx0XHRtYXJnaW46IDA7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0fVxuICBcdH1cbiAgfVxuICAubWFuaWZlc3RvIHtcbiAgXHQuYmxvY2tzIHtcbiAgXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIFx0XHQuYmxvY2sge1xuICBcdFx0XHRtYXJnaW46IDBcdCFpbXBvcnRhbnQ7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0fVxuICBcdH1cblxuICB9XG4gIC5tZW1iZXJzIC5ibG9ja3Mge1xuICBcdC5ibG9jayB7XG4gIFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgXHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBcdFx0JjpudGgtY2hpbGQob2RkKXtcbiAgXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gIFx0XHR9XG4gIFx0XHQmOm50aC1jaGlsZChldmVuKXtcbiAgXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgXHRcdFx0LnByb2ZpbGUtcGljIHtcbiAgXHRcdFx0XHRyaWdodDogYXV0bztcbiAgXHRcdFx0XHRsZWZ0OiAtMTAwJTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuXG4gIFx0XHQubW9yZSB7XG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG4gIFx0XHR9XG5cbiAgXHRcdC5wcm9maWxlLXBpYyB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiA0MHB4O1xuXHRcdFx0XHRib3R0b206IGF1dG87XG5cdFx0XHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0XHRcdHotaW5kZXg6IDA7XG5cdFx0XHR9XG5cbiAgXHRcdC5lbWFpbCwucGhvbmUsLmVuZGVhdm91cnMsLnByb2ZpbGUtcGljIHtcbiAgXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBcdFx0fVxuICBcdFx0Ji55b3Uge1xuICBcdFx0XHQuZW5kZWF2b3Vyc3tcbiAgXHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHQmLm9wZW4ge1xuICBcdFx0XHR3aWR0aDogMTAwJTtcbiAgXHRcdFx0bWFyZ2luOiAwO1xuICBcdFx0XHQuZW1haWwsLnBob25lLC5lbmRlYXZvdXJzLC5wcm9maWxlLXBpYyB7XG4gIFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgXHRcdFx0fVxuXG4gIFx0XHR9XG4gIFx0fVxuICB9XG5cbiAgLmhvbWVwYWdlIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0bWFyZ2luLXRvcDogMTUwcHg7XG4gIFx0fVxuICBcdC5jb2wge1xuXHQgIFx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXHQgIFx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXHQgIFx0LmJsb2NrIHtcblx0ICBcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0ICBcdH1cblx0ICBcdGgzIHtcblx0ICBcdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0ICBcdFx0bWFyZ2luLWxlZnQ6IC0xMHB4O1xuXHQgIFx0fVxuXHQgIH1cbiAgfVxuXG4gIC5zZXJ2aWNlcyAuYmxvY2tzIC5ibG9jaywgLnZlbnR1cmVzIC5ibG9ja3MgLmJsb2NrLCAua25vd2xlZGdlIC5saXN0IC5pdGVtLCAudHJhaW5pbmdzIC5saXN0IC5pdGVtLCAucHJvamVjdHMgLmxpc3QgLml0ZW0sIC5jb29wZXJhdGl2ZSAubWVtYmVycyAuYmxvY2tzIC5ibG9jayB7XG4gIFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcblx0ICAgICY6bnRoLWNoaWxkKG9kZCkge1xuXHQgICAgXHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHQgICAgXHRtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcblx0ICAgIH1cblx0ICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcblx0ICAgIFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdCAgICBcdG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG5cdCAgICB9XG4gIH1cblxuICAuc2VydmljZXMgLm91ci1leHBlcnRpc2UsIC5zZXJ2aWNlcyAub3VyLWNsaWVudHMge1xuICBcdC5ibG9ja3MgLmJsb2NrIHtcbiAgXHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDgwcHgvMyk7XG4gIFx0XHRtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICBcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIFx0XHQmOm50aC1jaGlsZCgzbiArIDMpe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdCY6bnRoLWNoaWxkKDNuIC0gMil7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG4gIFx0fVxuICB9XG5cbiAgLmNvb3BlcmF0aXZlIC5ibG9ja3MuaW50cm8gLmJsb2NrIHtcbiAgXHR3aWR0aDogMTAwJTtcbiAgXHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICBcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbnRhY3QgLmJsb2NrcyB7XG4gIFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHQuYmxvY2sge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHRcdC5iLW1hcCB7XG5cdFx0XHRvcmRlcjoxXG5cdFx0fVxuXHRcdC5mb3JtIHtcblx0XHRcdG9yZGVyOjI7XG5cdFx0fVxuICB9XG5cbiAgLnByb2plY3RzLCAua25vd2xlZGdlLCAudHJhaW5pbmdzIHtcbiAgXHRtYWluLm1haW4ge1xuXHRcdFx0cGFkZGluZy10b3A6IDIwMHB4O1xuXHRcdH1cbiAgXHQuZmlsdGVycyB7XG4gIFx0XHR0b3A6IDEyNXB4O1xuICBcdFx0Lmxpc3QtdHlwZSB7XG4gIFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG4gIFx0XHRcdG1pbi13aWR0aDogMDtcbiAgXHRcdFx0YTpsYXN0LWNoaWxkIHtcbiAgXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9XG4gIH1cbiAgLnByb2plY3RzIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0cGFkZGluZy10b3A6IDI1MHB4O1xuICBcdH1cbiAgfVxuXG4gIC5wcm9qZWN0cywgLmtub3dsZWRnZSwgLnRyYWluaW5ncywgLnRyYWluaW5nLWRldGFpbCB7XG5cdFx0LmZpbHRlcnMge1xuXHRcdFx0Lmxpc3QtdHlwZSwgLmZpbHRlci10eXBlIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHRcdC5saXN0LXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG4gIC5zZXJ2aWNlcywgLmNvb3BlcmF0aXZlLCAuY29udGFjdCB7XG4gIFx0bWFpbi5tYWluIHtcbiAgXHRcdHBhZGRpbmctdG9wOiAxMjBweDtcbiAgXHR9XG4gIH1cbiAgLnZlbnR1cmVzIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0cGFkZGluZy10b3A6IDE1MHB4O1xuICBcdH1cbiAgfVxuXG4gIC5jb250YWN0IC5jb250YWN0LWxpbmtzIHtcbiAgXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBcdC5ibG9jayB7XG4gIFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBcdFx0bWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gIFx0XHRmbGV4LXdyYXA6IHdyYXA7XG4gIFx0XHRhIHtcbiAgXHRcdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgXHRcdFx0bWFyZ2luOiAwIDIwcHggMTBweCAwICFpbXBvcnRhbnQ7XG4gIFx0XHR9XG4gIFx0fVxuICB9XG5cbiAgLnNlcnZpY2VzIC5vdXItZXhwZXJ0aXNlIC5idG4ge1xuICBcdHdpZHRoOiBjYWxjKDUwJSAtIDYwcHgpXG4gIH1cblxuXG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNWVtKSB7XG5cdGhlYWRlci5oZWFkZXIub2xkIC5pbm5lciAubWFpbi1uYXYge1xuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXHRcdFx0JjpsYXN0LWNoaWxkIGEge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Lmxhbmctc3dpdGNoIHtcblx0XHRcdG1hcmdpbi1yaWdodDogNXB4O1xuXHRcdH1cblx0fVxuXG5cblx0LmRvdHMge1xuICBcdGxlZnQ6IC01cHg7XG4gIH1cblx0LmRpc2NvdmVyLCAucHJvamVjdHMge1xuXG4gIFx0Lmxpc3QgLml0ZW0ge1xuICBcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICBcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcbiAgXHRcdC5ob3cge1xuICBcdFx0XHRkaXNwbGF5OiBub25lO1xuICBcdFx0fVxuICBcdFx0aDIge1xuICBcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFx0XHR9XG4gIFx0XHQmOmhvdmVyIHtcbiAgXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcbiAgXHRcdFx0aDIge1xuICBcdFx0XHRcdC8vIGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG4gIFx0XHRcdH1cbiAgXHRcdFx0LmhvdyB7XG4gIFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9XG4gIH1cbiAgLnByb2plY3QtZGV0YWlsIHtcblx0XHQuc2xpZGUge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAzNXB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMzVweDtcblx0XHR9XG5cdFx0LmNyZHQge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHQubGFiZWwge1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnRvZ2V0aGVyIHtcblx0XHRoMyB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdH1cblx0XHQuYmxvY2tzIC5ibG9jayB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Lm9uZ29pbmcge1xuXHRcdC5jb2xzIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHQmLmNvbC0yIHtcblx0XHRcdFx0LmNvbDpmaXJzdC1jaGlsZHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuY29sOmxhc3QtY2hpbGR7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCAgLnNlcnZpY2VzIC5ibG9ja3MgLmJsb2NrLCAudmVudHVyZXMgLmJsb2NrcyAuYmxvY2ssIC5rbm93bGVkZ2UgLmxpc3QgLml0ZW0sIC50cmFpbmluZ3MgLmxpc3QgLml0ZW0sIC5wcm9qZWN0cyAubGlzdCAuaXRlbSAge1xuXHQgIFx0XHR3aWR0aDogMTAwJTtcblx0ICBcdFx0JjpudGgtY2hpbGQob2RkKSwgJjpudGgtY2hpbGQoZXZlbikge1xuXHRcdCAgICBcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdCAgICBcdG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdFx0ICAgIH1cblx0ICB9XG5cdCAgLnNlcnZpY2VzIC5vdXItZXhwZXJ0aXNlLCAuc2VydmljZXMgLm91ci1jbGllbnRzIHtcblx0ICBcdC5ibG9ja3MgLmJsb2NrIHtcblx0ICBcdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgIFx0XHQgICAgbWFyZ2luLWxlZnQ6IDA7XG5cdCAgXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cdCAgXHR9XG5cdCAgfVxuXHQgIC5zZXJ2aWNlcyAud2h5LXVzIC5ibG9jayB7XG5cdCAgXHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdCAgXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHQgIH1cblxuXHQgIC5zZXJ2aWNlcyAub3VyLWV4cGVydGlzZSAuYnRuIHtcbiAgXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgXHRcdG1hcmdpbi1sZWZ0OiAwO1xuICBcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuICBcdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyN2VtKSB7XG5cdGhlYWRlci5oZWFkZXIubmV3IC5pbm5lciAubG9nbyAuaW1nLWhvbGRlciB7XG5cdFx0Ly8gbWF4LWhlaWdodDo4MHB4IDtcblx0fVxuXHQuZGlzY292ZXIgLnByb2plY3QtdHlwZSwgLnByb2plY3RzIC5wcm9qZWN0LXR5cGUge1xuXHRcdFx0YSB7XG5cdFx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xuICBcdFx0XHRcdFx0Ly8gZmxleC1ncm93OiAyO1xuICBcdFx0XHRcdFx0ZmxleC1iYXNpczogNTclO1xuICBcdFx0XHRcdH1cbiAgXHRcdFx0fVxuXHRcdH1cbn0iLCIubWFpbi1uYXYgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ubS1tZW51IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6MzBweDtcbiAgcmlnaHQ6MjBweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA2O1xuXG4gIC5vcGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1tIHtcbiAgICBib3JkZXI6bm9uZTtcbiAgICBiYWNrZ3JvdW5kOnBpbms7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdXRsaW5lOm5vbmU7XG4gICAgcGFkZGluZzogMDsgLy8gaW9zIGhhcyBhIGJ1ZyBvdGhlcndpc2VcblxuXG4gIH1cbn1cblxuLm0tbWVudS1vcGVuIHtcbiAgLmNsb3NlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NWVtKSB7XG5cbiAgLm0tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBodG1sLm5vc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgYm9keS5ub3Njcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLm0tbWVudS1vcGVuIHtcbiAgICAubmF2X19jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTgwcHgpO1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgIC8qIFRoZXNlIDIgYmVsb3cgYXJlIGFsbCB0aGUgbWFnaWM6ICovXG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAvKiBIaWRlIHNjcm9sbGJhciBmb3IgQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhICovXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAvKiBIaWRlIHNjcm9sbGJhciBmb3IgSUUgYW5kIEVkZ2UgKi9cbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcblxuICAgICAgLy8gRmlyZWZveCBoYWNrXG4gICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgfVxuICB9XG5cblxuXG59Il19 */
