/* 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, .transitions h1, .transitions h2, .ventures h1, .ventures h2, .cooperative h1, .cooperative h2, .transition-detail h1, .transition-detail h2 {
  font-size: 3rem;
  line-height: 3.375rem;
  font-weight: 700;
}
.services h3, .transitions h3, .ventures h3, .cooperative h3, .transition-detail h3 {
  font-size: 1.75rem;
  line-height: 1.875rem;
  font-weight: 700;
}
.services .block, .transitions .block, .ventures .block, .cooperative .block, .transition-detail .block {
  font-size: 1rem;
  line-height: 1.25rem;
}
.services .subtitle, .transitions .subtitle, .ventures .subtitle, .cooperative .subtitle, .transition-detail .subtitle {
  font-style: italic;
  font-size: 1.2rem;
  line-height: 1.5rem;
}
.services .desc, .transitions .desc, .ventures .desc, .cooperative .desc, .transition-detail .desc {
  font-weight: 500;
  line-height: 1.5rem;
}
.services .our-expertise h3, .services .our-clients h3, .transitions .our-expertise h3, .transitions .our-clients h3, .ventures .our-expertise h3, .ventures .our-clients h3, .cooperative .our-expertise h3, .cooperative .our-clients h3, .transition-detail .our-expertise h3, .transition-detail .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, .transition-detail .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, .transition-detail .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, .transitions .section, .transition-detail .section {
  max-width: 1300px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
.services .blocks, .ventures .blocks, .cooperative .blocks, .transitions .blocks, .transition-detail .blocks {
  display: flex;
  flex-wrap: wrap;
}

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

.knowledge .list .item,
.trainings .list .item,
.services .blocks .block,
.transitions .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),
.transitions .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),
.transitions .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, .transitions .blocks .block {
  margin-bottom: 60px;
}
.services .blocks .block h3, .ventures .blocks .block h3, .transitions .blocks .block h3 {
  margin-bottom: 5px;
}
.services .blocks .block .btn.more, .ventures .blocks .block .btn.more, .transitions .blocks .block .btn.more {
  color: #EA1D22;
  text-transform: uppercase;
  cursor: pointer;
  margin-top: 10px;
  text-decoration: none;
}
.services .more-info, .ventures .more-info, .transitions .more-info {
  display: none;
  position: relative;
}
.services .more-info .img, .ventures .more-info .img, .transitions .more-info .img {
  position: absolute;
  top: -150px;
  right: calc(-100% - 40px);
  width: 100%;
}
.services .block.transition, .ventures .block.transition, .transitions .block.transition {
  text-decoration: none;
}

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

.transition-detail .img {
  margin-top: 60px;
}
.transition-detail .rel-proj a {
  text-decoration: none;
}

.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: 100%;
}
.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, .transitions .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), .transitions .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), .transitions .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, .transition-detail .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, .transitions main.main, .cooperative main.main, .contact main.main, .transition-detail 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, .transitions .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), .transitions .blocks .block:nth-child(odd), .transitions .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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O0FLMHdDWjtFQUNDLFlMeHdDTTtFS3l3Q047RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDLGtCTHJ4Q1U7RUtzeENWOzs7QUFLRDtFQUNDO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBRUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNDOztBQUdEO0VBQ0M7RUFDQTs7QUFFQTtFQUNDOztBQUdGO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7O0FBR0E7RUFDQztFQUNBOztBQUdGO0VBQ0M7RUFDQTtFQUVBO0VBQ0E7O0FBQ0E7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDQzs7QUFDQztFQUNDOztBQUdBO0VBQ0M7RUFDQTs7O0FBVUw7RUFDQzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNDOzs7QUFTSjtFQUNDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBSUE7RUFDQzs7O0FBSUY7RUFFRTtJQUNDOztFQUlGO0lBQ0M7SUFDQTtJQUNBOztFQUdBO0lBQ0M7SUFDQTs7RUFHQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBS0g7SUFDQzs7RUFDQTtJQUNDOztFQUNBO0lBQ0M7O0VBRUQ7SUFDQztJQUNBOztFQUVEO0lBQ0M7O0VBS0o7SUFDRTs7RUFJQTtJQUNBOztFQUVBO0lBQ0M7O0VBS0Q7SUFDQzs7RUFFRDtJQUNDOztFQUdGO0lBQ0M7O0VBRUQ7SUFDQzs7O0FBSUg7RUFFRTtJQUNDO0lBQ0E7SUFDQTs7RUFDQTtJQUNDO0lBQ0E7O0VBR0E7SUFDQzs7RUFNRjtJQUNDO0lBRUE7O0VBQ0E7SUFDQzs7RUFDQTtJQUNDO0lBQ0E7SUFDQTs7RUFHRjtJQUNDOztFQUlGO0lBQ0M7SUFVQTs7RUFUQTtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDQzs7RUFHRDtJQUND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RUFDQTtFQUNBOzs7QUFHSjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogUHV0IHlvdXIgZ2xvYmFsIHN0eWxlcyBoZXJlICovXG5AaW1wb3J0ICdub3JtYWxpemUnO1xuQGltcG9ydCAnYm9pbGVycGxhdGUnO1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJ2Z1bGxwYWdlJztcbkBpbXBvcnQgJ3R5cG8nO1xuQGltcG9ydCAnc2xpY2snO1xuQGltcG9ydCAnc2xpY2stdGhlbWUnO1xuQGltcG9ydCAndHJhbnNpdGlvbnMnO1xuQGltcG9ydCAnbGF5b3V0JztcbkBpbXBvcnQgJ25hdic7XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcbiAgY29sb3I6ICRtYWluY29sb3I7XG59XG5cbmEge1xuICBjb2xvcjogJG1haW5jb2xvcjtcbn1cblxudWwsXG5saSB7XG4gIG1hcmdpbjowO1xuICBwYWRkaW5nOjA7XG59XG5cbm5hdiBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYS5hY3RpdmUsIGE6aG92ZXJ7XG4gIGNvbG9yOiAkbWFpbmNvbG9yO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIG1hcHNcbi5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJ1dHRvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ20tc3R5bGUgLmdtLXN0eWxlLWl3LXQ6OmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBFZGdlICovXG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbn0iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyohIEhUTUw1IEJvaWxlcnBsYXRlIHY2LjAuMSB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9odG1sNWJvaWxlcnBsYXRlLmNvbS8gKi9cblxuLypcbiAqIFdoYXQgZm9sbG93cyBpcyB0aGUgcmVzdWx0IG9mIG11Y2ggcmVzZWFyY2ggb24gY3Jvc3MtYnJvd3NlciBzdHlsaW5nLlxuICogQ3JlZGl0IGxlZnQgaW5saW5lIGFuZCBiaWcgdGhhbmtzIHRvIE5pY29sYXMgR2FsbGFnaGVyLCBKb25hdGhhbiBOZWFsLFxuICogS3JvYyBDYW1lbiwgYW5kIHRoZSBINUJQIGRldiBjb21tdW5pdHkgYW5kIHRlYW0uXG4gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2Ugc3R5bGVzOiBvcGluaW9uYXRlZCBkZWZhdWx0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSB0ZXh0LXNoYWRvdyBpbiBzZWxlY3Rpb24gaGlnaGxpZ2h0OlxuICogaHR0cHM6Ly90d2l0dGVyLmNvbS9taWtldGF5bHIvc3RhdHVzLzEyMjI4ODA1MzAxXG4gKlxuICogVmVuZG9yLXByZWZpeGVkIGFuZCByZWd1bGFyIDo6c2VsZWN0aW9uIHNlbGVjdG9ycyBjYW5ub3QgYmUgY29tYmluZWQ6XG4gKiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTY5ODI1MTAvNzEzMzQ3MVxuICpcbiAqIEN1c3RvbWl6ZSB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBtYXRjaCB5b3VyIGRlc2lnbi5cbiAqL1xuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjYjNkNGZjO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2IzZDRmYztcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLypcbiAqIEEgYmV0dGVyIGxvb2tpbmcgZGVmYXVsdCBob3Jpem9udGFsIHJ1bGVcbiAqL1xuXG5ociB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gYXVkaW8sIGNhbnZhcywgaWZyYW1lcyxcbiAqIGltYWdlcywgdmlkZW9zIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnM6XG4gKiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvNDQwXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLypcbiAqIFJlbW92ZSBkZWZhdWx0IGZpZWxkc2V0IHN0eWxlcy5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogQWxsb3cgb25seSB2ZXJ0aWNhbCByZXNpemluZyBvZiB0ZXh0YXJlYXMuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCcm93c2VyIFVwZ3JhZGUgUHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYnJvd3NlcnVwZ3JhZGUge1xuICAgIG1hcmdpbjogMC4yZW0gMDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDAuMmVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVscGVyIGNsYXNzZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzXG4gKi9cblxuLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogSGlkZSBvbmx5IHZpc3VhbGx5LCBidXQgaGF2ZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbiByZWFkZXJzOlxuICogaHR0cHM6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbiAqXG4gKiAxLiBGb3IgbG9uZyBjb250ZW50LCBsaW5lIGZlZWRzIGFyZSBub3QgaW50ZXJwcmV0ZWQgYXMgc3BhY2VzIGFuZCBzbWFsbCB3aWR0aFxuICogICAgY2F1c2VzIGNvbnRlbnQgdG8gd3JhcCAxIHdvcmQgcGVyIGxpbmU6XG4gKiAgICBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiAxICovXG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnRcbiAqIHRvIGJlIGZvY3VzYWJsZSB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOlxuICogaHR0cHM6Ly93d3cuZHJ1cGFsLm9yZy9ub2RlLzg5NzYzOFxuICovXG5cbi52aXN1YWxseWhpZGRlbi5mb2N1c2FibGU6YWN0aXZlLFxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTpmb2N1cyB7XG4gICAgY2xpcDogYXV0bztcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZTtcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBpbmhlcml0O1xufVxuXG4vKlxuICogSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICovXG5cbi5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcbiAqIENsZWFyZml4OiBjb250YWluIGZsb2F0c1xuICpcbiAqIEZvciBtb2Rlcm4gYnJvd3NlcnNcbiAqIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4gKiAgICBgY29udGVudGVkaXRhYmxlYCBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4gKiAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbiAqICAgIHRoYXQgcmVjZWl2ZSB0aGUgYGNsZWFyZml4YCBjbGFzcy5cbiAqIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4gKiAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4gKi9cblxuLmNsZWFyZml4OmJlZm9yZSxcbi5jbGVhcmZpeDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8qIDEgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMiAqL1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQcmludCBzdHlsZXMuXG4gICBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbiAgIGh0dHA6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6YmVmb3JlLFxuICAgICo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodHRwOi8vd3d3LnNhbmJlaWppLmNvbS9hcmNoaXZlcy85NTMgKi9cbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAgKiBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgICovXG5cbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIFByaW50aW5nIFRhYmxlczpcbiAgICAgKiBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAgKi9cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxufVxuIiwiLyohXHJcbiAqIGZ1bGxQYWdlIDMuMS4wXHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9hbHZhcm90cmlnby9mdWxsUGFnZS5qc1xyXG4gKlxyXG4gKiBAbGljZW5zZSBHUEx2MyBmb3Igb3BlbiBzb3VyY2UgdXNlIG9ubHlcclxuICogb3IgRnVsbHBhZ2UgQ29tbWVyY2lhbCBMaWNlbnNlIGZvciBjb21tZXJjaWFsIHVzZVxyXG4gKiBodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlL3ByaWNpbmcvXHJcbiAqXHJcbiAqIENvcHlyaWdodCAoQykgMjAxOCBodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlIC0gQSBwcm9qZWN0IGJ5IEFsdmFybyBUcmlnb1xyXG4gKi9cclxuaHRtbC5mcC1lbmFibGVkLFxyXG4uZnAtZW5hYmxlZCBib2R5IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcblxyXG4gICAgLypBdm9pZCBmbGlja2VyIG9uIHNsaWRlcyB0cmFuc2l0aW9ucyBmb3IgbW9iaWxlIHBob25lcyAjMzM2ICovXHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XHJcbn1cclxuLmZwLXNlY3Rpb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBTYWZhcmk8PTUgQW5kcm9pZDw9MyAqL1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiA8PTI4ICovXHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbi5mcC1zbGlkZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG4uZnAtc2xpZGUsIC5mcC1zbGlkZXNDb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmZwLXNsaWRlcyB7XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDsgLyogU2FmYXJpPD02IEFuZHJvaWQ8PTQuMyAqL1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcbn1cclxuLmZwLXNlY3Rpb24uZnAtdGFibGUsIC5mcC1zbGlkZS5mcC10YWJsZSB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHRhYmxlLWxheW91dDpmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5mcC10YWJsZUNlbGwge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG4uZnAtc2xpZGVzQ29udGFpbmVyIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5mcC1jb250cm9sQXJyb3cge1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLyogd2Via2l0IChzYWZhcmksIGNocm9tZSkgYnJvd3NlcnMgKi9cclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIG1vemlsbGEgYnJvd3NlcnMgKi9cclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLyogd2Via2l0IChrb25xdWVyb3IpIGJyb3dzZXJzICovXHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIElFMTArICovXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBtYXJnaW4tdG9wOiAtMzhweDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxufVxyXG4uZnAtY29udHJvbEFycm93LmZwLXByZXYge1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAzOC41cHggMzRweCAzOC41cHggMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxufVxyXG4uZnAtY29udHJvbEFycm93LmZwLW5leHQge1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDM4LjVweCAwIDM4LjVweCAzNHB4O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmO1xyXG59XHJcbi5mcC1zY3JvbGxhYmxlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLmZwLXNjcm9sbGVye1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4uaVNjcm9sbEluZGljYXRvcntcclxuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG59XHJcbi5mcC1ub3RyYW5zaXRpb24ge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuI2ZwLW5hdiB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgICAvLyB0b3A6IDUwJTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAvLyAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLy8gLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTUwJSwwKTtcclxufVxyXG4jZnAtbmF2LmZwLXJpZ2h0IHtcclxuICAgIHJpZ2h0OiAxN3B4O1xyXG59XHJcbiNmcC1uYXYuZnAtbGVmdCB7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG59XHJcbi5mcC1zbGlkZXNOYXZ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxufVxyXG4uZnAtc2xpZGVzTmF2LmZwLWJvdHRvbSB7XHJcbiAgICBib3R0b206IDE3cHg7XHJcbn1cclxuLmZwLXNsaWRlc05hdi5mcC10b3Age1xyXG4gICAgdG9wOiAxN3B4O1xyXG59XHJcbiNmcC1uYXYgdWwsXHJcbi5mcC1zbGlkZXNOYXYgdWwge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbiNmcC1uYXYgdWwgbGksXHJcbi5mcC1zbGlkZXNOYXYgdWwgbGkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzNweDtcclxuICAgIG1hcmdpbjogMHB4O1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuLmZwLXNsaWRlc05hdiB1bCBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSBhLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSBhLmFjdGl2ZSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEuYWN0aXZlIHNwYW4sXHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgYS5hY3RpdmUgc3BhbixcclxuLmZwLXNsaWRlc05hdiB1bCBsaTpob3ZlciBhLmFjdGl2ZSBzcGFue1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XHJcbiB9XHJcbiNmcC1uYXYgdWwgbGkgYSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpIGEgc3BhbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgaGVpZ2h0OiA4cHg7XHJcbiAgICB3aWR0aDogOHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luOiAtNXB4IDAgMCAtNXB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG59XHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgYSBzcGFuLFxyXG4uZnAtc2xpZGVzTmF2IHVsIGxpOmhvdmVyIGEgc3BhbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xyXG59XHJcbiNmcC1uYXYgdWwgbGkgLmZwLXRvb2x0aXAge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIGNvbG9yOiAkZ3JleTtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAvLyBmb250LXNpemU6IDE0cHg7XHJcbiAgICAvLyBmb250LWZhbWlseTogYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBtYXgtd2lkdGg6IDIyMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiNmcC1uYXYgdWwgbGk6aG92ZXIgLmZwLXRvb2x0aXAsXHJcbiNmcC1uYXYuZnAtc2hvdy1hY3RpdmUgYS5hY3RpdmUgKyAuZnAtdG9vbHRpcCB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuI2ZwLW5hdiB1bCBsaSAuZnAtdG9vbHRpcC5mcC1yaWdodCB7XHJcbiAgICByaWdodDogMjBweDtcclxufVxyXG4jZnAtbmF2IHVsIGxpIC5mcC10b29sdGlwLmZwLWxlZnQge1xyXG4gICAgbGVmdDogMjBweDtcclxufVxyXG4uZnAtYXV0by1oZWlnaHQuZnAtc2VjdGlvbixcclxuLmZwLWF1dG8taGVpZ2h0IC5mcC1zbGlkZSxcclxuLmZwLWF1dG8taGVpZ2h0IC5mcC10YWJsZUNlbGx7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUuZnAtc2VjdGlvbixcclxuLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUgLmZwLXNsaWRlLFxyXG4uZnAtcmVzcG9uc2l2ZSAuZnAtYXV0by1oZWlnaHQtcmVzcG9uc2l2ZSAuZnAtdGFibGVDZWxsIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKk9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzKi9cclxuLmZwLXNyLW9ubHl7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1ZW0pIHtcclxuICAgICNmcC1uYXYuZnAtbGVmdCB7XHJcbiAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICBib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzVlbSkge1xyXG4gICAgI2ZwLW5hdi5mcC1sZWZ0IHtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiJGJnY29sb3I6ICNmZmY7XG4kbWFpbmNvbG9yOiAjMDAwO1xuJGhpZ2hsaWdodDogIzE3NDlGNTtcbiRyZWQ6ICNFQTFEMjI7XG4kYmx1ZTogIzE3NDlGNTtcbiRncmV5OiAjY2NjO1xuLy8gJG1heC13aWR0aDogMTIwMHB4O1xuJG1heC13aWR0aDogMTMwMHB4O1xuJGdyZXlfYWx0OiAjRUJFQkVCO1xuJHdoaXRlOiAjZmZmZmZmOyIsImh0bWwge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBuZXVlLWhhYXMtZ3JvdGVzay10ZXh0LCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5oZWFkZXIubmV3IHtcblx0LmxvZ28gZGl2IHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjVyZW07XG5cdH1cbn1cblxuLmxhbmctc3dpdGNoLCAuZmlsdGVycyB7XG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcbn1cblxuLmhvbWUsIC5wcm9qZWN0LWRldGFpbCwgLnRvZ2V0aGVyIHtcblx0LmNvbnRlbnQge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRsaW5lLWhlaWdodDogMy4zNzVyZW07XG5cdH1cbn1cblxuLnByb2plY3RzLCAuZGlzY292ZXIsIC5rbm93bGVkZ2UsIC50cmFpbmluZ3Mge1xuXHRoMiwgLmhvdyB7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdH1cbn1cblxuLml0ZW0udHJhaW5pbmcgLmRhdGUge1xuXHRmb250LXNpemU6IDFyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4uZS1wb3B1cCB7XG5cdGZvbnQtZmFtaWx5OiBuZXVlLWhhYXMtZ3JvdGVzay10ZXh0LCBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IDEuNXJlbTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRvZ2V0aGVyIHtcblx0aDIge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRsaW5lLWhlaWdodDogMy4zNzVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0fVxuXHRoMywgLmNsaWVudHMsIC5zb2NpYWxzIHtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS44NzVyZW07XG5cdH1cblx0LnRpdGxlLCAuZW1haWwsIC5waG9uZSwgLnlvdS11cmwsIFt0eXBlPXN1Ym1pdF0sIGZvcm0gYnV0dG9uIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHR9XG5cdGg0LCAudHh0LCAubW9yZSB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdH1cblx0LnR4dCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0fVxuXG5cdFt0eXBlPWVtYWlsXSwgdGV4dGFyZWEsIGZvcm0gYnV0dG9uIHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHR9XG5cdC5lcnJvciB7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuXHR9XG5cbn1cbi5zZXJ2aWNlcywgLnRyYW5zaXRpb25zLCAudmVudHVyZXMsIC5jb29wZXJhdGl2ZSwgLnRyYW5zaXRpb24tZGV0YWlsIHtcblx0aDEsIGgyIHtcblx0XHRmb250LXNpemU6IDNyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDMuMzc1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdH1cblx0aDMge1xuXHRcdGZvbnQtc2l6ZTogMS43NXJlbTsgLy8xLjY1cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHR9XG5cdC5ibG9jayB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuXHR9XG5cdC5zdWJ0aXRsZSB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdH1cblx0LmRlc2Mge1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0fVxuXHQub3VyLWV4cGVydGlzZSBoMywgLm91ci1jbGllbnRzIGgzIHtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS43NXJlbTtcblx0fVxufVxuXG4uc2VydmljZXMgLmNsaWVudHMtdHh0IHtcblx0Zm9udC1zaXplOiAxLjVyZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbn1cblxuLm1vcmUsIC5jb250YWN0IGZvcm0gaW5wdXQge1xuXHRmb250LXNpemU6IDFyZW07XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubWVtYmVyLXBhZ2Uge1xuXHRoMSB7XG5cdFx0bGluZS1oZWlnaHQ6IDNyZW07XG5cdH1cblxufVxuLm1lbWJlci1wYWdlLCAuY29vcGVyYXRpdmUsIC50cmFuc2l0aW9uLWRldGFpbCB7XG5cdC5lbmRlYXZvdXJzIHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHR9XG59XG5cbi5vbmdvaW5nIHtcblx0LmludHJvIHtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAycmVtO1xuXHR9XG5cdC5ibG9ja3Mge1xuXHRcdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS43NXJlbTtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHR9XG59XG5cbi5jb29wZXJhdGl2ZSwgLnRyYW5zaXRpb24tZGV0YWlsIHtcblx0LmJsb2NrIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNzVyZW07XG5cdH1cbn1cblxuLmhvbWVwYWdlIC5ibG9ja3MgLmJsb2Nre1xuXHRmb250LXNpemU6IDIuNXJlbTtcblx0bGluZS1oZWlnaHQ6IDMuMzc1cmVtO1xufVxuXG4uY29udGFjdCAubWFpbiwgLnRyYWluaW5nLWRldGFpbCAuZGVzYyB7XG5cdGZvbnQtc2l6ZTogMS41cmVtOy8vMS4yNXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuNjVyZW07XG5cdGgzIHtcblx0XHQvLyBmb250LXNpemU6IDEuNXJlbTtcblx0XHQvLyBsaW5lLWhlaWdodDogMnJlbTtcblx0XHRmb250LXNpemU6IDEuNzVyZW07IC8vMS42NXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS44NzVyZW07XG5cdH1cblx0Zm9ybSBpbnB1dCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cbn1cblxuLnRyYWluaW5nLWRldGFpbCB7XG5cdGgxIHtcblx0XHRsaW5lLWhlaWdodDogMy41cmVtO1xuXHR9XG5cdC5idG4ge1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS4xNXJlbTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHQuZGVzYyB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjE1cmVtO1xuXHR9XG5cdGg0IHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0fVxufVxuXG4ubS1tZW51IHtcblx0Zm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwZW0pIHtcblx0LmhvbWUsIC5wcm9qZWN0LWRldGFpbCwgLnRvZ2V0aGVyIHtcblx0XHQuY29udGVudCB7XG5cdFx0XHRmb250LXNpemU6IDIuMjVyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMi42MjVyZW07XG5cdFx0fVxuXHR9XG5cdC50b2dldGhlciB7XG5cdFx0aDIge1xuXHRcdFx0Zm9udC1zaXplOiAyLjI1cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuXHRcdH1cblxuXHR9XG5cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1ZW0pIHtcblxuXHQuaGVhZGVyLm5ldyAubG9nbyBkaXYge1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0fVxuXG5cdC5tLW1lbnUtb3BlbiBoZWFkZXIuaGVhZGVyLm5ldyAuaW5uZXIge1xuXHRcdC5tYWluLW5hdiBhIHtcblx0XHRcdGZvbnQtc2l6ZTogMi41cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIuNXJlbTtcblx0XHR9XG5cdFx0Lm1haW4tbmF2IC5sYW5nLXN3aXRjaCBhIHtcblx0XHRcdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdFx0fVxuXHR9XG5cdC5ob21lLCAucHJvamVjdC1kZXRhaWwsIC50b2dldGhlciB7XG5cdFx0LmNvbnRlbnQge1xuXHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIuNXJlbTtcblx0XHR9XG5cdH1cblxuXHQudG9nZXRoZXIge1xuXHRcdGgyIHtcblx0XHRcdGZvbnQtc2l6ZTogMnJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyLjVyZW07XG5cdFx0fVxuXHRcdGgzLCAuY2xpZW50cywgLnNvY2lhbHMge1xuXHRcdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMnJlbTtcblx0XHR9XG5cdH1cblx0Lm9uZ29pbmcge1xuXHRcdGgxIHtcblx0XHRcdGZvbnQtc2l6ZTogMnJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyLjVyZW07XG5cdFx0fVxuXHR9XG5cbn0iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiL2ltZy9cIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIH1cbn1cblxuXG5cbi8qIFByZXYgLyBOZXh0ICovXG5cbi5zbGljay1wcmV2LCAuc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vIHRvcDogY2FsYyg1MCUgLSAxM3B4KTtcbiAgICBib3R0b206IDIzcHg7XG4gICAgei1pbmRleDogMTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYmFja2dyb3VuZDpub25lO1xuICAgIGJvcmRlcjpub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvYXJyb3cuc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgd2lkdGg6IDEzcHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIG91dGxpbmU6bm9uZTtcbn1cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAxNSU7XG4gICAgdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xufVxuLnNsaWNrLW5leHQge1xuICAgIC8vIHRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO1xuICAgIHJpZ2h0OiAxNSU7XG59XG5cblxuIiwiLnNsaWRlLWxlYXZlLWFjdGl2ZSxcbi5zbGlkZS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyAgY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1MCwgMC41NTAsIDAuOTUwKTtcbn1cblxuLnNsaWRlLWxlYXZlLFxuLnNsaWRlLWVudGVyLXRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnNsaWRlLWxlYXZlLXRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5zbGlkZS1lbnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi8vIFNsaWRlIGZyb20gcmlnaHQgdG8gbGVmdFxuLnNsaWRlLWxlZnQtbGVhdmUtYWN0aXZlLFxuLnNsaWRlLWxlZnQtZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG59XG5cbi5zbGlkZS1sZWZ0LWVudGVyLWFjdGl2ZSB7XG4gIC8vIHRyYW5zaXRpb246IGFsbCAxNHMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG59XG5cbi5zbGlkZS1sZWZ0LWxlYXZle1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uc2xpZGUtbGVmdC1sZWF2ZS10byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLnNsaWRlLWxlZnQtZW50ZXItdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDE7XG59XG4uc2xpZGUtbGVmdC1lbnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLnRvZ2V0aGVyIG1haW4uc2xpZGUtbGVmdC1lbnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwJSkgIWltcG9ydGFudDtcbn1cbiIsIi8qIFB1dCB5b3VyIGxheW91dCBoZXJlICovXG5cbmJvZHksIGh0bWwge1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4ubG9nZ2VyIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR3aWR0aDogMTAwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogeWVsbG93O1xuXHRjb2xvcjogYmxhY2s7XG5cdHotaW5kZXg6IDEyMztcblx0Zm9udC1zaXplOiAxcmVtO1xufVxuaGVhZGVyLmhlYWRlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnY29sb3I7XG5cdHotaW5kZXg6IDI7XG5cdC5pbm5lciB7XG5cdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOmNlbnRlcjtcblx0XHQubG9nbyB7XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogLTI1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5oZWFkZXIub2xkIHtcblx0Lm1haW4tbmF2IHtcblx0XHR3aWR0aDogNTAlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDIwcHggNDBweCAyMHB4IDA7XG5cdFx0XHQmLmFjdGl2ZSwgJjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkbWFpbmNvbG9yO1xuXHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMnB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubGFuZy1zd2l0Y2gge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0YSB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdCY6bm90KC5hY3RpdmUpe1xuXHRcdFx0XHR0b3A6IDIwcHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0Ji5hY3RpdmV7XG5cdFx0XHRcdGNvbG9yOiAkbWFpbmNvbG9yO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogLTIwcHg7XG5cdFx0XHR0b3A6IDJweDtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0d2lkdGg6IDEzcHg7XG5cdFx0XHRoZWlnaHQ6IDE4cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9hcnJvdy5zdmcpO1xuXHRcdFx0dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG5cdFx0fVxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YXtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmhlYWRlci5uZXcge1xuXHQuaW5uZXIge1xuXHRcdGFsaWduLWl0ZW1zOiBlbmQ7XG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cdFx0LmxvZ28ge1xuXHRcdFx0Ly8gbWluLXdpZHRoOiAzMzFweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG1heC13aWR0aDogMzMxcHg7XG5cdFx0XHR9XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlLzMpO1xuXHRcdFx0YSB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdH1cblx0XHRcdC5pbWctaG9sZGVyIHtcblx0XHRcdFx0bWF4LWhlaWdodDogMTMwcHg7XG5cblx0XHRcdH1cblxuXHRcdFx0LmJhc2VsaW5lIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdFx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm1haW4tbmF2IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS8zKjIgLSAxMHB4KTtcblx0XHR9XG5cblx0XHQubmF2X19jb250YWluZXIge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdHVsIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0dWw6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHR3aWR0aDogY2FsYyg3NSUgKyAyNXB4KTtcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdHVsOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDI1cHgpO1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0fVxuXHRcdFx0YSB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5sYW5nLXN3aXRjaCB7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDZweDtcblx0XHRcdFx0LmFjdGl2ZSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRncmV5O1xuXHRcdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdFx0fVxuXHRcdFx0XHRhOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuI2NvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG1pbi1oZWlnaHQ6IDEwMCU7IC8vIHNvbHZlcyBzYWZhcmkgYnVnXG5cdG1hcmdpbjogMCBhdXRvO1xuXHRwYWRkaW5nOiAwO1xuXHRvdmVyZmxvdy14OmhpZGRlbjtcbn1cblxubWFpbi5tYWluIHtcblx0ZmxleDogMSAwIGF1dG87XG5cdHBhZGRpbmctdG9wOiAyMDBweDtcbn1cblxuLmNvbnRlbnQge1xuXHQvLyBtYXgtd2lkdGg6IDEyNDBweDtcblx0bWF4LXdpZHRoOiAxMzQwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuXG4uaG9tZSB7XG5cdC5jb250ZW50IHtcblx0XHQvLyBkaXNwbGF5OiBmbGV4O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRvcDogMjAwcHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdC5sZWZ0IHtcblx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDIwcHgpO1xuXHRcdFx0bWF4LXdpZHRoOiAzOTBweDtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6IHJlZDtcblx0XHR9XG5cdFx0LnJpZ2h0IHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IGNhbGMoMTAwJS8zICsgMjBweCk7XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlLzMqMiAtIDQ1cHgpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxMDBweDtcblx0XHRcdHBhZGRpbmctbGVmdDogNXB4O1xuXHRcdFx0dG9wOiAwcHg7XG5cdFx0XHRzY3JvbGwtc25hcC10eXBlOiB5IHByb3hpbWl0eTtcblx0XHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDE1MHB4KTtcblx0XHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblxuXHRcdH1cblx0fVxuXG5cdC5wcm9qZWN0IHtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC5waWMge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHQucGljIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwwLDAsMC4wNSk7XG5cdFx0fVxuXHR9XG59XG5cbi5kb3RzIHtcblx0ei1pbmRleDogMTIzNDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRsZWZ0OiAyMHB4O1xuXHRib3R0b206IDIwcHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0LmRvdCB7XG5cdCAgY3Vyc29yOiBwb2ludGVyO1xuXHQgIGJhY2tncm91bmQ6IG5vbmU7XG5cdCAgYm9yZGVyOiBub25lO1xuXHQgIHdpZHRoOiAzMnB4O1xuXHQgIGhlaWdodDogMzNweDtcblx0ICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiBwaW5rO1xuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICAmOmFmdGVyIHtcblx0ICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICBcdHRvcDogNTAlO1xuXHQgIFx0bGVmdDogNTAlO1xuXHQgICAgY29udGVudDogJyc7XG5cdCAgICBtYXJnaW4tbGVmdDogLTRweDtcblx0ICAgIG1hcmdpbi10b3A6IC00cHg7XG5cdCAgICBib3JkZXI6MXB4IHNvbGlkICRncmV5O1xuXHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXHQgICAgd2lkdGg6IDhweDtcblx0ICAgIGhlaWdodDogOHB4O1xuXHQgIH1cblxuXHQgICY6aG92ZXIge1xuXHQgICAgY29sb3I6ICRncmV5O1xuXHQgIH1cblxuXHQgICZbYXJpYS1wcmVzc2VkPVwidHJ1ZVwiXTphZnRlciwgJjpob3ZlcjphZnRlciB7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblx0ICB9XG5cdH1cbn1cblxuXG4vKiBIaWRlIHNjcm9sbGJhciBmb3IgQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhICovXG4ucmlnaHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLCAuZW5kZWF2b3Vyczo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRlIHNjcm9sbGJhciBmb3IgSUUsIEVkZ2UgYW5kIEZpcmVmb3ggKi9cbi5yaWdodCwgLmVuZGVhdm91cnMge1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7ICAvKiBJRSBhbmQgRWRnZSAqL1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7ICAvKiBGaXJlZm94ICovXG59XG5cblxuLy8gcHJvamVjdCBkZXRhaWxcbi5wcm9qZWN0LWRldGFpbCB7XG5cdG1haW4ubWFpbiB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdH1cblxuXHQuc2xpZGUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWxlZnQ6IDYwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogNjBweDtcblx0XHQuaG92ZXItaW1nIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRvcDogMjUlO1xuXHRcdFx0bWF4LXdpZHRoOiA1MDBweDtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdH1cblx0XHQmOm5vdCgub3Blbi1pbWcpIC5ob3Zlci1pbWd7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0XHQmLmFsaXZlIHtcblx0XHRcdC5ob3Zlci1pbWcge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmxpbmtlZCB7XG5cdFx0Y29sb3I6ICRibHVlO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHR9XG5cdH1cblxuXHQuY3JkdCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHQubGFiZWwge1xuXHRcdFx0d2lkdGg6IDI1MHB4O1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXHR9XG5cbn1cblxuLmZwLXJlc3BvbnNpdmUge1xuXHQjZnAtbmF2IHtcblx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHR9XG5cdC5zZWN0aW9uIHtcblx0XHRwYWRkaW5nLXRvcDogMjAwcHg7XG5cdH1cbn1cblxuLmZpbHRlcnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdHBhZGRpbmc6IDBweCAyMHB4IDEwcHggMjBweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdG1hcmdpbi1yaWdodDogNDBweDtcblx0XHRjb2xvcjogJGdyZXk7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdCY6aG92ZXIsICYuYWN0aXZlIHtcblx0XHRcdGNvbG9yOiAkbWFpbmNvbG9yO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0JjphZnRlcntcblx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXJ7XG5cdFx0XHRjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XG5cdFx0ICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCkgLyBcIlwiO1xuXHRcdCAgZm9udC1zdHlsZTogaXRhbGljO1xuXHRcdCAgaGVpZ2h0OiAwO1xuXHRcdCAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdCAgb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQgIHVzZXItc2VsZWN0OiBub25lO1xuXHRcdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXHR9XG5cbn1cblxuLmRpc2NvdmVyLCAucHJvamVjdHMge1xuXHQuZmlsdGVycyB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuXHRcdHRvcDogMTUycHg7XG5cdFx0ei1pbmRleDogMztcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjowIGF1dG8gNDBweCBhdXRvO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cblx0XHQucHJvamVjdC10eXBlIHtcblx0XHRcdHdpZHRoOmNhbGMoMTAwJS8zKjIgLSAxMHB4KTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0fVxuXHR9XG5cdC5saXN0IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0Lml0ZW0ge1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS8zIC0gMjBweCk7XG5cdFx0XHRtYXJnaW46IDEwcHg7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGgyIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdH1cblx0XHRcdC5ob3cge1xuXHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRcdH1cblx0XHRcdGgyLCAuaG93IHtcblx0XHRcdFx0d29yZC1icmVhazogYnJlYWstd29yZDtcblx0XHRcdH1cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQuaG93IHtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQjbWFwIHtcblx0XHR3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtcblx0XHRtYXJnaW46IDAgMjBweCA0MHB4IDIwcHg7XG5cdFx0aGVpZ2h0OjYwMHB4O1xuXHR9XG5cbn1cblxuLmUtcG9wdXAge1xuXHRwYWRkaW5nOiAxMHB4IDYwcHggNjBweCAxMHB4O1xuXHQvLyBtYXgtd2lkdGg6IDIwMHB4O1xuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Ly8gd29yZC1icmVhazogYnJlYWstd29yZDtcblx0fVxufVxuXG4ua25vd2xlZGdlLCAudHJhaW5pbmdzLCAudHJhaW5pbmctZGV0YWlsIHtcblx0LmZpbHRlcnMge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcblx0XHR0b3A6IDE1MnB4O1xuXHRcdHotaW5kZXg6IDM7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXHRcdG1heC13aWR0aDogJG1heC13aWR0aDtcblx0XHRtYXJnaW46MCBhdXRvIDQwcHggYXV0bztcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHR9XG59XG5cblxuLmtub3dsZWRnZSwgLnRyYWluaW5ncyB7XG5cdC5saXN0IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHQuaXRlbSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG5cdFx0XHQmLnRyYWluaW5nIHtcblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHQuZGF0ZSB7XG5cdFx0XHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5kYXRlIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5kYXRlc3RyIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0bWluLXdpZHRoOiAxMjBweDtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnRpbWUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCY6YmVmb3Jle1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiAtMTBweDtcblx0XHR0b3A6IDhweDtcblx0XHRjb250ZW50OiAnJztcblx0XHR3aWR0aDogNHB4O1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuXHR9XG59XG5cbi50cmFpbmluZ3Mge1xuXHQuYnRuLm1vcmUge1xuXHRcdGNvbG9yOiAkcmVkO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdC8vIG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0Lmxpc3QgLml0ZW06aG92ZXIge1xuXHRcdGgyIHtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdH1cbn1cblxuLnRyYWluaW5nLWRldGFpbCB7XG5cblx0LmNvbnRlbnQge1xuXHRcdG1heC13aWR0aDogODAwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHR9XG5cblx0aDEge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0LnRpbWUge1xuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHdpZHRoOiA2cHg7XG5cdFx0XHRoZWlnaHQ6IDZweDtcblx0XHRcdHRvcDogMTdweDtcblx0XHRcdGxlZnQ6IC0xN3B4O1xuXHRcdH1cblx0fVxuXG5cdC5kZXNjIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdH1cblx0LmJ0biB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1heC13aWR0aDogMjAwcHggIWltcG9ydGFudDtcblx0fVxuXG5cdC5tb3JlLWRlc2Mge1xuXHRcdG1hcmdpbi10b3A6IC0zMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxufVxuLnRvZ2V0aGVyIHtcblx0LmNvbnRlbnQge1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0fVxuXHQud2UtY2FuLCAubWFuaWZlc3RvLCAubWVtYmVycywgLmNsaWVudHMsIC5zb2NpYWxzLCAuc3RhZHNmb3JtIC51cHBlciB7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHR9XG5cdGgyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdGgzIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0fVxuXHQud2UtY2FuIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0aGVpZ2h0OiA1MHZoO1xuXHRcdC5sZWZ0IHtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHR9XG5cdFx0I3RvZG9zIHtcblx0XHRcdG91dGxpbmU6bm9uZTtcblx0XHR9XG5cdFx0LnJpZ2h0IHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cdFx0XHRzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcblx0XHRcdC8vIHNjcm9sbC1zbmFwLXR5cGU6IHkgcHJveGltaXR5O1xuXHRcdFx0Ly8gaGVpZ2h0OiA1MHZoO1xuXG5cdFx0XHQudG9kbyB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHQvL21hcmdpbi1ib3R0b206IDUwdmg7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogY2FsYyg1MHZoIC0gMjAwcHgpO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGNvbG9yOiAkcmVkO1xuXHRcdFx0fVxuXHRcdFx0LmVycm9ycywgLnN1Y2Nlc3Mge1xuXHRcdFx0XHRjb2xvcjogJGhpZ2hsaWdodDtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHRcdGZvcm0ge1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdFx0LnJvdyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnMyIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdCYuc2hvd3tcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHRleHRhcmVhLCBbdHlwZT1lbWFpbF0ge1xuXHRcdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRtYXJnaW46IDEwcHggMDtcblx0XHRcdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMTBweDtcblx0XHRcdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkICRtYWluY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdFx0W3R5cGU9ZW1haWxde1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLmgtZXJyb3Ige1xuXHRcdFx0XHRcdC5zMiB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGJ1dHRvbntcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGJ1dHRvbiwgW3R5cGU9c3VibWl0XXtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbmNvbG9yO1xuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmVycm9yIHtcblx0XHRcdFx0XHRjb2xvcjogJGhpZ2hsaWdodDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zdGFkc2Zvcm0ge1xuXHRtYXJnaW4tdG9wOiA2MHB4O1xuXHRtYXJnaW4tYm90dG9tOiAxMDBweDtcblx0LnVwcGVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0LnMtbG9nbywgLnMtaW50cm8ge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdFx0YSB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5zLWxvZ28ge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5nYWxsZXJ5IHtcblx0XHQuZXZlbnQge1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuXHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0cGFkZGluZzogMjBweCAwIDAgMjBweDtcblx0XHRcdH1cblx0XHRcdGltZywgaWZyYW1lIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0fVxuXHR9XG59XG4ubWFuaWZlc3RvIHtcblx0LmJsb2NrcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHQuYmxvY2sge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0JjpudGgtY2hpbGQoZXZlbil7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5tZW1iZXJzIHtcblx0LmJsb2NrcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdC5ibG9jayB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0JjpudGgtY2hpbGQoNG4pe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdC5wcm9maWxlLXBpYyB7XG5cdFx0XHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRcdFx0bGVmdDogLTEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHR9XG5cdFx0XHQuZW1haWwsIC5waG9uZSB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHRcdFx0d29yZC1icmVhazpicmVhay1hbGw7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHQuZW5kZWF2b3VycyB7XG5cdFx0XHRcdGhlaWdodDogMTkwcHg7XG5cdFx0XHRcdG92ZXJmbG93LXk6c2Nyb2xsO1xuXHRcdFx0XHRmbGV4LWdyb3c6IDE7XG5cdFx0XHRcdC50eHQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRcdFx0aDQge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQubW9yZSB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JleTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdFx0fVxuXHRcdFx0LnByb2ZpbGUtcGljIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRib3R0b206IC01MHB4O1xuXHRcdFx0XHRyaWdodDogLTEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHR9XG5cdFx0XHQueW91LXVybCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA2MHB4O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5wcm9maWxlLXBpYywgLnlvdS11cmwge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jbGllbnRzIHtcblx0bWFyZ2luLWJvdHRvbTogODBweCAhaW1wb3J0YW50O1xuXHRwIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHR9XG59XG5cbi5zb2NpYWxzIHtcblxuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjogMTBweCA0MHB4IDAgMDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0fVxufVxuXG4ubWVtYmVyLXBhZ2Uge1xuXHQuY29udGVudCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdH1cblx0aDEge1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblx0LmVtYWlsLCAucGhvbmUge1xuXHRcdGNvbG9yOiAkZ3JleTtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0YSB7XG5cdFx0XHRjb2xvcjokZ3JleTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQudGl0bGUge1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdH1cblx0LnByb2ZpbGUtcGljIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0aW1nIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdH1cblx0fVxuXHQuZW5kZWF2b3VycyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRoNCB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG59XG5cbi8vIG9uZ29pbmdcbi5vbmdvaW5nIHtcblx0I2NvbnRhaW5lciB7XG5cdFx0b3ZlcmZsb3cteDogaW5oZXJpdDtcblx0XHQuY29udGVudCB7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0fVxuXHRcdGgxLCAuc3VidGl0bGUsIC5pbnRybywgLmNvbHMsIC5pbWcge1xuXHRcdFx0bWF4LXdpZHRoOiA5NTBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHR9XG5cdFx0LmJsb2NrcyB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA4MHB4O1xuXHRcdH1cblx0XHQuY29scyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0Ji5jb2wtMiB7XG5cdFx0XHRcdC5jb2w6Zmlyc3QtY2hpbGR7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5jb2w6bGFzdC1jaGlsZHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuaW1nIHtcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdH1cblx0XHRcdC5jYXB0aW9uIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5lbWJlZCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1hcmdpbi10b3A6IDgwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdFx0aWZyYW1lIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5nYWxsZXJ5IHtcblx0XHRcdC5ldmVudCB7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuXHRcdFx0XHQudGl0bGUge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0aW1nLCBpZnJhbWUge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnNlcnZpY2VzLCAudmVudHVyZXMsIC5jb29wZXJhdGl2ZSwgLnRyYW5zaXRpb25zLCAudHJhbnNpdGlvbi1kZXRhaWwge1xuXHQuc2VjdGlvbiB7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHR9XG5cdC5ibG9ja3Mge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG59XG5cbi52ZW50dXJlcyB7XG5cdC5pbnRybyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbi1ib3R0b206IDgwcHg7XG5cdH1cbn1cblxuLmtub3dsZWRnZSAubGlzdCAuaXRlbSxcbi50cmFpbmluZ3MgLmxpc3QgLml0ZW0sXG4uc2VydmljZXMgLmJsb2NrcyAuYmxvY2ssXG4udHJhbnNpdGlvbnMgLmJsb2NrcyAuYmxvY2ssXG4udmVudHVyZXMgLmJsb2NrcyAuYmxvY2ssXG4ucHJvamVjdHMgLmxpc3QgLml0ZW0ge1xuXHR3aWR0aDogY2FsYygxMDAlLzMgLSAyMHB4KTtcblx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdG1hcmdpbi1yaWdodDogMTVweDtcblx0JjpudGgtY2hpbGQoM24gKyAzKXtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblx0JjpudGgtY2hpbGQoM24gLSAyKXtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0fVxufVxuLnByb2plY3RzIC5saXN0IHtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdG1hcmdpbi1yaWdodDogMDtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uc2VydmljZXMsIC52ZW50dXJlcywgLnRyYW5zaXRpb25zIHtcblx0LmJsb2NrcyB7XG5cdFx0LmJsb2NrIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cblx0XHRcdGgzIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuYnRuLm1vcmUge1xuXHRcdFx0XHRjb2xvcjogJHJlZDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5tb3JlLWluZm8ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC5pbWcge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMTUwcHg7XG5cdFx0XHRyaWdodDogY2FsYygtMTAwJSAtIDQwcHgpO1xuXHRcdFx0d2lkdGg6IDEwMCVcdDtcblx0XHR9XG5cdH1cblx0LmJsb2NrLnRyYW5zaXRpb24ge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxufVxuXG4uc2VydmljZXMge1xuXHQuY29udGVudCB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXHR9XG5cdC5ibG9jay5zZXJ2aWNlLm9wZW4ge1xuXHRcdC5tb3JlLWluZm8ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoM24rMyl7XG5cdFx0XHQuaW1nIHtcblx0XHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRcdGxlZnQ6IGNhbGMoLTEwMCUgLSA0MHB4KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQub3VyLWV4cGVydGlzZSwgLm91ci1jbGllbnRzIHtcblx0XHRoMiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cblxuXHR9XG5cblx0Lm91ci1jbGllbnRzIHtcblx0XHQuYmxvY2tzIC5ibG9jayB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvNiAtIDEwMHB4LzYpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRcdCY6bnRoLWNoaWxkKDZuICsgNil7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdH1cblx0XHRcdCY6bnRoLWNoaWxkKDZuIC0gNSl7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0bWFyZ2luLXRvcDogNjBweDtcblx0XHQuY2xpZW50cy10eHQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogODBweDtcblx0XHR9XG5cblx0fVxuXG5cdC5vdXItZXhwZXJ0aXNlIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JleV9hbHQ7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXG5cblxuXHRcdC5idG5zIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0fVxuXHRcdC5idG4ge1xuXHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0Y29sb3I6ICRtYWluY29sb3I7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlLzMgLSA2MHB4KTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdG1hcmdpbjogMTBweDtcblx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdH1cblx0fVxuXHQuZ3JleS1pbm5lciB7XG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHR9XG5cdC53aHktdXMge1xuXHRcdGNvdW50ZXItcmVzZXQ6IGJsb2NrOyAvLyBTZXQgYSBjb3VudGVyIG5hbWVkICdibG9jaycsIGFuZCBpdHMgaW5pdGlhbCB2YWx1ZSBpcyAwLlxuXHRcdGJhY2tncm91bmQ6ICRncmV5X2FsdDtcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdG1heC13aWR0aDogbm9uZTtcblxuXHRcdC5ibG9ja3Mge1xuXHRcdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0XHRvdmVyZmxvdy14OiBzY3JvbGw7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTIwcHg7XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG5cdFx0XHQvKiBIaWRlIHNjcm9sbGJhciBmb3IgQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhICovXG5cdFx0XHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0XHQgIGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC8qIEhpZGUgc2Nyb2xsYmFyIGZvciBJRSwgRWRnZSBhbmQgRmlyZWZveCAqL1xuXG4gIFx0XHQtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7ICAvKiBJRSBhbmQgRWRnZSAqL1xuICBcdFx0c2Nyb2xsYmFyLXdpZHRoOiBub25lOyAgLyogRmlyZWZveCAqL1xuXG5cdFx0fVxuXG5cdFx0LmJsb2NrIHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvNCk7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblxuXHRcdFx0aDMge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogODBweDtcblx0XHRcdH1cblx0XHRcdGgzOjpiZWZvcmUge1xuXHRcdFx0ICBjb3VudGVyLWluY3JlbWVudDogYmxvY2s7IC8qIEluY3JlbWVudCB0aGUgdmFsdWUgb2YgYmxvY2sgY291bnRlciBieSAxICovXG5cdFx0XHQgIGNvbnRlbnQ6IGNvdW50ZXIoYmxvY2spOyAvKiBEaXNwbGF5IGNvdW50ZXIgdmFsdWUgaW4gZGVmYXVsdCBzdHlsZSAoZGVjaW1hbCkgKi9cblx0XHRcdCAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ICBsZWZ0OiAwO1xuXHRcdFx0ICB0b3A6IC0xMHB4O1xuXHRcdFx0ICBjb2xvcjogJHdoaXRlO1xuXHRcdFx0ICBmb250LXNpemU6IDNyZW07XG5cdFx0XHQgIGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRcdCAgcGFkZGluZzogMCAyMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4udmVudHVyZXMge1xuXHQuYmxvY2tzIC5ibG9jayB7XG5cdFx0LmRlc2MgPiBwIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHR9XG59XG5cbi5jb250YWN0LXVzIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6ICRyZWQ7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG5cdG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5cbi5jb29wZXJhdGl2ZSwgLnRyYW5zaXRpb24tZGV0YWlsIHtcblx0aDIsIGgzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cdC5ibG9ja3MuaW50cm8ge1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHQuYmxvY2sge1xuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG5cdFx0XHQmOm50aC1jaGlsZChvZGQpe1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZChldmVuKXtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5ibG9jay50eHQge1xuXHRcdFx0bWFyZ2luLXRvcDogMzBweDtcblx0XHR9XG5cdH1cblxuXHQubWVtYmVycyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblxuXHRcdC5ibG9ja3Mge1xuXHRcdFx0LmJsb2NrIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTVweDtcblx0XHRcdFx0d2lkdGg6IGNhbGMoMjUlIC0gOTBweC80KTtcblx0XHRcdFx0JjpudGgtY2hpbGQoNG4gLSAzKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpudGgtY2hpbGQoNG4gKyA0KSB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRoMywgLnRpdGxlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0XHRcdH1cblx0XHRcdC5lbWFpbCwgLnBob25lIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG4udHJhbnNpdGlvbi1kZXRhaWwge1xuXHQuaW1nIHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG5cdC5yZWwtcHJvaiBhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cbn1cblxuLmNvbnRhY3Qge1xuXG5cdC5jb250YWN0LWxpbmtzIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdG1heC13aWR0aDogJG1heC13aWR0aDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG5cdFx0YSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXHRcdC5ibG9jazpudGgtY2hpbGQoMSkge1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJS8zKTtcblx0XHR9XG5cdFx0LmJsb2NrOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcbiAgICBcdHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMTBweCk7XG4gICAgXHRkaXNwbGF5OiBmbGV4O1xuICAgIFx0YSB7XG4gICAgXHRcdHdpZHRoOiBjYWxjKDI1JSk7XG4gICAgXHRcdCY6bnRoLWNoaWxkKDIpe1xuICAgIFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDEwcHgpO1xuICAgIFx0XHR9XG4gICAgXHRcdCY6bnRoLWNoaWxkKDMpe1xuICAgIFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDIwcHgpO1xuICAgIFx0XHR9XG4gICAgXHRcdCY6bnRoLWNoaWxkKDQpe1xuICAgIFx0XHRcdG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDI1cHgpO1xuICAgIFx0XHR9XG4gICAgXHR9XG5cdFx0fVxuXHR9XG5cblx0LmJsb2NrcyB7XG5cdFx0bWF4LXdpZHRoOiAxMDAwcHg7XG5cdFx0bWFyZ2luOiAwIGF1dG8gNjBweCBhdXRvO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdC5ibG9jayB7XG5cdFx0XHQvLyB3aWR0aDogY2FsYyg1MCUgLSA2MHB4KTtcblx0XHRcdHdpZHRoOiAxMDAlOyAvLyBubyBmb3JtIGFueW1vcmUsIG9ubHkgMSBibG9jayBsZWZ0XG5cblx0XHRcdGgzIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0I21hcCB7XG5cdFx0d2lkdGg6MTAwJTtcblx0XHRtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87XG5cdFx0aGVpZ2h0OjMwMHB4O1xuXHR9XG5cblx0Zm9ybSB7XG5cdFx0ZGl2IHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0fVxuXHRcdGlucHV0IHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcblx0XHRcdHBhZGRpbmc6IDE1cHg7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkZ3JleV9hbHQ7XG5cdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6MDtcblxuXHRcdH1cblx0XHRpbnB1dDo6cGxhY2Vob2xkZXIge1xuXHRcdCAgICBjb2xvcjogJG1haW5jb2xvcjtcblx0XHR9XG5cblx0fVxufVxuXG4uY29udGFjdCBmb3JtIGlucHV0W3R5cGU9c3VibWl0XSwgLnRyYWluaW5nLWRldGFpbCAuYnRuIHtcblx0YmFja2dyb3VuZDogJGJsdWU7XG5cdGNvbG9yOiB3aGl0ZTtcblx0cGFkZGluZzogMTVweCA0MHB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRib3JkZXItcmFkaXVzOjA7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcblx0bWF4LXdpZHRoOiAzMDBweDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRtYWluY29sb3I7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHR9XG59XG5cbi5ob21lcGFnZSB7XG5cdG1haW4ubWFpbiB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0bWFyZ2luLXRvcDogMjAwcHg7XG5cdFx0ei1pbmRleDogMztcblx0fVxuXHQuYmxvY2tzIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0fVxuXHQuY29sIHtcblx0XHQvLyB3aWR0aDogYXV0bztcblx0XHR3aWR0aDogY2FsYygxMDAlLzMgLSA0MHB4KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0cGFkZGluZzogMjBweDtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0bWFyZ2luLXRvcDogNjBweDtcblx0XHR9XG5cblx0XHQuYmxvY2sge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMjBweDtcblxuXHRcdFx0Ji5uby1pbWcge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxODBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJsb2NrLWNvbnRlbnQge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6ZmxleC1zdGFydDtcblx0XHR9XG5cdFx0aDMge1xuXHRcdFx0bWFyZ2luOiAtMzBweCAwIDAgLTIwcHg7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0fVxuXHRcdC5uby1pbWcge1xuXHRcdFx0aDMge1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWcge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdC8vIHdpZHRoOiBhdXRvO1xuXHRcdFx0YWxpZ24tc2VsZjpjZW50ZXI7XG5cdFx0XHRib3gtc2hhZG93OiAxMHB4IDEwcHggMjVweCAxcHggcmdiYSg1LCA1LCA1LCAuMTI1KTtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0fVxuXHRcdFx0aDMge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRyYW5zZm9ybTp0cmFuc2xhdGUoLTNweCwzcHgpO1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHR6LWluZGV4OiAtMTtcblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC5ibG9jazpob3ZlciB7XG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdGgzIHtcblx0XHRcdFx0XHR6LWluZGV4OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5pbWcge1xuXHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcblx0XHRcdFx0XHRcdG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0fVxuXG5cdH1cbn1cblxuLnByb2plY3RzLCAua25vd2xlZGdlLCAudHJhaW5pbmdzLCAudHJhaW5pbmctZGV0YWlsIHtcblxuXHRtYWluLm1haW4ge1xuXHRcdHBhZGRpbmctdG9wOiAyMzBweDtcblx0fVxuXHQuZmlsdGVycyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0dG9wOiAxNzJweDtcblx0XHQubGlzdC10eXBlIHtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyAtIDIwcHgpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXHRcdC5maWx0ZXItdHlwZSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUvMyoyIC0gMTBweCk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0YSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHQvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHQvLyBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdH1cblx0fVxufVxuXG4vLyB0b2dnbGUgbW9iaWxlIGZpbHRlclxuI20tZmlsdGVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRkaXNwbGF5OiBub25lO1xufVxuI2QtZmlsdGVyIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLnByb2plY3RzIHtcblx0LmZpbHRlcnMgLmZpbHRlci10eXBlLCAjZmlsdGVyLWFsbCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1ZW0pIHtcblx0LnByb2plY3RzIC5maWx0ZXJzLCAuZGlzY292ZXIgLmZpbHRlcnMge1xuXHRcdGEge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdH1cblx0fVxuXG5cdGhlYWRlci5oZWFkZXIubmV3IC5pbm5lciB7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogcGluaztcblxuXHRcdC5sb2dvIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuXG5cdFx0XHQuaW1nLWhvbGRlciB7XG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdG1heC13aWR0aDogMzIwcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblx0XHQubWFpbi1uYXYge1xuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG5cdFx0XHQubmF2X19jb250YWluZXIge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0dWw6bnRoLW9mLXR5cGUoMil7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6ZW5kO1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRcdH1cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmhvbWVwYWdlIC5jb2wge1xuICBcdHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpO1xuICB9XG5cbiAgLnByb2plY3RzLCAua25vd2xlZGdlLCAudHJhaW5pbmdzIHtcbiAgXHRtYWluLm1haW4ge1xuXHRcdFx0cGFkZGluZy10b3A6IDI2MHB4O1xuXHRcdH1cbiAgXHQuZmlsdGVycyB7XG4gIFx0XHR0b3A6IDIwMnB4O1xuICBcdH1cbiAgfVxuXG4gIC5maWx0ZXJzLnNpbmdsZSB7XG4gIFx0Lmxpc3QtdHlwZSB7XG4gIFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIFx0fVxuICBcdC5maWx0ZXItdHlwZSB7XG4gIFx0XHRtYXJnaW4tbGVmdDogMDtcbiAgXHR9XG4gIH1cbiAgLmNvbnRhY3QgLmNvbnRhY3QtbGlua3Mge1xuICBcdG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLnNlcnZpY2VzIC53aHktdXMgLmJsb2NrIHtcbiAgXHR3aWR0aDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDVlbSkge1xuXG4gIGhlYWRlci5oZWFkZXIub2xkIC5pbm5lciB7XG4gIFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgXHRtaW4taGVpZ2h0OiAxODBweDtcbiAgXHQubWFpbi1uYXYge1xuICBcdFx0d2lkdGg6IDEwMCU7XG4gIFx0XHRtYXgtd2lkdGg6IG5vbmU7XG4gIFx0fVxuICBcdC5sb2dvIHtcbiAgXHRcdGltZyB7XG4gIFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuICBcdFx0fVxuICBcdH1cbiAgfVxuXG4gIGhlYWRlci5oZWFkZXIubmV3IC5pbm5lciB7XG4gIFx0LmxvZ28ge1xuICBcdFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgXHRcdC8vIG1pbi13aWR0aDogMDtcbiAgXHRcdHdpZHRoOiBhdXRvO1xuICBcdFx0LmltZy1ob2xkZXIge1xuICBcdFx0XHRtYXgtaGVpZ2h0OiAxMDBweDtcbiAgXHRcdFx0aW1nIHtcbiAgXHRcdFx0XHRtYXJnaW4tdG9wOiAtMzNweDtcbiAgXHRcdFx0XHRtYXJnaW4tbGVmdDogLTI1cHg7XG4gIFx0XHRcdFx0d2lkdGg6IDI1MHB4O1xuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHQuYmFzZWxpbmUge1xuICBcdFx0XHRtYXJnaW4tdG9wOiAtN3B4O1xuICBcdFx0fVxuICBcdH1cblxuICBcdC5tYWluLW5hdiB7XG4gIFx0XHR3aWR0aDogYXV0bztcblx0XHQgIHVsOmZpcnN0LWNoaWxkIHtcblx0XHQgICAgZGlzcGxheTogbm9uZTtcblx0XHQgIH1cblx0XHQgIHVsOm50aC1jaGlsZCgyKSBsaTpmaXJzdC1jaGlsZCB7XG5cdFx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0ICB9XG5cdFx0ICB1bDpudGgtb2YtdHlwZSgyKXtcblx0XHQgIFx0YWxpZ24tc2VsZjplbmQ7XG5cdFx0ICB9XG5cdFx0ICBtYXJnaW4tdG9wOiA1M3B4O1xuXHRcdCAgLmxhbmctc3dpdGNoIHtcblx0XHQgIFx0bWFyZ2luLXRvcDogMDtcblx0XHQgIH1cblx0XHQgIC5uYXZfX2NvbnRhaW5lciBsaSB7XG5cdFx0ICBcdHdpZHRoOiAxMDAlO1xuXHRcdCAgfVxuXHRcdH1cblxuXHRcdC8vIC5tYWluLW5hdiAsIC5uYXZfX2NvbnRhaW5lciB7XG5cdFx0Ly8gXHR0cmFuc2l0aW9uOiBhbGwgMC4yNXMgIGN1YmljLWJlemllcigwLjQ0NSwgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG5cdFx0Ly8gfVxuXHRcdC8vIC5tYWluLW5hdiB7XG5cdFx0Ly8gXHRtYXJnaW4tbGVmdDogMTAwJTtcblx0XHQvLyB9XG5cdFx0Ly8gLm5hdl9fY29udGFpbmVyIHtcblx0XHQvLyBcdGxlZnQ6IDEwMCU7XG5cdFx0Ly8gfVxuICB9XG5cbiAgLm0tbWVudS1vcGVuIHtcbiAgXHRoZWFkZXIuaGVhZGVyLm5ldyB7XG4gIFx0XHR6LWluZGV4OiA1O1xuICBcdH1cbiAgXHRoZWFkZXIuaGVhZGVyLm5ldywgaGVhZGVyLmhlYWRlci5uZXcgLmlubmVyIHtcbiAgXHRcdGhlaWdodDogMTAwJTtcbiAgXHR9XG4gICAgaGVhZGVyLmhlYWRlci5uZXcgLmlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLm5hdl9fY29udGFpbmVyIHtcblx0XHRcdFx0Ly8gbGVmdDogMDsgLy8gYW5pbWF0ZSBvcHRpb25cblx0XHRcdH1cbiAgICB9XG4gICAgLmxvZ28ge1xuICAgIFx0cGFkZGluZy10b3A6IDIwcHg7XG4gICAgXHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgXHRwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICAgIH1cbiAgICAubWFpbi1uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDQwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsOm50aC1jaGlsZCgyKSB7XG4gICAgICBcdGFsaWduLXNlbGY6ZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgICAgXHRhbGlnbi1pdGVtczpmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG5cbiAgICAgIFx0bGk6Zmlyc3QtY2hpbGQge1xuXHRcdCAgICBcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHQgICAgfVxuXHRcdCAgICBsaTpsYXN0LWNoaWxkIHtcblx0XHQgICAgXHQvLyBkaXNwbGF5OiBub25lO1xuXHRcdCAgICBcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHQgICAgXHR0b3A6IDcycHg7XG5cdFx0ICAgIFx0cmlnaHQ6IDIwcHg7XG5cdFx0ICAgIFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0XHQgICAgXHQubGFuZy1zd2l0Y2gge1xuXHRcdCAgICBcdFx0ZGlzcGxheTogZmxleDtcblx0XHQgICAgXHRcdGEge1xuXHRcdCAgICBcdFx0XHRjb2xvcjogJG1haW5jb2xvcjtcblx0XHQgICAgXHRcdFx0cGFkZGluZzogMDtcblx0XHQgICAgXHRcdH1cblx0XHQgICAgXHR9XG5cblx0XHQgICAgfVxuXHRcdCAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuaG9tZSAuY29udGVudCB7XG4gIFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHQubGVmdCwgLnJpZ2h0IHtcbiAgXHRcdHBhZGRpbmc6IDAgMjBweDtcbiAgXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICBcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIFx0XHRsZWZ0OiAwO1xuICBcdH1cbiAgXHQucmlnaHQge1xuICBcdFx0dG9wOiA0MHB4O1xuICBcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjUwcHgpO1xuICBcdH1cblxuICBcdC5wcm9qZWN0IHtcbiAgXHRcdC5waWMge1xuICBcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHR6LWluZGV4OiAtMTtcbiAgXHRcdFx0dG9wOiAtMTBweDtcbiAgXHRcdFx0aW1nIHtcbiAgXHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH1cbiAgfVxuXG4gIC5kb3RzIHtcbiAgXHRsZWZ0OiAxMHB4O1xuICBcdGJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5kaXNjb3ZlciwgLnByb2plY3RzIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0cGFkZGluZy10b3A6IDMyMHB4O1xuICBcdH1cbiAgXHQuZmlsdGVycyB7XG4gIFx0XHR0b3A6IDIwMHB4O1xuICBcdFx0cGFkZGluZy10b3A6IDIwcHg7XG4gIFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBcdFx0LnByb2plY3QtdHlwZSB7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuICBcdFx0fVxuICBcdH1cbiAgXHQubGlzdCAuaXRlbSB7XG4gIFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgXHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIFx0fVxuXG4gIH1cblxuICAucHJvamVjdHMge1xuICBcdC8vIHRvZ2dsZSBtb2JpbGUgZmlsdGVyXG4gIFx0Lm0tZmlsdGVyLXdyYXAge1xuICBcdFx0ZGlzcGxheTogZmxleDtcbiAgXHR9XG5cdFx0I20tZmlsdGVyIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHQjZmlsdGVyLWFsbCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdCNkLWZpbHRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXG4gIH1cblxuICAudG9nZXRoZXIge1xuICBcdC53ZS1jYW4ge1xuICBcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgXHRcdC5sZWZ0LCAucmlnaHQge1xuICBcdFx0XHRtYXJnaW46IDA7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0fVxuICBcdH1cbiAgfVxuICAubWFuaWZlc3RvIHtcbiAgXHQuYmxvY2tzIHtcbiAgXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIFx0XHQuYmxvY2sge1xuICBcdFx0XHRtYXJnaW46IDBcdCFpbXBvcnRhbnQ7XG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xuICBcdFx0fVxuICBcdH1cblxuICB9XG4gIC5tZW1iZXJzIC5ibG9ja3Mge1xuICBcdC5ibG9jayB7XG4gIFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgXHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBcdFx0JjpudGgtY2hpbGQob2RkKXtcbiAgXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gIFx0XHR9XG4gIFx0XHQmOm50aC1jaGlsZChldmVuKXtcbiAgXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgXHRcdFx0LnByb2ZpbGUtcGljIHtcbiAgXHRcdFx0XHRyaWdodDogYXV0bztcbiAgXHRcdFx0XHRsZWZ0OiAtMTAwJTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuXG4gIFx0XHQubW9yZSB7XG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICBcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG4gIFx0XHR9XG5cbiAgXHRcdC5wcm9maWxlLXBpYyB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiA0MHB4O1xuXHRcdFx0XHRib3R0b206IGF1dG87XG5cdFx0XHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0XHRcdHotaW5kZXg6IDA7XG5cdFx0XHR9XG5cbiAgXHRcdC5lbWFpbCwucGhvbmUsLmVuZGVhdm91cnMsLnByb2ZpbGUtcGljIHtcbiAgXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBcdFx0fVxuICBcdFx0Ji55b3Uge1xuICBcdFx0XHQuZW5kZWF2b3Vyc3tcbiAgXHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHQmLm9wZW4ge1xuICBcdFx0XHR3aWR0aDogMTAwJTtcbiAgXHRcdFx0bWFyZ2luOiAwO1xuICBcdFx0XHQuZW1haWwsLnBob25lLC5lbmRlYXZvdXJzLC5wcm9maWxlLXBpYyB7XG4gIFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgXHRcdFx0fVxuXG4gIFx0XHR9XG4gIFx0fVxuICB9XG5cbiAgLmhvbWVwYWdlIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0bWFyZ2luLXRvcDogMTUwcHg7XG4gIFx0fVxuICBcdC5jb2wge1xuXHQgIFx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXHQgIFx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXHQgIFx0LmJsb2NrIHtcblx0ICBcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0ICBcdH1cblx0ICBcdGgzIHtcblx0ICBcdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0ICBcdFx0bWFyZ2luLWxlZnQ6IC0xMHB4O1xuXHQgIFx0fVxuXHQgIH1cbiAgfVxuXG4gIC5zZXJ2aWNlcyAuYmxvY2tzIC5ibG9jaywgLnRyYW5zaXRpb25zIC5ibG9ja3MgLmJsb2NrLCAudmVudHVyZXMgLmJsb2NrcyAuYmxvY2ssIC5rbm93bGVkZ2UgLmxpc3QgLml0ZW0sIC50cmFpbmluZ3MgLmxpc3QgLml0ZW0sIC5wcm9qZWN0cyAubGlzdCAuaXRlbSwgLmNvb3BlcmF0aXZlIC5tZW1iZXJzIC5ibG9ja3MgLmJsb2NrIHtcbiAgXHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuXHQgICAgJjpudGgtY2hpbGQob2RkKSB7XG5cdCAgICBcdG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdCAgICBcdG1hcmdpbi1yaWdodDogMjBweCAhaW1wb3J0YW50O1xuXHQgICAgfVxuXHQgICAgJjpudGgtY2hpbGQoZXZlbikge1xuXHQgICAgXHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0ICAgIFx0bWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcblx0ICAgIH1cbiAgfVxuXG4gIC5zZXJ2aWNlcyAub3VyLWV4cGVydGlzZSwgLnNlcnZpY2VzIC5vdXItY2xpZW50cyB7XG4gIFx0LmJsb2NrcyAuYmxvY2sge1xuICBcdFx0d2lkdGg6IGNhbGMoMTAwJS8zIC0gODBweC8zKTtcbiAgXHRcdG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgXHRcdCY6bnRoLWNoaWxkKDNuICsgMyl7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoM24gLSAyKXtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdH1cbiAgXHR9XG4gIH1cblxuICAuY29vcGVyYXRpdmUgLmJsb2Nrcy5pbnRybyAuYmxvY2ssIC50cmFuc2l0aW9uLWRldGFpbCAuYmxvY2tzLmludHJvIC5ibG9jayB7XG4gIFx0d2lkdGg6IDEwMCU7XG4gIFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgXHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb250YWN0IC5ibG9ja3Mge1xuICBcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIFx0LmJsb2NrIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0XHQuYi1tYXAge1xuXHRcdFx0b3JkZXI6MVxuXHRcdH1cblx0XHQuZm9ybSB7XG5cdFx0XHRvcmRlcjoyO1xuXHRcdH1cbiAgfVxuXG4gIC5wcm9qZWN0cywgLmtub3dsZWRnZSwgLnRyYWluaW5ncyB7XG4gIFx0bWFpbi5tYWluIHtcblx0XHRcdHBhZGRpbmctdG9wOiAyMDBweDtcblx0XHR9XG4gIFx0LmZpbHRlcnMge1xuICBcdFx0dG9wOiAxMjVweDtcbiAgXHRcdC5saXN0LXR5cGUge1xuICBcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuICBcdFx0XHRtaW4td2lkdGg6IDA7XG4gIFx0XHRcdGE6bGFzdC1jaGlsZCB7XG4gIFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0fVxuICB9XG4gIC5wcm9qZWN0cyB7XG4gIFx0bWFpbi5tYWluIHtcbiAgXHRcdHBhZGRpbmctdG9wOiAyNTBweDtcbiAgXHR9XG4gIH1cblxuICAucHJvamVjdHMsIC5rbm93bGVkZ2UsIC50cmFpbmluZ3MsIC50cmFpbmluZy1kZXRhaWwge1xuXHRcdC5maWx0ZXJzIHtcblx0XHRcdC5saXN0LXR5cGUsIC5maWx0ZXItdHlwZSB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0XHQubGlzdC10eXBlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuICAuc2VydmljZXMsIC50cmFuc2l0aW9ucywgLmNvb3BlcmF0aXZlLCAuY29udGFjdCwgLnRyYW5zaXRpb24tZGV0YWlsIHtcbiAgXHRtYWluLm1haW4ge1xuICBcdFx0cGFkZGluZy10b3A6IDEyMHB4O1xuICBcdH1cbiAgfVxuICAudmVudHVyZXMge1xuICBcdG1haW4ubWFpbiB7XG4gIFx0XHRwYWRkaW5nLXRvcDogMTUwcHg7XG4gIFx0fVxuICB9XG5cbiAgLmNvbnRhY3QgLmNvbnRhY3QtbGlua3Mge1xuICBcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIFx0LmJsb2NrIHtcbiAgXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIFx0XHRtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgXHRcdGZsZXgtd3JhcDogd3JhcDtcbiAgXHRcdGEge1xuICBcdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBcdFx0XHRtYXJnaW46IDAgMjBweCAxMHB4IDAgIWltcG9ydGFudDtcbiAgXHRcdH1cbiAgXHR9XG4gIH1cblxuICAuc2VydmljZXMgLm91ci1leHBlcnRpc2UgLmJ0biB7XG4gIFx0d2lkdGg6IGNhbGMoNTAlIC0gNjBweClcbiAgfVxuXG5cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM1ZW0pIHtcblx0aGVhZGVyLmhlYWRlci5vbGQgLmlubmVyIC5tYWluLW5hdiB7XG5cdFx0bGkge1xuXHRcdFx0YSB7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3QtY2hpbGQgYSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubGFuZy1zd2l0Y2gge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0fVxuXHR9XG5cblxuXHQuZG90cyB7XG4gIFx0bGVmdDogLTVweDtcbiAgfVxuXHQuZGlzY292ZXIsIC5wcm9qZWN0cyB7XG5cbiAgXHQubGlzdCAuaXRlbSB7XG4gIFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gIFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBcdFx0LmhvdyB7XG4gIFx0XHRcdGRpc3BsYXk6IG5vbmU7XG4gIFx0XHR9XG4gIFx0XHRoMiB7XG4gIFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXHRcdH1cbiAgXHRcdCY6aG92ZXIge1xuICBcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuICBcdFx0XHRoMiB7XG4gIFx0XHRcdFx0Ly8gZGlzcGxheTogYmxvY2s7XG4gIFx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgXHRcdFx0fVxuICBcdFx0XHQuaG93IHtcbiAgXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH1cbiAgfVxuICAucHJvamVjdC1kZXRhaWwge1xuXHRcdC5zbGlkZSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDM1cHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuXHRcdH1cblx0XHQuY3JkdCB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdC5sYWJlbCB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQudG9nZXRoZXIge1xuXHRcdGgzIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHRcdC5ibG9ja3MgLmJsb2NrIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHQub25nb2luZyB7XG5cdFx0LmNvbHMge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdCYuY29sLTIge1xuXHRcdFx0XHQuY29sOmZpcnN0LWNoaWxke1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5jb2w6bGFzdC1jaGlsZHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0ICAuc2VydmljZXMgLmJsb2NrcyAuYmxvY2ssIC50cmFuc2l0aW9ucyAuYmxvY2tzIC5ibG9jaywgLnZlbnR1cmVzIC5ibG9ja3MgLmJsb2NrLCAua25vd2xlZGdlIC5saXN0IC5pdGVtLCAudHJhaW5pbmdzIC5saXN0IC5pdGVtLCAucHJvamVjdHMgLmxpc3QgLml0ZW0gIHtcblx0ICBcdFx0d2lkdGg6IDEwMCU7XG5cdCAgXHRcdCY6bnRoLWNoaWxkKG9kZCksICY6bnRoLWNoaWxkKGV2ZW4pIHtcblx0XHQgICAgXHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHQgICAgXHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHRcdCAgICB9XG5cdCAgfVxuXHQgIC5zZXJ2aWNlcyAub3VyLWV4cGVydGlzZSwgLnNlcnZpY2VzIC5vdXItY2xpZW50cyB7XG5cdCAgXHQuYmxvY2tzIC5ibG9jayB7XG5cdCAgXHRcdCAgICB3aWR0aDogMTAwJTtcblx0ICBcdFx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xuXHQgIFx0XHQgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXHQgIFx0fVxuXHQgIH1cblx0ICAuc2VydmljZXMgLndoeS11cyAuYmxvY2sge1xuXHQgIFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHQgIFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0ICB9XG5cblx0ICAuc2VydmljZXMgLm91ci1leHBlcnRpc2UgLmJ0biB7XG4gIFx0XHR3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIFx0XHRtYXJnaW4tbGVmdDogMDtcbiAgXHRcdG1hcmdpbi1yaWdodDogMDtcbiAgXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjdlbSkge1xuXHRoZWFkZXIuaGVhZGVyLm5ldyAuaW5uZXIgLmxvZ28gLmltZy1ob2xkZXIge1xuXHRcdC8vIG1heC1oZWlnaHQ6ODBweCA7XG5cdH1cblx0LmRpc2NvdmVyIC5wcm9qZWN0LXR5cGUsIC5wcm9qZWN0cyAucHJvamVjdC10eXBlIHtcblx0XHRcdGEge1xuXHRcdFx0XHQmOm50aC1jaGlsZChldmVuKXtcbiAgXHRcdFx0XHRcdC8vIGZsZXgtZ3JvdzogMjtcbiAgXHRcdFx0XHRcdGZsZXgtYmFzaXM6IDU3JTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cblx0XHR9XG59IiwiLm1haW4tbmF2IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLm0tbWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOjMwcHg7XG4gIHJpZ2h0OjIwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogNjtcblxuICAub3BlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tbSB7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgYmFja2dyb3VuZDpwaW5rO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3V0bGluZTpub25lO1xuICAgIHBhZGRpbmc6IDA7IC8vIGlvcyBoYXMgYSBidWcgb3RoZXJ3aXNlXG5cblxuICB9XG59XG5cbi5tLW1lbnUtb3BlbiB7XG4gIC5jbG9zZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDVlbSkge1xuXG4gIC5tLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaHRtbC5ub3Njcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIGJvZHkubm9zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5tLW1lbnUtb3BlbiB7XG4gICAgLm5hdl9fY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE4MHB4KTtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAvKiBUaGVzZSAyIGJlbG93IGFyZSBhbGwgdGhlIG1hZ2ljOiAqL1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgLyogSGlkZSBzY3JvbGxiYXIgZm9yIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYSAqL1xuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLyogSGlkZSBzY3JvbGxiYXIgZm9yIElFIGFuZCBFZGdlICovXG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG5cbiAgICAgIC8vIEZpcmVmb3ggaGFja1xuICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAgIH1cbiAgfVxuXG5cblxufSJdfQ== */
