/*!
Theme Name: DGG
Theme URI: http://underscores.me/
Author: Janita Top
Author URI: http://janitatop.nl
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: dgg
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

DGG is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/* hoofdmenu en h1, locatie parkeerdek */
/* locatie zuiderhaven */
/* locatie cascadeplein 4 */
/* locatie cascadeplein 9 */
/*

    font-family: 'Montserrat', sans-serif;

    font-family: 'Oswald', sans-serif;
    
    font-family: 'Roboto', sans-serif;

*/
/*Function to calculate em from px , use like font-size: em(14)*/
/* Text meant only for screen readers. */
/* underscores breakpoint is at 600px /37.5 em */
/* checkbox rectangle */
/* to include colored corner */
/* mobile */
/* footer square */
/* to include colored top left corner */
/* to include blue left bullet block */
/* to include bottom border */
/* border met gekleurd blokje */
/* border met social media icons */
/* border met padding */
/* to include bottom short white border */
/* to include bottom short white border on mobile */
/* blue small border in event detail info */
/* to include bottom short red border in main menu */
/* to include top colored location border */
/* reset styles for grid areas */
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | 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; }

/**
 * 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 {
  -webkit-box-sizing: content-box;
          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 */
  -webkit-text-decoration: underline dotted;
          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 {
  -webkit-box-sizing: border-box;
          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"] {
  -webkit-box-sizing: border-box;
          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; }

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5; }

h1, h2, h3, h4, h5, h6 {
  clear: both;
  font-family: 'Montserrat', sans-serif;
  color: #0f283a;
  font-weight: normal; }

h1 {
  font-size: 1.625em;
  letter-spacing: 0.9px;
  margin: 0; }

h2 {
  font-size: 1.25em; }

footer h3 {
  font-family: Oswald, sans-serif; }

p {
  margin-bottom: 1.5em;
  font-family: Roboto;
  font-size: 0.875em;
  color: #232323;
  word-break: normal;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }

@media (max-width: 960px) {
  p {
    font-size: 0.8125em;
    padding-bottom: 10px; } }

.entry-content {
  position: relative;
  padding-bottom: 40px;
  /* social share buttons */
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }
  .entry-content ol, .entry-content ul {
    margin-left: .8em;
    padding-left: 0; }
  .entry-content ol li, .entry-content ul li {
    font-size: 0.875em; }
  .entry-content a, .entry-content li a {
    color: #0f283a; }
    .entry-content a:visited, .entry-content li a:visited {
      color: #47729C; }
  @media (min-width: 961px) {
    .entry-content:after {
      width: 360px;
      content: '';
      height: 1px;
      background-color: #0f283a;
      position: absolute;
      bottom: 0;
      left: 240px; } }
  @media (max-width: 960px) {
    .entry-content:after {
      width: calc(100% - 100px);
      content: '';
      height: 1px;
      background-color: #0f283a;
      position: absolute;
      bottom: 0;
      left: 0; } }
  .entry-content .wp-caption-text,
  .entry-content .featured-image-caption {
    font-family: 'Roboto', sans-serif;
    font-size: 0.875em;
    text-align: left;
    font-style: italic; }
    @media (max-width: 960px) {
      .entry-content .wp-caption-text,
      .entry-content .featured-image-caption {
        font-size: 0.8125em; } }

dfn, cite, em, i {
  font-style: italic; }

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em; }

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem; }

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help; }

mark, ins {
  background: #fff9c0;
  text-decoration: none; }

big {
  font-size: 125%; }

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */ }

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em; }

ul, ol {
  margin: 0 0 1.5em 3em; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em; }

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */ }

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */ }

table {
  margin: 0 0 1.5em;
  width: 100%; }

.mobile-info {
  display: none; }
  @media (max-width: 960px) {
    .mobile-info {
      display: block;
      margin-top: 20px; } }

.hide-mobile {
  display: block; }
  @media (max-width: 960px) {
    .hide-mobile {
      display: none; } }

.site, .site-footer {
  max-width: 1440px;
  margin: 0 auto; }

.site-main {
  position: relative; }

.site-header {
  position: fixed;
  background-color: white;
  z-index: 1;
  top: 0; }
  @media (max-width: 960px) {
    .site-header {
      -webkit-box-shadow: 0 -1px 10px #969197;
              box-shadow: 0 -1px 10px #969197; } }
  @media (min-width: 961px) {
    .site-header {
      width: 942px;
      /* voor FF 940 beter */
      left: calc( (100vw - 958px) / 2);
      /* voor FF 940 beter */
      height: 75px;
      border-bottom: 1px solid black; } }
  @media (min-width: 1380px) {
    .site-header {
      width: 100%;
      max-width: 1190px;
      /* vanwege border die doorloopt */
      padding-right: 250px; } }

@media (max-width: 960px) {
  .site-content {
    padding: 10px; } }

@media (min-width: 961px) {
  .site-content {
    max-width: 940px;
    margin: 0 auto;
    padding: 100px 0; } }

@media (min-width: 961px) {
  .site-branding {
    width: 250px;
    float: left; }
    .site-branding .site-title {
      height: 75px; } }

@media (max-width: 960px) {
  .site-branding {
    padding-left: 10px; }
    .site-branding .site-title {
      height: 60px; } }

.site-branding .site-title {
  margin: 6px 0 0 0;
  position: relative; }
  .site-branding .site-title a {
    display: block;
    background: transparent url(/wp-content/themes/dgg/img/logo-dev.svg) 0 0 no-repeat;
    background-size: 179px 62px;
    height: 62px;
    width: 179px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden; }
  @media (max-width: 960px) {
    .site-branding .site-title a {
      background-size: auto 50px;
      height: 50px;
      width: 200px; } }

/* introtekstjes algemeen */
.intro {
  position: relative; }
  .intro a {
    text-decoration: none;
    display: block; }
    .intro a:focus:within {
      outline: 1px solid #85b5d9; }
  .intro h3 {
    font-family: Oswald;
    font-size: 1.3125em;
    color: #000;
    margin: 0; }
  .intro.parkeerdek:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #0f283a;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.cascadeplein-4:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #e30613;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.cascadeplein-10:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #ffed00;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.zuiderhaven:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #85b5d9;
    position: absolute;
    bottom: 0;
    right: 0; }
  @media (max-width: 960px) {
    .intro.parkeerdek:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.cascadeplein-4:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #e30613;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.cascadeplein-10:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.zuiderhaven:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #85b5d9;
      position: absolute;
      bottom: 0;
      right: 0; } }

.date {
  display: none; }
  @media (max-width: 960px) {
    .date {
      display: block;
      font-family: Roboto;
      font-size: 0.875em;
      color: #232323; } }

.leesmeer {
  font-family: Roboto;
  font-size: 0.875em;
  color: #232323;
  display: inline; }
  @media (max-width: 960px) {
    .leesmeer:after {
      content: " >>"; } }

.nav-links {
  margin: 20px 0; }
  .nav-links a, .nav-links a:hover, .nav-links a:visited {
    font-family: Roboto;
    font-size: 1em;
    color: #232323;
    display: block;
    margin-top: 20px; }
    @media (max-width: 960px) {
      .nav-links a, .nav-links a:hover, .nav-links a:visited {
        font-size: 0.875em; } }
  .nav-links .current {
    font-family: Roboto;
    font-size: 1em;
    color: #85b5d9; }
    @media (max-width: 960px) {
      .nav-links .current {
        font-size: 0.875em; } }
  .nav-links a.prev {
    margin-right: 10px; }
    .nav-links a.prev:before {
      content: "<< "; }
    @media (max-width: 960px) {
      .nav-links a.prev {
        padding-left: 1em; } }
  .nav-links a.next {
    margin-left: 10px; }
    .nav-links a.next:after {
      content: " >>"; }
    @media (max-width: 960px) {
      .nav-links a.next {
        padding-right: 1em; } }
  .nav-links a.page-numbers {
    display: inline;
    padding: .2em; }

/* op overzichtspagina's */
.home .intro:not(.main):before,
.page-template-news-page .intro:not(.main):before,
.search-results .intro:not(.main):before,
.single-dgg_event .intro:not(.main):before,
.single-post .intro:not(.main):before {
  content: '';
  width: 100%;
  height: 1px;
  background-color: #0f283a;
  position: absolute;
  bottom: 0;
  left: 0; }

.home .intro.event:before,
.home .intro.eventrow:before,
.page-template-news-page .intro.event:before,
.page-template-news-page .intro.eventrow:before,
.search-results .intro.event:before,
.search-results .intro.eventrow:before,
.single-dgg_event .intro.event:before,
.single-dgg_event .intro.eventrow:before,
.single-post .intro.event:before,
.single-post .intro.eventrow:before {
  width: calc(100% - 30px);
  content: '';
  height: 1px;
  background-color: #0f283a;
  position: absolute;
  bottom: 0;
  left: 0; }

/* programmaoverzicht */
section.program {
  margin-bottom: 20px; }
  section.program .show-locations {
    display: none; }
    @media (max-width: 960px) {
      section.program .show-locations {
        display: block;
        position: relative;
        margin-top: 20px;
        width: 280px; } }
    section.program .show-locations button {
      height: 40px;
      padding: 0.8125em 1.875em;
      font-size: 1em;
      font-family: 'Montserrat', sans-serif;
      font-size: 0.875em;
      text-align: left;
      background-color: rgba(249, 249, 249, 0.8);
      border: none;
      cursor: pointer; }
      section.program .show-locations button:before {
        content: '';
        width: 10px;
        height: 10px;
        background-color: #0f283a;
        position: absolute;
        top: 0;
        left: 0; }
  section.program .locations {
    width: 220px;
    height: 220px;
    background: transparent url(/wp-content/themes/dgg/img/Locaties.svg) 0 0 no-repeat;
    background-size: 220px 220px;
    position: relative; }
    section.program .locations a {
      display: block;
      height: 100%;
      text-decoration: none;
      color: #0f283a; }
    section.program .locations:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      top: 0;
      left: 0; }
    section.program .locations .heading {
      padding: 0.8125em 1.875em;
      font-size: 1em;
      font-family: 'Montserrat', sans-serif;
      background-color: rgba(249, 249, 249, 0.8); }
    @media (max-width: 960px) {
      section.program .locations {
        display: none;
        margin-top: -40px;
        height: 220px;
        width: 280px;
        background-size: 280px 280px;
        background-position: 0 -60px; }
        section.program .locations .heading {
          width: 280px; } }

.no-cssgrid section.program .intro {
  padding-right: 20px; }

body.search-results h1 {
  padding-bottom: 20px; }

.search-results, .page-template-program-page {
  /* filters */
  /* tijdstip filter */ }
  .search-results .program h1, .page-template-program-page .program h1 {
    margin-top: 0; }
    @media (max-width: 960px) {
      .search-results .program h1, .page-template-program-page .program h1 {
        text-transform: uppercase;
        font-size: 1.125em; } }
  .search-results .filter, .page-template-program-page .filter {
    padding-top: 30px; }
  .search-results .facetwp-counter, .page-template-program-page .facetwp-counter {
    display: none; }
  .search-results .filter label, .page-template-program-page .filter label {
    display: block;
    width: 220px;
    height: 30px;
    border-bottom: 1px solid #0f283a;
    background: transparent url(/wp-content/themes/dgg/img/chevron.svg) center right no-repeat;
    background-size: 18px 10px;
    cursor: pointer;
    font-size: 1em;
    font-family: 'Montserrat', sans-serif;
    color: #0f283a; }
    @media (max-width: 960px) {
      .search-results .filter label, .page-template-program-page .filter label {
        width: calc(100% - 10px); } }
  .search-results .facetwp-checkbox, .page-template-program-page .facetwp-checkbox {
    font-size: 1em;
    font-family: 'Montserrat', sans-serif;
    color: #0f283a;
    padding-left: 25px;
    position: relative;
    background-image: none;
    position: relative; }
    .search-results .facetwp-checkbox:before, .page-template-program-page .facetwp-checkbox:before {
      content: '';
      width: 18px;
      height: 18px;
      border: 1px solid #0f283a;
      position: absolute;
      bottom: 3px;
      left: 0; }
  .search-results .facetwp-checkbox.checked, .page-template-program-page .facetwp-checkbox.checked {
    background-image: url(/wp-content/themes/dgg/img/Vinkje.svg);
    background-position: 2px 6px;
    background-size: 14px 12px; }
  .search-results .facetwp-checkbox[data-value="cascadeplein-4"]:after, .page-template-program-page .facetwp-checkbox[data-value="cascadeplein-4"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #e30613;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="cascadeplein-10"]:after, .page-template-program-page .facetwp-checkbox[data-value="cascadeplein-10"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #ffed00;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="parkeerdek"]:after, .page-template-program-page .facetwp-checkbox[data-value="parkeerdek"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #0f283a;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="zuiderhaven"]:after, .page-template-program-page .facetwp-checkbox[data-value="zuiderhaven"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #85b5d9;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .filter.active label, .page-template-program-page .filter.active label {
    background-image: url(/wp-content/themes/dgg/img/chevron-up.svg); }
  .search-results .facetwp-facet, .page-template-program-page .facetwp-facet {
    padding: 10px 0 25px 0;
    display: none;
    position: absolute;
    z-index: 1;
    background: white;
    width: 220px;
    height: auto; }
    .search-results .facetwp-facet select, .search-results .facetwp-facet select:focus, .search-results .facetwp-facet select:active, .page-template-program-page .facetwp-facet select, .page-template-program-page .facetwp-facet select:focus, .page-template-program-page .facetwp-facet select:active {
      border: none;
      width: 100%;
      padding: 0; }
    @media (max-width: 960px) {
      .search-results .facetwp-facet, .page-template-program-page .facetwp-facet {
        width: calc(100% - 10px); } }
  .search-results #timeoptions, .page-template-program-page #timeoptions {
    display: none;
    padding: 10px 0 25px 0;
    position: absolute;
    z-index: 1;
    background: white;
    width: 220px;
    height: auto; }
    @media (max-width: 960px) {
      .search-results #timeoptions, .page-template-program-page #timeoptions {
        width: calc(100% - 10px); } }
  .search-results .timetarget, .page-template-program-page .timetarget {
    cursor: pointer;
    font-size: 1em;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 4px; }
  .search-results button.reset, .page-template-program-page button.reset {
    /*display: none;*/
    /* temp until filters work */
    background: none;
    border: 1px solid #0f283a;
    height: 26px;
    width: 160px;
    vertical-align: center;
    cursor: pointer;
    margin-top: 30px;
    margin-left: 30px; }
    .search-results button.reset:hover, .search-results button.reset:focus, .page-template-program-page button.reset:hover, .page-template-program-page button.reset:focus {
      background-color: #0f283a;
      color: white; }
    @media (max-width: 960px) {
      .search-results button.reset, .page-template-program-page button.reset {
        margin-left: 0; } }
  .search-results .time-divider, .page-template-program-page .time-divider {
    font-size: 1.125em;
    font-family: 'Montserrat', sans-serif;
    margin: 10px 0;
    position: relative; }
    .search-results .time-divider:after, .page-template-program-page .time-divider:after {
      width: calc(100% - 110px);
      content: '';
      height: 1px;
      background-color: #0f283a;
      position: absolute;
      bottom: 7px;
      left: 110px; }
  .search-results .event-overview-single, .page-template-program-page .event-overview-single {
    background-color: #f9f9f9;
    padding: 1em 1.25em;
    position: relative; }
    .search-results .event-overview-single.parkeerdek:before, .page-template-program-page .event-overview-single.parkeerdek:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-4:before, .page-template-program-page .event-overview-single.cascadeplein-4:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #e30613;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-10:before, .page-template-program-page .event-overview-single.cascadeplein-10:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.zuiderhaven:before, .page-template-program-page .event-overview-single.zuiderhaven:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #85b5d9;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.parkeerdek .locaties:before, .page-template-program-page .event-overview-single.parkeerdek .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #0f283a;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-4 .locaties:before, .page-template-program-page .event-overview-single.cascadeplein-4 .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #e30613;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-10 .locaties:before, .page-template-program-page .event-overview-single.cascadeplein-10 .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #ffed00;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.zuiderhaven .locaties:before, .page-template-program-page .event-overview-single.zuiderhaven .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #85b5d9;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single a, .page-template-program-page .event-overview-single a {
      text-decoration: none;
      color: #0f283a;
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
    .search-results .event-overview-single h3, .page-template-program-page .event-overview-single h3 {
      font-size: 1em;
      font-family: 'Montserrat', sans-serif;
      margin-top: 0;
      margin-bottom: 3px; }
    .search-results .event-overview-single .cat, .page-template-program-page .event-overview-single .cat {
      font-size: 0.75em;
      text-transform: capitalize; }
    .search-results .event-overview-single .meta, .page-template-program-page .event-overview-single .meta {
      font-size: 0.75em;
      -webkit-box-flex: 0;
          -ms-flex: 0 1 auto;
              flex: 0 1 auto;
      margin-top: auto;
      /* stick at the bottom */ }
      .search-results .event-overview-single .meta .tijden span, .page-template-program-page .event-overview-single .meta .tijden span {
        display: block; }
      .search-results .event-overview-single .meta .locaties, .page-template-program-page .event-overview-single .meta .locaties {
        position: relative;
        line-height: 1.5;
        margin-top: 1em; }
        .search-results .event-overview-single .meta .locaties span, .page-template-program-page .event-overview-single .meta .locaties span {
          display: block; }
    @media (max-width: 960px) {
      .search-results .event-overview-single, .page-template-program-page .event-overview-single {
        margin-top: 10px; } }

/* IE fallback */
.no-cssgrid .event-overview-single {
  height: 220px; }

/* content blocks on grid */
.featured, .news {
  margin-bottom: 30px; }
  @media (max-width: 960px) {
    .featured, .news {
      margin-bottom: 0; } }

.thumb.newsrow,
.thumb.eventrow,
.search-results .thumb {
  background-color: #eee; }
  .thumb.newsrow img,
  .thumb.eventrow img,
  .search-results .thumb img {
    width: 220px;
    height: 220px;
    -o-object-fit: cover;
       object-fit: cover; }

/* IE fallback */
@media (min-width: 961px) {
  .no-cssgrid .thumb.newsrow,
  .no-cssgrid .thumb.eventrow {
    height: 220px;
    width: 220px; }
  .no-cssgrid .intro.newsrow,
  .no-cssgrid .intro.eventrow {
    width: 220px; }
  .no-cssgrid .single .intro.newsrow {
    height: 220px; }
    .no-cssgrid .single .intro.newsrow h3 {
      padding-top: 10px; }
  .no-cssgrid .page-template-news-page .intro h3 {
    padding-top: 10px; } }

/* ander news en events op mobiel */
@media (max-width: 960px) {
  .thumb.newsrow,
  .thumb.eventrow {
    margin-top: 10px;
    display: inline-block;
    width: 100px;
    height: 100px;
    background: #eee;
    float: left; }
    .thumb.newsrow img,
    .thumb.eventrow img {
      width: 100px;
      height: 100px; }
  .intro.newsrow,
  .intro.eventrow {
    display: inline-block;
    width: calc(100% - 110px);
    height: 110px;
    margin-bottom: 10px;
    margin-left: 10px;
    padding-top: 10px; }
    .intro.newsrow a,
    .intro.eventrow a {
      height: 100px;
      width: 190px;
      position: relative; }
    .intro.newsrow h3,
    .intro.eventrow h3 {
      font-size: 1em;
      line-height: 1.3; }
    .intro.newsrow p,
    .intro.eventrow p {
      display: none; }
    .intro.newsrow .date,
    .intro.eventrow .date {
      position: absolute;
      bottom: 2.5em;
      left: 0; }
    .intro.newsrow .leesmeer.mob,
    .intro.eventrow .leesmeer.mob {
      position: absolute;
      bottom: 1em;
      left: 0; } }

/* single article en event */
.single article {
  clear: left;
  /* volgorde blokken anders op mobiel */ }
  .single article .mobile-info {
    display: none; }
  @media (max-width: 960px) {
    .single article h1 {
      margin-top: 0; }
    .single article .block.event-metadata {
      display: none; }
    .single article .mobile-info {
      display: block; } }
  .single article .entry-content {
    margin: 0;
    padding-left: 240px;
    /* bij events staat er een link naar het overzicht onder de foto */ }
    @media (min-width: 961px) {
      .single article .entry-content {
        min-height: 700px;
        /* ivm veel metadata */
        padding-bottom: 40px;
        /* social share buttons */ } }
    .single article .entry-content p {
      margin-top: 0; }
    .single article .entry-content h2, .single article .entry-content h3, .single article .entry-content h4 {
      display: inline;
      margin-top: 0;
      line-height: 1.2; }
    .single article .entry-content h2 + p, .single article .entry-content h3 + p, .single article .entry-content h4 + p {
      margin-top: 20px; }
    @media (max-width: 960px) {
      .single article .entry-content {
        padding-left: 0;
        line-height: 22px; }
        .single article .entry-content p, .single article .entry-content h2, .single article .entry-content h3, .single article .entry-content h4 {
          padding-left: 0; } }
    .single article .entry-content .thumb-link {
      position: relative;
      margin-left: -240px;
      float: left;
      padding-right: 20px;
      max-height: 480px; }
      .single article .entry-content .thumb-link.with-caption {
        max-height: 500px; }
      .single article .entry-content .thumb-link .featured-image-caption {
        max-width: 460px;
        display: block; }
      @media (max-width: 960px) {
        .single article .entry-content .thumb-link {
          float: none;
          margin-left: 0;
          padding-right: 0;
          padding: 10px 0; } }
      .single article .entry-content .thumb-link .post-thumbnail {
        width: 460px;
        position: relative; }
        @media (max-width: 960px) {
          .single article .entry-content .thumb-link .post-thumbnail {
            width: 100%; } }
      .single article .entry-content .thumb-link a.terug {
        position: relative;
        margin-top: 15px;
        margin-right: 20px;
        width: 220px;
        height: 40px;
        display: block;
        background-color: #f9f9f9;
        text-decoration: none;
        color: #0f283a;
        font-family: Montserrat;
        font-size: 1em;
        text-align: center;
        padding: 0.4375em 0.6875em; }
        .single article .entry-content .thumb-link a.terug:before {
          content: '';
          width: 10px;
          height: 10px;
          background-color: #ffed00;
          position: absolute;
          top: 0;
          left: 0; }
        @media (max-width: 960px) {
          .single article .entry-content .thumb-link a.terug {
            display: none; } }

#main .supsystic-social-sharing {
  height: 40px;
  padding: 0;
  position: absolute;
  bottom: 0;
  right: 0; }
  #main .supsystic-social-sharing a {
    width: 39px;
    height: 39px;
    margin: 0 0 0 10px;
    background-color: #f9f9f9;
    color: #0f283a;
    border: 1px solid #0f283a;
    position: relative; }
    #main .supsystic-social-sharing a:hover, #main .supsystic-social-sharing a:focus, #main .supsystic-social-sharing a:active {
      color: #fff; }
    #main .supsystic-social-sharing a i {
      position: absolute;
      top: 9px;
      left: 7px;
      font-size: 19px; }

/* nieuwsoverzicht en zoekresultaten op mobiel - alle items klein behalve de eerste */
@media (max-width: 960px) {
  .page-template-news-page .newsoverview,
  .search-results section.search-results {
    /* eerste bericht thumb en intro */ }
    .page-template-news-page .newsoverview > div:nth-child(1),
    .search-results section.search-results > div:nth-child(1) {
      width: 100%;
      height: 100%;
      background-color: transparent;
      display: block;
      float: none; }
      .page-template-news-page .newsoverview > div:nth-child(1) img,
      .search-results section.search-results > div:nth-child(1) img {
        height: auto;
        width: 100%;
        max-width: 100%; }
    .page-template-news-page .newsoverview > div:nth-child(2),
    .search-results section.search-results > div:nth-child(2) {
      display: block;
      width: 100%;
      margin-bottom: 10px;
      margin-left: 0;
      padding-top: 0; }
      .page-template-news-page .newsoverview > div:nth-child(2) a,
      .search-results section.search-results > div:nth-child(2) a {
        width: 100%;
        height: auto; }
      .page-template-news-page .newsoverview > div:nth-child(2) p,
      .search-results section.search-results > div:nth-child(2) p {
        display: block; }
      .page-template-news-page .newsoverview > div:nth-child(2) .date,
      .search-results section.search-results > div:nth-child(2) .date {
        display: none; }
      .page-template-news-page .newsoverview > div:nth-child(2) .leesmeer,
      .search-results section.search-results > div:nth-child(2) .leesmeer {
        display: block; }
      .page-template-news-page .newsoverview > div:nth-child(2) .leesmeer.mob,
      .search-results section.search-results > div:nth-child(2) .leesmeer.mob {
        display: none; }
    .page-template-news-page .newsoverview .thumb,
    .search-results section.search-results .thumb {
      margin-top: 10px;
      display: inline-block;
      float: left;
      width: 100px;
      height: 100px;
      background-color: #eee; }
      .page-template-news-page .newsoverview .thumb img,
      .search-results section.search-results .thumb img {
        width: 100px;
        height: 100px; }
    .page-template-news-page .newsoverview .intro,
    .search-results section.search-results .intro {
      display: inline-block;
      width: calc(100% - 110px);
      height: 110px;
      margin-bottom: 10px;
      margin-left: 10px;
      padding-top: 10px; }
      .page-template-news-page .newsoverview .intro a,
      .search-results section.search-results .intro a {
        height: 100px;
        position: relative; }
      .page-template-news-page .newsoverview .intro h3,
      .search-results section.search-results .intro h3 {
        font-size: 1em;
        line-height: 1.2; }
      .page-template-news-page .newsoverview .intro p,
      .search-results section.search-results .intro p {
        display: none; }
      .page-template-news-page .newsoverview .intro .date,
      .search-results section.search-results .intro .date {
        position: absolute;
        bottom: 2.5em;
        left: 0; }
      .page-template-news-page .newsoverview .intro .leesmeer.mob,
      .search-results section.search-results .intro .leesmeer.mob {
        position: absolute;
        bottom: 1em;
        left: 0; } }

/* laad meer posts button */
.alm-load-more-btn.dgg {
  width: 220px;
  height: 40px;
  border-radius: 0;
  background-color: #f9f9f9;
  color: #0f283a;
  font-family: Montserrat;
  font-size: 1em;
  position: relative;
  text-transform: lowercase; }
  .alm-load-more-btn.dgg:hover, .alm-load-more-btn.dgg:focus {
    background-color: #f9f9f9;
    border: 1px solid #0f283a;
    color: #0f283a; }
  .alm-load-more-btn.dgg:after {
    content: '';
    width: 10px;
    height: 10px;
    background-color: #0f283a;
    position: absolute;
    top: 0;
    left: 0; }

.alm-load-more-btn.dgg.done {
  display: none; }

.alm-btn-wrap .alm-load-more-btn.loading::before {
  background: none;
  /* loader gif */ }

/* deafult page */
.page-template-default article {
  clear: left; }
  .page-template-default article h1 {
    margin: 0 0 5px 0; }
  .page-template-default article .entry-content {
    margin: 0;
    padding-left: 240px;
    /* featured image staat bovenaan */
    /* img in content */ }
    @media (max-width: 960px) {
      .page-template-default article .entry-content {
        padding-left: 0; } }
    @media (min-width: 961px) {
      .page-template-default article .entry-content {
        min-height: 300px;
        padding-bottom: 40px;
        /* social share buttons */ } }
    .page-template-default article .entry-content p {
      margin-top: 0; }
      @media (max-width: 960px) {
        .page-template-default article .entry-content p {
          padding-left: 0; } }
    .page-template-default article .entry-content .post-thumbnail {
      width: 460px;
      margin-left: -240px;
      float: left;
      padding-right: 20px; }
      @media (max-width: 960px) {
        .page-template-default article .entry-content .post-thumbnail {
          float: none;
          margin-left: 0;
          width: 100%;
          padding-right: 0;
          padding-bottom: 15px; } }
    .page-template-default article .entry-content p img {
      margin-left: -240px;
      padding: 0 0 20px 0; }
      @media (max-width: 960px) {
        .page-template-default article .entry-content p img {
          float: none;
          margin-left: 0;
          width: 100%;
          padding-right: 0;
          padding-bottom: 15px; } }

/* overzicht partners */
.page-template-partner-page h1 {
  margin-top: 0; }

.page-template-partner-page section.partners {
  margin-top: 40px; }
  .page-template-partner-page section.partners .thumb {
    text-align: center;
    vertical-align: center; }
    @media (max-width: 960px) {
      .page-template-partner-page section.partners .thumb {
        margin: 20px 0; } }
  .page-template-partner-page section.partners .intro {
    border-bottom: 1px solid #13383b; }
    .page-template-partner-page section.partners .intro h3 a, .page-template-partner-page section.partners .intro h3 a:visited {
      color: #0f283a; }

footer.site-footer {
  background: #eeeeee;
  position: relative; }
  @media (max-width: 960px) {
    footer.site-footer {
      padding: 0 10px;
      border-top: 20px solid #0f283a; }
      footer.site-footer:before {
        content: '';
        width: 20px;
        height: 20px;
        background-color: white;
        position: absolute;
        top: -20px;
        left: 10px; } }
  @media (min-width: 961px) {
    footer.site-footer {
      border-top: 60px solid #0f283a;
      padding-bottom: 20px;
      padding-top: 0;
      padding-left: calc( (100vw - 960px) / 2);
      padding-right: calc( (100vw - 960px) / 2); }
      footer.site-footer:before {
        content: '';
        width: 60px;
        height: 60px;
        background-color: white;
        position: absolute;
        top: -60px;
        left: 250px; } }
  @media (min-width: 1380px) {
    footer.site-footer {
      padding: 0 250px;
      min-height: 400px; } }
  footer.site-footer section {
    padding: 40px 0;
    overflow: visible; }
    @media (max-width: 960px) {
      footer.site-footer section {
        padding: 10px 10px 10px 120px;
        margin-bottom: 0; }
        footer.site-footer section h3 {
          margin-bottom: 0; } }
  footer.site-footer section.logo {
    background: url(/wp-content/themes/dgg/img/footer-beeldmerk.svg) 0 40px no-repeat;
    background-size: 129px 118px; }
  @media (max-width: 960px) {
    footer.site-footer section.logo {
      background: url(/wp-content/themes/dgg/img/footer-beeldmerk.svg) 0 10px no-repeat;
      background-size: 81px 74px;
      width: 81px;
      height: 100px;
      padding: 0;
      margin-left: 0;
      position: absolute;
      top: 10px;
      left: 10px; } }
  footer.site-footer .social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px; }
    footer.site-footer .social a {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 auto;
              flex: 0 1 auto;
      margin-right: 10px;
      width: 40px;
      height: 40px;
      display: block;
      background-size: 40px 40px;
      background-repeat: no-repeat;
      background-position: 0 0;
      cursor: pointer; }
      footer.site-footer .social a.fb {
        background-image: url(/wp-content/themes/dgg/img/facebook_button.svg); }
      footer.site-footer .social a.tw {
        background-image: url(/wp-content/themes/dgg/img/Twitter_button.svg); }
      footer.site-footer .social a.yt {
        background-image: url(/wp-content/themes/dgg/img/youtube_button.svg); }
  footer.site-footer .textwidget, footer.site-footer .textwidget p {
    font-family: 'Roboto', sans-serif;
    font-size: 14px; }
    footer.site-footer .textwidget a, footer.site-footer .textwidget a:hover, footer.site-footer .textwidget a:visited, footer.site-footer .textwidget p a, footer.site-footer .textwidget p a:hover, footer.site-footer .textwidget p a:visited {
      color: #0f283a; }

.featured {
  /* featured event on mobile */
  /* medium news block */ }
  @media (max-width: 960px) {
    .featured .thumb.main img {
      height: 100%;
      width: 100%; } }
  .featured .intro.main {
    padding: 21px 30px;
    margin-top: -20px; }
    .featured .intro.main p {
      color: #0f283a;
      font-family: Montserrat;
      font-size: 1em; }
    .featured .intro.main h3 {
      margin: 0;
      font-family: Montserrat;
      font-size: 1.5em;
      line-height: 1.46;
      text-transform: uppercase;
      color: #0f283a; }
    @media (max-width: 960px) {
      .featured .intro.main {
        margin-left: 20px;
        padding: 10px;
        margin-top: -70px;
        background-color: #fff;
        max-width: 43em; }
        .featured .intro.main h3 {
          font-size: 1em; }
        .featured .intro.main p {
          font-size: 0.875em; } }
  .featured .intro.event h3 span {
    display: block; }
  @media (max-width: 960px) {
    .featured .thumb.event {
      margin-top: 20px;
      float: left; }
      .featured .thumb.event img {
        width: 100px;
        height: 100px; }
    .featured .intro.event {
      float: left;
      height: 100px;
      /*width: 190px;*/
      width: calc(100% - 110px);
      margin-top: 20px;
      margin-left: 10px;
      margin-bottom: 10px; }
      .featured .intro.event h3 {
        font-size: 1em; } }
  .featured .thumb.second-news {
    margin-top: 20px; }
  .featured .intro.second-news {
    margin-top: 20px; }
    .featured .intro.second-news a {
      text-decoration: none; }
    .featured .intro.second-news h3 {
      font-family: Oswald;
      font-size: 1.3125em;
      color: #000;
      margin: 0; }
      .featured .intro.second-news h3 span {
        display: block; }
    @media (max-width: 960px) {
      .featured .intro.second-news h3 {
        font-size: 1em; } }
  @media (max-width: 960px) {
    .featured {
      text-align: left; }
      .featured .thumb.second-news img {
        margin-top: 10px;
        width: 100%;
        max-width: 460px;
        height: auto; } }

/* IE fallback */
@media (min-width: 961px) {
  .no-cssgrid .home .intro:not(.main) {
    height: 220px;
    width: 220px;
    margin: 20px 0; }
  .no-cssgrid .home .thumb.main {
    margin-right: 20px; }
  .no-cssgrid .home .thumb.second-news {
    max-width: 460px;
    margin-right: 20px; }
  .no-cssgrid .home .block.program-link {
    margin-bottom: 20px; } }

/* all css grid specifications, only for desktop from 960px width  */
/* target IE11 with .no-cssgrid class, or progressive target new browsers with .cssgrid class */
@media (min-width: 961px) {
  /* algemene onderdelen/blokken */
  .block.program-link {
    -ms-grid-column: 4;
        grid-column-start: 4;
    -ms-grid-column-span: 1;
        grid-column-end: span 1;
    -ms-grid-row: 1;
        grid-row-start: 1;
    -ms-grid-row-span: 1;
        grid-row-end: span 1; }
  .cssgrid .site-footer {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    -ms-grid-rows: 220px;
        grid-template-rows: 220px; }
  /* fallback for IE */
  .site-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .site-footer section {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 25%;
              flex: 0 1 25%; }
  /* homepage */
  .site-main section.featured {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */ }
    .site-main section.featured::before {
      position: absolute; }
    .site-main section.featured > * {
      overflow: hidden; }
  .site-main section.news {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
        grid-template-areas: "nb nt1 nt2 nt3" ".  ni1 ni2 ni3" ".  et1 et2 pb " ".  ei1 ei2 .  ";
    /* to remove unwanted children from the grid */ }
    .site-main section.news::before {
      position: absolute; }
    .site-main section.news > * {
      overflow: hidden; }
  .home {
    /* featured grid */
    /* news grid */
    /* start with new grid 
		nth-child counts all sibling divs, so thumbs and intro's */ }
    .home .featured .thumb.main {
      -ms-grid-column: 1;
          grid-column-start: 1;
      -ms-grid-column-span: 3;
          grid-column-end: span 3;
      -ms-grid-row: 1;
          grid-row-start: 1;
      -ms-grid-row-span: 3;
          grid-row-end: span 3; }
    .home .featured .intro.main {
      -ms-grid-column: 2;
          grid-column-start: 2;
      -ms-grid-column-span: 2;
          grid-column-end: span 2;
      -ms-grid-row: 3;
          grid-row-start: 3;
      -ms-grid-row-span: 1;
          grid-row-end: span 1;
      background-color: #fff; }
    .home .featured .thumb.event {
      -ms-grid-column: 4;
          grid-column-start: 4;
      -ms-grid-column-span: 1;
          grid-column-end: span 1;
      -ms-grid-row: 2;
          grid-row-start: 2;
      -ms-grid-row-span: 1;
          grid-row-end: span 1; }
    .home .featured .intro.event {
      -ms-grid-column: 4;
          grid-column-start: 4;
      -ms-grid-column-span: 1;
          grid-column-end: span 1;
      -ms-grid-row: 3;
          grid-row-start: 3;
      -ms-grid-row-span: 1;
          grid-row-end: span 1;
      background-color: #fff; }
    .home .featured .thumb.second-news {
      -ms-grid-column: 2;
          grid-column-start: 2;
      -ms-grid-column-span: 2;
          grid-column-end: span 2;
      -ms-grid-row: 4;
          grid-row-start: 4;
      -ms-grid-row-span: 2;
          grid-row-end: span 2; }
    .home .featured .intro.second-news {
      -ms-grid-column: 4;
          grid-column-start: 4;
      -ms-grid-column-span: 1;
          grid-column-end: span 1;
      -ms-grid-row: 4;
          grid-row-start: 4;
      -ms-grid-row-span: 2;
          grid-row-end: span 2;
      background-color: #fff; }
    .home .block.news-link {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      grid-area: nb; }
    .home .news {
      /* next sibling */ }
      .home .news > div:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 2;
        grid-area: nt1; }
      .home .news > div:nth-child(3) {
        -ms-grid-row: 2;
        -ms-grid-column: 2;
        grid-area: ni1; }
      .home .news > div:nth-child(4) {
        -ms-grid-row: 1;
        -ms-grid-column: 3;
        grid-area: nt2; }
      .home .news > div:nth-child(5) {
        -ms-grid-row: 2;
        -ms-grid-column: 3;
        grid-area: ni2; }
      .home .news > div:nth-child(6) {
        -ms-grid-row: 1;
        -ms-grid-column: 4;
        grid-area: nt3; }
      .home .news > div:nth-child(7) {
        -ms-grid-row: 2;
        -ms-grid-column: 4;
        grid-area: ni3; }
      .home .news .thumb.eventrow {
        -ms-grid-row: 3;
        -ms-grid-column: 2;
        grid-area: et1; }
      .home .news .intro.eventrow {
        -ms-grid-row: 4;
        -ms-grid-column: 2;
        grid-area: ei1; }
      .home .news .thumb.eventrow ~ .thumb.eventrow {
        -ms-grid-row: 3;
        -ms-grid-column: 3;
        grid-area: et2; }
      .home .news .intro.eventrow ~ .intro.eventrow {
        -ms-grid-row: 4;
        -ms-grid-column: 3;
        grid-area: ei2; }
      .home .news .block.program-overview {
        -ms-grid-row: 1;
        -ms-grid-column: 4;
        grid-area: pb; }
  /* IE fix */
  .no-cssgrid .home .news {
    position: relative; }
    .no-cssgrid .home .news .block.program-overview {
      position: absolute;
      bottom: 260px;
      right: 10px; }
  /* programmaoverzichtspagina */
  .page-template-program-page section.program {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
        grid-template-areas: "intro intro loc pb" "f1 f2 f3 rb";
    /* to remove unwanted children from the grid */ }
    .page-template-program-page section.program::before {
      position: absolute; }
    .page-template-program-page section.program > * {
      overflow: hidden; }
    .page-template-program-page section.program .intro {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      -ms-grid-column-span: 2;
      grid-area: intro; }
    .page-template-program-page section.program .locations {
      -ms-grid-row: 1;
      -ms-grid-column: 3;
      grid-area: loc; }
    .page-template-program-page section.program .block.program {
      -ms-grid-row: 1;
      -ms-grid-column: 4;
      grid-area: pb; }
    .page-template-program-page section.program .filter.cat {
      -ms-grid-row: 2;
      -ms-grid-column: 1;
      grid-area: f1; }
    .page-template-program-page section.program .filter.time {
      -ms-grid-row: 2;
      -ms-grid-column: 2;
      grid-area: f2; }
    .page-template-program-page section.program .filter.location {
      -ms-grid-row: 2;
      -ms-grid-column: 3;
      grid-area: f3; }
    .page-template-program-page section.program .reset {
      -ms-grid-row: 2;
      -ms-grid-column: 4;
      grid-area: rb; }
  .page-template-program-page section.program-results {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */ }
    .page-template-program-page section.program-results::before {
      position: absolute; }
    .page-template-program-page section.program-results > * {
      overflow: hidden; }
  /* fallback for IE */
  .no-cssgrid .page-template-program-page section.program-results {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .no-cssgrid .page-template-program-page section.program-results > div {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 180px;
              flex: 0 1 180px;
      margin: 0 20px 20px 0; }
    .no-cssgrid .page-template-program-page section.program-results > div:nth-child(4n+4) {
      margin-right: 0; }
  /* nieuws overzichtspagina */
  .cssgrid .page-template-news-page {
    /*programmablokje buiten het grid */ }
    .cssgrid .page-template-news-page .block.program-link {
      position: absolute;
      top: 0;
      right: 0; }
    .cssgrid .page-template-news-page .newsoverview {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr);
      grid-column-gap: 20px;
      grid-row-gap: 20px;
      grid-auto-rows: 220px;
      -ms-grid-column: auto;
          grid-column-start: auto;
      /* to remove unwanted children from the grid */
      grid-auto-flow: column;
      /* 1e nieuwsitem thumb */
      /* 1e nieuwsitem intro */
      /* 2e nieuwsitem thumb */
      /* 2e nieuwsitem intro */
      /* 3e nieuwsitem thumb */
      /* 3e nieuwsitem intro */
      /* 4e nieuwsitem thumb */
      /* 4e nieuwsitem intro */ }
      .cssgrid .page-template-news-page .newsoverview::before {
        position: absolute; }
      .cssgrid .page-template-news-page .newsoverview > * {
        overflow: hidden; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+1) {
        -ms-grid-column: 1;
        -ms-grid-column-span: 2;
        grid-column: 1 / span 2;
        grid-row: auto / span 2; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+2) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 2;
        grid-column: 3 / span 2;
        grid-row: auto / span 2;
        width: 220px;
        /* witruimte rechterkant */ }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+3) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-column: 2 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+4) {
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-column: 2 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+5) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        grid-column: 3 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+6) {
        -ms-grid-column: 3;
        -ms-grid-column-span: 1;
        grid-column: 3 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+7) {
        -ms-grid-column: 4;
        -ms-grid-column-span: 1;
        grid-column: 4 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+8) {
        -ms-grid-column: 4;
        -ms-grid-column-span: 1;
        grid-column: 4 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview .alm-btn-wrap {
        display: contents; }
      .cssgrid .page-template-news-page .newsoverview #ajax-load-more {
        -ms-grid-column: 1;
        -ms-grid-column-span: 4;
        grid-column: 1 / span 4;
        grid-row: auto;
        height: 40px; }
      .cssgrid .page-template-news-page .newsoverview #ajax-load-more.loaded {
        -ms-grid-column: 1;
        -ms-grid-column-span: 4;
        grid-column: 1 / span 4;
        grid-row: auto / span 8;
        width: 940px;
        height: auto; }
      .cssgrid .page-template-news-page .newsoverview .alm-listing {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: (220px)[4];
            grid-template-columns: repeat(4, 220px);
        grid-column-gap: 20px;
        grid-row-gap: 20px;
        grid-auto-rows: 220px;
        -ms-grid-column: auto;
            grid-column-start: auto;
        /* to remove unwanted children from the grid */
        grid-auto-flow: column;
        /* 1e nieuwsitem thumb */
        /* 1e nieuwsitem intro */
        /* 2e nieuwsitem thumb */
        /* 2e nieuwsitem intro */
        /* 3e nieuwsitem thumb */
        /* 3e nieuwsitem intro */
        /* 4e nieuwsitem thumb */
        /* 4e nieuwsitem intro */ }
        .cssgrid .page-template-news-page .newsoverview .alm-listing::before {
          position: absolute; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > * {
          overflow: hidden; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+1) {
          -ms-grid-column: 1;
          -ms-grid-column-span: 2;
          grid-column: 1 / span 2;
          grid-row: auto / span 2; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+2) {
          -ms-grid-column: 3;
          -ms-grid-column-span: 2;
          grid-column: 3 / span 2;
          grid-row: auto / span 2;
          width: 220px;
          /* witruimte rechterkant */ }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+3) {
          -ms-grid-column: 2;
          -ms-grid-column-span: 1;
          grid-column: 2 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+4) {
          -ms-grid-column: 2;
          -ms-grid-column-span: 1;
          grid-column: 2 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+5) {
          -ms-grid-column: 3;
          -ms-grid-column-span: 1;
          grid-column: 3 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+6) {
          -ms-grid-column: 3;
          -ms-grid-column-span: 1;
          grid-column: 3 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+7) {
          -ms-grid-column: 4;
          -ms-grid-column-span: 1;
          grid-column: 4 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+8) {
          -ms-grid-column: 4;
          -ms-grid-column-span: 1;
          grid-column: 4 / span 1;
          grid-row: auto / span 1; }
  /* fallback for IE */
  .no-cssgrid .page-template-news-page .mobile-info {
    display: block;
    float: right; }
  .no-cssgrid .page-template-news-page .hide-mobile {
    display: none; }
  .no-cssgrid .page-template-news-page .newsoverview {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: calc(4 * 460px);
    width: calc(100% - 220px); }
    .no-cssgrid .page-template-news-page .newsoverview > div {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 220px;
              flex: 0 1 220px;
      width: 220px;
      height: 220px; }
    .no-cssgrid .page-template-news-page .newsoverview .intro {
      margin-bottom: 20px; }
  /* zoekresultaten pagina */
  .cssgrid section.search-results {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */
    grid-auto-flow: column;
    /* alle items hetzelfde */ }
    .cssgrid section.search-results::before {
      position: absolute; }
    .cssgrid section.search-results > * {
      overflow: hidden; }
    .cssgrid section.search-results > div:nth-child(8n+1) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+2) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+3) {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+4) {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+5) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+6) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+7) {
      -ms-grid-column: 4;
      -ms-grid-column-span: 1;
      grid-column: 4 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+8) {
      -ms-grid-column: 4;
      -ms-grid-column-span: 1;
      grid-column: 4 / span 1;
      grid-row: auto / span 1; }
  /* fallback for IE */
  .no-cssgrid .search-results section.search-results {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: calc(2 * 460px);
    width: 100%; }
    .no-cssgrid .search-results section.search-results > div {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 220px;
              flex: 0 1 220px;
      width: 220px;
      height: 220px; }
    .no-cssgrid .search-results section.search-results .intro {
      margin-bottom: 20px; }
  /* nieuws detailpagina */
  .site-main section.newsdetail article {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: auto;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */ }
    .site-main section.newsdetail article::before {
      position: absolute; }
    .site-main section.newsdetail article > * {
      overflow: hidden; }
  .single article header {
    -ms-grid-column: 2;
        grid-column-start: 2;
    -ms-grid-column-span: 2;
        grid-column-end: span 2;
    -ms-grid-row: 1;
        grid-row-start: 1;
    -ms-grid-row-span: 1;
        grid-row-end: span 1; }
  .single article .entry-content {
    -ms-grid-column: 1;
        grid-column-start: 1;
    -ms-grid-column-span: 3;
        grid-column-end: span 3;
    -ms-grid-row: 2;
        grid-row-start: 2; }
  .single article .block.program-link {
    -ms-grid-row: 2;
        grid-row-start: 2;
    -ms-grid-row-span: 1;
        grid-row-end: span 1; }
  .single section.news {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
        grid-template-areas: "nb nt1 nt2 nt3" ".  ni1 ni2 ni3";
    /* to remove unwanted children from the grid */ }
    .single section.news::before {
      position: absolute; }
    .single section.news > * {
      overflow: hidden; }
    .single section.news .block.news-link {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      grid-area: nb; }
    .single section.news > div:nth-child(2) {
      -ms-grid-row: 1;
      -ms-grid-column: 2;
      grid-area: nt1; }
    .single section.news > div:nth-child(3) {
      -ms-grid-row: 2;
      -ms-grid-column: 2;
      grid-area: ni1; }
    .single section.news > div:nth-child(4) {
      -ms-grid-row: 1;
      -ms-grid-column: 3;
      grid-area: nt2; }
    .single section.news > div:nth-child(5) {
      -ms-grid-row: 2;
      -ms-grid-column: 3;
      grid-area: ni2; }
    .single section.news > div:nth-child(6) {
      -ms-grid-row: 1;
      -ms-grid-column: 4;
      grid-area: nt3; }
    .single section.news > div:nth-child(7) {
      -ms-grid-row: 2;
      -ms-grid-column: 4;
      grid-area: ni3; }
  /* programma detail pagina */
  .single-dgg_event article .block.event-metadata {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2 / span 1;
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    grid-column: 4 / span 1;
    overflow: visible; }
  /* IE fallback */
  .no-cssgrid .single-dgg_event article .block.event-metadata {
    margin-left: 20px; }
  /* standaard detailpagina */
  .site-main section.pagedetail article {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: auto;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */ }
    .site-main section.pagedetail article::before {
      position: absolute; }
    .site-main section.pagedetail article > * {
      overflow: hidden; }
  .page-template-default article header {
    -ms-grid-column: 2;
        grid-column-start: 2;
    -ms-grid-column-span: 2;
        grid-column-end: span 2;
    -ms-grid-row: 1;
        grid-row-start: 1;
    -ms-grid-row-span: 1;
        grid-row-end: span 1; }
  .page-template-default article .entry-content {
    -ms-grid-column: 1;
        grid-column-start: 1;
    -ms-grid-column-span: 3;
        grid-column-end: span 3;
    -ms-grid-row: 2;
        grid-row-start: 2; }
  .page-template-default article .block.program-link {
    -ms-grid-row: 2;
        grid-row-start: 2;
    -ms-grid-row-span: 1;
        grid-row-end: span 1; }
  /* partner pagina */
  .page-template-partner-page section.partneroverview {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    -ms-grid-column: auto;
        grid-column-start: auto;
    /* to remove unwanted children from the grid */
    grid-auto-flow: column; }
    .page-template-partner-page section.partneroverview::before {
      position: absolute; }
    .page-template-partner-page section.partneroverview > * {
      overflow: hidden; }
    .page-template-partner-page section.partneroverview .intro {
      -ms-grid-column: 2;
      -ms-grid-column-span: 2;
      grid-column: 2 / span 2;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      grid-row: 1 / span 1; }
    .page-template-partner-page section.partneroverview .block.program-link {
      -ms-grid-row: 1 / span 1;
          grid-row-start: 1 / span 1;
      -ms-grid-column: 4;
      -ms-grid-column-span: 1;
      grid-column: 4 / span 1; }
  .cssgrid .page-template-partner-page section.partners {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: auto;
    -ms-grid-column: auto;
        grid-column-start: auto;
    grid-auto-flow: column;
    /* to remove unwanted children from the grid */
    /* herhalend patroon van 12 onderdelen, 6 partner posts */
    /* 1e partner thumb, 2 kolommen breed */
    /* 1e partner intro */ }
    .cssgrid .page-template-partner-page section.partners::before {
      position: absolute; }
    .cssgrid .page-template-partner-page section.partners > * {
      overflow: hidden; }
    .cssgrid .page-template-partner-page section.partners .intro {
      height: 120px; }
    .cssgrid .page-template-partner-page section.partners > div {
      grid-row: auto / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+1) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 2;
      grid-column: 1 / span 2;
      margin-left: 240px; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+2) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 2;
      grid-column: 1 / span 2;
      margin-left: 240px; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+3) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+4) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+5) {
      -ms-grid-column: 4;
      -ms-grid-column-span: 1;
      grid-column: 4 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+6) {
      -ms-grid-column: 4;
      -ms-grid-column-span: 1;
      grid-column: 4 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+7) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+8) {
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+9) {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+10) {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+11) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+12) {
      -ms-grid-column: 3;
      -ms-grid-column-span: 1;
      grid-column: 3 / span 1; }
  /* IE fallback */
  .no-cssgrid .page-template-partner-page section.partners {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: 980px; }
    .no-cssgrid .page-template-partner-page section.partners > div {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 220px;
              flex: 0 1 220px;
      width: 220px; }
    .no-cssgrid .page-template-partner-page section.partners .thumb {
      height: 220px; }
    .no-cssgrid .page-template-partner-page section.partners .intro {
      height: 120px;
      max-height: 120px;
      margin-bottom: 20px; } }

/* gekleurde blokjes met korte info door de gehele site */
.block {
  height: 220px;
  width: 220px;
  position: relative;
  /* ivm gekleurde hoekblokjes */ }
  .block a {
    display: block;
    text-decoration: none; }
  .block div {
    font-family: Oswald;
    font-size: 1.5em; }

@media (max-width: 960px) {
  .block {
    height: 80px;
    width: calc(100% - 1px);
    margin: 10px 0; } }

/* IE fallback */
.no-cssgrid .single .block.program-link {
  margin-left: 20px; }

/* rood blokje bovenaan */
.block.program-link {
  background-color: #e30613;
  background-image: url(/wp-content/themes/dgg/img/logo-wit.svg);
  background-repeat: no-repeat;
  background-size: 76px 62px;
  background-position: 24px 26px; }
  .block.program-link a {
    padding: 1.5em; }
    .block.program-link a p {
      width: 95px;
      margin-left: 84px;
      margin-top: 10px;
      color: #fff;
      font-size: 0.875em;
      font-family: Montserrat;
      line-height: 1.29;
      text-transform: uppercase;
      letter-spacing: 0.6px; }
    .block.program-link a div {
      color: #fff;
      padding-top: 10px; }
  .block.program-link:after {
    content: '';
    width: 10px;
    height: 10px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0; }

@media (max-width: 960px) {
  .block.program-link {
    background-color: #47729C;
    background-image: url(/wp-content/themes/dgg/img/logo-wit-roodblokje.svg);
    background-size: 59px 50px;
    background-position: 24px 15px;
    margin-top: 20px; }
    .block.program-link a {
      padding: 0.9375em; }
      .block.program-link a p {
        margin-top: 0;
        width: 200px;
        padding-bottom: 0; }
      .block.program-link a div {
        padding-top: 0;
        padding-left: 83px;
        margin-top: -20px;
        font-size: 0.8125em;
        font-family: Montserrat;
        text-transform: uppercase; } }

/* op programmaoverzicht */
.block.program {
  background-color: #0f283a;
  background-image: url(/wp-content/themes/dgg/img/logo-wit-rood-blokje.svg);
  background-repeat: no-repeat;
  background-size: 76px 62px;
  background-position: 19px 26px; }
  .block.program p {
    width: 95px;
    margin-left: 110px;
    margin-top: 30px;
    color: #fff;
    font-size: 0.875em;
    font-family: Montserrat;
    line-height: 1.29;
    text-transform: uppercase;
    letter-spacing: 0.6px; }
  .block.program div {
    color: #fff;
    margin-top: 50px;
    margin-left: 20px;
    padding-top: 10px;
    font-size: 0.9375em;
    font-family: Montserrat;
    position: relative; }
    .block.program div:before {
      content: '';
      width: 40px;
      height: 2px;
      background-color: #fff;
      position: absolute;
      top: -10px;
      left: 0; }
  .block.program:after {
    content: '';
    width: 10px;
    height: 10px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0; }

@media (max-width: 960px) {
  .block.program {
    background-color: #47729C;
    background-image: url(/wp-content/themes/dgg/img/logo-wit-roodblokje.svg);
    background-size: 59px 50px;
    background-position: 24px 15px; }
    .block.program p {
      margin-top: 0;
      width: 210px;
      padding-bottom: 0;
      margin-left: 103px;
      padding-top: 11px;
      font-size: 0.8125em;
      font-weight: 600; }
    .block.program div {
      padding-top: 0;
      padding-left: 83px;
      margin-top: -10px;
      font-size: 0.8125em;
      font-family: Montserrat;
      text-transform: uppercase;
      font-weight: 600; }
      .block.program div .vanaftijd {
        display: none; }
      .block.program div:before {
        content: '';
        width: 20px;
        height: 1px;
        background-color: #fff;
        position: absolute;
        top: -5px;
        left: 82px; } }

.block.program-overview {
  background-color: #0f283a; }
  .block.program-overview a {
    padding: 1.25em; }
  .block.program-overview div {
    color: #fff;
    padding-top: 2.75em; }
  .block.program-overview:before {
    content: '';
    width: 10px;
    height: 10px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0; }

@media (max-width: 960px) {
  .block.program-overview div {
    padding-top: 0; } }

.block.news-link {
  background-color: #ffed00;
  color: #fff; }
  .block.news-link a {
    padding: 1.25em; }
  .block.news-link div {
    color: #000;
    padding-top: 2.75em; }
  .block.news-link:before {
    content: '';
    width: 10px;
    height: 10px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0; }

@media (max-width: 960px) {
  .block.news-link {
    margin: 10px 0; }
    .block.news-link div {
      padding-top: 0; } }

.block.news-more {
  background-color: #e30613;
  padding: 1.25em; }
  @media (max-width: 960px) {
    .block.news-more {
      margin-top: -10px;
      margin-bottom: 10px; } }
  .block.news-more div {
    color: #fff;
    padding-top: 2.75em; }
    @media (max-width: 960px) {
      .block.news-more div {
        padding-top: 0; } }
  .block.news-more:before {
    content: '';
    width: 10px;
    height: 10px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0; }

/* programma detail info op mobiel */
.single article .entry-content .mobile-info {
  position: relative;
  margin-top: 10px; }
  .single article .entry-content .mobile-info div {
    font-size: 1em;
    /* reset ivm andere divs in blocks */ }
  .single article .entry-content .mobile-info .info {
    padding: 0;
    overflow: visible; }
    .single article .entry-content .mobile-info .info:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      top: 0;
      left: 0; }
    .single article .entry-content .mobile-info .info p {
      color: #0f283a;
      font-family: 'Montserrat', sans-serif;
      font-size: 0.875em;
      letter-spacing: 0.7px;
      position: relative;
      padding-bottom: 5px;
      margin-bottom: 12px;
      padding-left: 20px; }
      .single article .entry-content .mobile-info .info p > span:first-of-type {
        text-transform: capitalize; }
    .single article .entry-content .mobile-info .info p:first-of-type {
      top: -5px;
      text-transform: capitalize; }
    .single article .entry-content .mobile-info .info p:not(:first-of-type):before {
      content: '';
      width: 40px;
      height: 2px;
      background-color: #0f283a;
      position: absolute;
      top: -10px;
      left: 20px; }
  .single article .entry-content .mobile-info a.aanmelden {
    display: block;
    margin: 10px 0 20px 0;
    height: 32px;
    max-width: 300px;
    padding: 5px 30px;
    position: relative;
    color: #0f283a;
    text-align: left;
    background-color: rgba(133, 181, 217, 0.4);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875em;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer; }
    .single article .entry-content .mobile-info a.aanmelden:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: white;
      position: absolute;
      top: 0;
      left: 0; }

/* programma detail pagina block metadata*/
.block.event-metadata {
  position: relative; }
  .block.event-metadata div {
    font-size: 1em;
    /* reset ivm andere divs in blocks */ }
  .block.event-metadata .info {
    height: auto;
    background-color: #0f283a;
    padding: 1.4375em 1.25em;
    margin-bottom: 20px; }
    .block.event-metadata .info:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: white;
      position: absolute;
      top: 0;
      left: 0; }
    .block.event-metadata .info p {
      color: #fff;
      font-family: 'Montserrat', sans-serif;
      font-size: 0.9375em;
      letter-spacing: 0.8px;
      position: relative;
      padding-bottom: .5em; }
      .block.event-metadata .info p > span:first-of-type {
        text-transform: capitalize; }
    .block.event-metadata .info p:first-of-type {
      margin-top: 0;
      text-transform: capitalize; }
    .block.event-metadata .info p:not(:first-of-type):before {
      content: '';
      width: 40px;
      height: 2px;
      background-color: #fff;
      position: absolute;
      top: -10px;
      left: 0; }
    .block.event-metadata .info p:last-of-type {
      margin-bottom: 0; }
  .block.event-metadata div.locatie_img {
    margin-bottom: 20px; }
  .block.event-metadata a.aanmelden {
    height: 40px;
    padding: 0.4375em 0.6875em;
    position: relative;
    color: #0f283a;
    text-align: center;
    background-color: #ffed00;
    font-family: 'Montserrat', sans-serif;
    font-size: 1em; }
    .block.event-metadata a.aanmelden:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: white;
      position: absolute;
      top: 0;
      left: 0; }

.tijden span,
.locaties span {
  display: block; }

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: .6em 1em .4em; }
  button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
    border-color: #ccc #bbb #aaa; }
  button:active, button:focus,
  input[type="button"]:active,
  input[type="button"]:focus,
  input[type="reset"]:active,
  input[type="reset"]:focus,
  input[type="submit"]:active,
  input[type="submit"]:focus {
    border-color: #aaa #bbb #bbb; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  input[type="number"]:focus,
  input[type="tel"]:focus,
  input[type="range"]:focus,
  input[type="date"]:focus,
  input[type="month"]:focus,
  input[type="week"]:focus,
  input[type="time"]:focus,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:focus,
  input[type="color"]:focus,
  textarea:focus {
    color: #111; }

select {
  border: 1px solid #ccc; }

textarea {
  width: 100%; }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: royalblue; }
  a:visited {
    color: purple; }
  a:hover, a:focus, a:active {
    color: midnightblue; }
  a:focus {
    outline: 2px solid #85b5d9;
    outline-offset: -2px; }
  a:hover, a:active {
    outline: 0; }

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  position: relative; }
  @media (min-width: 961px) {
    .main-navigation {
      width: calc(100% - 300px);
      float: left; } }
  .main-navigation ul {
    display: none;
    list-style: none;
    margin: 0;
    padding-left: 0;
    clear: both;
    /* IE11 with .no-focuswithin */ }
    .main-navigation ul li {
      float: left;
      position: relative;
      background: white;
      line-height: 3.5;
      padding: 0 15px; }
    .main-navigation ul ul {
      -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
              box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
      float: left;
      position: absolute;
      top: 100%;
      left: -999em;
      z-index: 99999; }
      .main-navigation ul ul ul {
        left: -999em;
        top: 0; }
      .main-navigation ul ul li {
        line-height: 1.5;
        padding-left: 25px; }
        @media (min-width: 961px) {
          .main-navigation ul ul li:before {
            content: '';
            width: 10px;
            height: 10px;
            background-color: #85b5d9;
            position: absolute;
            top: 12px;
            left: 15px; }
          .main-navigation ul ul li:hover:before {
            content: '';
            width: 10px;
            height: 10px;
            background-color: #e30613;
            position: absolute;
            top: 12px;
            left: 15px; } }
        .main-navigation ul ul li:hover > ul,
        .main-navigation ul ul li.focus > ul {
          left: 100%; }
      .main-navigation ul ul a {
        width: 200px; }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li.focus > ul,
    .main-navigation ul li:focus > ul,
    .main-navigation ul li:focus-within > ul {
      left: auto; }
  @media (min-width: 961px) {
    .main-navigation .menu > li:not(.menu-item-has-children):hover:before {
      content: '';
      width: 40px;
      height: 8px;
      background-color: #e30613;
      position: absolute;
      bottom: -5px;
      left: 23px; } }
  .main-navigation a {
    display: block;
    text-decoration: none;
    color: #0f283a;
    font-family: 'Montserrat', sans-serif;
    padding: .4em; }
  @media (min-width: 961px) {
    .main-navigation .menu > .current_page_item > a:before,
    .main-navigation .menu > .current-menu-item > a:before,
    .main-navigation .menu > .current_page_ancestor > a:before,
    .main-navigation .menu > .current-menu-ancestor > a:before {
      content: '';
      width: 40px;
      height: 8px;
      background-color: #e30613;
      position: absolute;
      bottom: -5px;
      left: 23px; } }

.no-focuswithin .main-navigation ul li:hover > ul,
.no-focuswithin .main-navigation ul li:focus > ul {
  left: auto; }

@media (min-width: 961px) {
  nav[role="search"] {
    width: 50px;
    float: right;
    display: block;
    text-align: right;
    /* search icon */ }
    nav[role="search"] button.search-toggle {
      background: transparent url(/wp-content/themes/dgg/img/loep.svg) center center no-repeat;
      background-size: 18px 18px;
      width: 18px;
      height: 75px;
      border: none;
      cursor: pointer; } }

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block; }

@media (max-width: 960px) {
  .site-header {
    position: relative; }
    .site-header .menu-toggle {
      position: absolute;
      top: 30px;
      right: 10px;
      background-size: 27px 18px;
      width: 27px;
      height: 18px; }
  .mobile-search-active .site-header .menu-toggle {
    background-image: url(/wp-content/themes/dgg/img/close-button.svg);
    background-size: 18px 18px; }
  .mobile-search-active .site-header nav[role="search"] {
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background-color: #3773a0;
    height: 40px; }
    .mobile-search-active .site-header nav[role="search"] .search-field {
      float: left;
      width: calc(100% - 40px);
      background-color: transparent;
      border: none;
      color: white;
      padding: 7px 40px 0px 40px; }
      .mobile-search-active .site-header nav[role="search"] .search-field::-webkit-input-placeholder, .mobile-search-active .site-header nav[role="search"] .search-field:placeholder-shown {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field:-ms-input-placeholder, .mobile-search-active .site-header nav[role="search"] .search-field:placeholder-shown {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field::-ms-input-placeholder, .mobile-search-active .site-header nav[role="search"] .search-field:placeholder-shown {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field::placeholder, .mobile-search-active .site-header nav[role="search"] .search-field:placeholder-shown {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
    .mobile-search-active .site-header nav[role="search"] .search-submit {
      width: 40px;
      height: 40px;
      cursor: pointer;
      float: right;
      background-color: transparent;
      background-image: url(/wp-content/themes/dgg/img/loep-wit.svg);
      background-size: 18px 18px;
      background-repeat: no-repeat;
      background-position: center center;
      border: none; } }

@media (max-width: 960px) {
  .main-navigation.toggled {
    margin-top: 45px;
    /* op mobiel lijkt alles op hetzelfde niveau te staan, class toevoegen in wp menu */ }
    .main-navigation.toggled li.menu-item-has-children > a {
      display: none;
      /* only show children */ }
      .main-navigation.toggled li.menu-item-has-children > a li {
        display: block; }
    .main-navigation.toggled ul {
      float: none;
      width: 100%; }
      .main-navigation.toggled ul ul.sub-menu {
        float: none;
        display: block;
        left: 0;
        position: relative; }
        .main-navigation.toggled ul ul.sub-menu li {
          display: block;
          padding: 0;
          margin: 0; }
      .main-navigation.toggled ul li {
        width: 100%;
        position: relative;
        line-height: 1.5;
        padding: 0; }
        .main-navigation.toggled ul li a {
          width: 100%;
          line-height: 1.75;
          padding: 5px 40px; }
    .main-navigation.toggled li.even {
      background-color: #DAE9F4; } }

/* visible on mobile and when search is active */
button.menu-toggle {
  background: transparent url(/wp-content/themes/dgg/img/menu-toggle.svg) center center no-repeat;
  background-size: 21px 14px;
  width: 21px;
  height: 14px;
  border: none;
  border-radius: 0;
  cursor: pointer; }

@media (min-width: 961px) {
  .menu-toggle {
    display: none; }
  .main-navigation ul {
    display: block; } }

@media (max-width: 960px) {
  /* on small screens by default only main nav toggle is visible */
  .search-toggle {
    display: none; }
  /* search activated together with the main nav */
  .mobile-search-active .search-field,
  .mobile-search-active .search-submit {
    display: block; } }

/* main navigation is also collapsed if search is active */
/* search submit button by default hidden */
.search-field, .search-submit {
  display: none; }

/* when search icon is clicked, search input and submit is visible */
#page.search-active {
  /* menu toggle icon */ }
  #page.search-active .menu-toggle,
  #page.search-active .search-field,
  #page.search-active .search-submit {
    display: block; }
  #page.search-active .main-navigation {
    margin-top: 25px; }
  #page.search-active .main-navigation ul,
  #page.search-active .search-toggle {
    display: none; }
  #page.search-active nav[role="search"] {
    width: 650px; }
  #page.search-active button.menu-toggle {
    float: left;
    margin-top: 34px;
    cursor: pointer; }
  #page.search-active .search-form {
    position: relative; }
    @media (min-width: 961px) {
      #page.search-active .search-form {
        width: 650px; }
        #page.search-active .search-form label input {
          display: inline-block;
          padding: 5px; }
          #page.search-active .search-form label input.search-field {
            display: block;
            width: 650px;
            height: 30px;
            padding: 5px 10px;
            float: right;
            border: none;
            background-color: rgba(133, 181, 217, 0.3); }
          #page.search-active .search-form label input::-webkit-input-placeholder, #page.search-active .search-form label input:placeholder-shown {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input:-ms-input-placeholder, #page.search-active .search-form label input:placeholder-shown {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input::-ms-input-placeholder, #page.search-active .search-form label input:placeholder-shown {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input::placeholder, #page.search-active .search-form label input:placeholder-shown {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
        #page.search-active .search-form input.search-submit {
          background: transparent url(/wp-content/themes/dgg/img/loep.svg) center center no-repeat;
          width: 18px;
          height: 18px;
          background-size: 18px 18px;
          border: none;
          position: absolute;
          top: 5px;
          right: 5px; } }

/* when on the search results page, elements not visible anymore in the header, only the page content */
body.search .page-content .search-field,
body.search .page-content .search-submit {
  display: block; }

.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden; }

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%; }

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%; }

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }
  .screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
            box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    -webkit-clip-path: none;
            clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */ }

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0; }

.skip-link:focus {
  font-family: Roboto;
  font-size: 1em;
  color: #0f283a;
  display: block;
  background-color: white;
  outline: 2px solid #0f283a;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: none;
  padding: .5em;
  margin: 1em;
  position: relative; }

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto; }

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed; }

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both; }

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */ }
  .widget select {
    max-width: 100%; }

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block; }

.hentry {
  margin: 0 0 1.5em; }

.updated:not(.published) {
  display: none; }

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0; }

.page-links {
  clear: both;
  margin: 0 0 1.5em; }

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word; }

.bypostauthor {
  display: block; }

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none; }

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block; }

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%; }

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block; }

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }
  .wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .wp-caption .wp-caption-text {
    margin: 0.8075em 0; }

.wp-caption-text {
  text-align: center; }

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em; }

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%; }
  .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%; }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }

.gallery-caption {
  display: block; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwidmFyaWFibGVzLXNpdGUvX3ZhcmlhYmxlcy1zaXRlLnNjc3MiLCJ2YXJpYWJsZXMtc2l0ZS9fY29sb3JzLnNjc3MiLCJ2YXJpYWJsZXMtc2l0ZS9fdHlwb2dyYXBoeS5zY3NzIiwidmFyaWFibGVzLXNpdGUvX3N0cnVjdHVyZS5zY3NzIiwidmFyaWFibGVzLXNpdGUvX2NvbHVtbnMuc2NzcyIsIm1peGlucy9fbWl4aW5zLW1hc3Rlci5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwidHlwb2dyYXBoeS9fdHlwb2dyYXBoeS5zY3NzIiwidHlwb2dyYXBoeS9faGVhZGluZ3Muc2NzcyIsInR5cG9ncmFwaHkvX2NvcHkuc2NzcyIsImVsZW1lbnRzL19lbGVtZW50cy5zY3NzIiwiZWxlbWVudHMvX2xpc3RzLnNjc3MiLCJlbGVtZW50cy9fdGFibGVzLnNjc3MiLCJlbGVtZW50cy9faG9tZS5zY3NzIiwiZWxlbWVudHMvX2dyaWRibG9ja3Muc2NzcyIsImVsZW1lbnRzL19yZXBlYXRpbmdibG9ja3Muc2NzcyIsImZvcm1zL19mb3Jtcy5zY3NzIiwiZm9ybXMvX2J1dHRvbnMuc2NzcyIsImZvcm1zL19maWVsZHMuc2NzcyIsIm5hdmlnYXRpb24vX25hdmlnYXRpb24uc2NzcyIsIm5hdmlnYXRpb24vX2xpbmtzLnNjc3MiLCJuYXZpZ2F0aW9uL19tZW51cy5zY3NzIiwibW9kdWxlcy9fYWNjZXNzaWJpbGl0eS5zY3NzIiwibW9kdWxlcy9fYWxpZ25tZW50cy5zY3NzIiwibW9kdWxlcy9fY2xlYXJpbmdzLnNjc3MiLCJzaXRlL3NlY29uZGFyeS9fd2lkZ2V0cy5zY3NzIiwic2l0ZS9fc2l0ZS5zY3NzIiwic2l0ZS9wcmltYXJ5L19wb3N0cy1hbmQtcGFnZXMuc2NzcyIsInNpdGUvcHJpbWFyeS9fY29tbWVudHMuc2NzcyIsIm1vZHVsZXMvX2luZmluaXRlLXNjcm9sbC5zY3NzIiwibWVkaWEvX21lZGlhLnNjc3MiLCJtZWRpYS9fY2FwdGlvbnMuc2NzcyIsIm1lZGlhL19nYWxsZXJpZXMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcblRoZW1lIE5hbWU6IERHR1xuVGhlbWUgVVJJOiBodHRwOi8vdW5kZXJzY29yZXMubWUvXG5BdXRob3I6IEphbml0YSBUb3BcbkF1dGhvciBVUkk6IGh0dHA6Ly9qYW5pdGF0b3AubmxcbkRlc2NyaXB0aW9uOiBEZXNjcmlwdGlvblxuVmVyc2lvbjogMS4wLjBcbkxpY2Vuc2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYyIG9yIGxhdGVyXG5MaWNlbnNlIFVSSTogTElDRU5TRVxuVGV4dCBEb21haW46IGRnZ1xuVGFnczogY3VzdG9tLWJhY2tncm91bmQsIGN1c3RvbS1sb2dvLCBjdXN0b20tbWVudSwgZmVhdHVyZWQtaW1hZ2VzLCB0aHJlYWRlZC1jb21tZW50cywgdHJhbnNsYXRpb24tcmVhZHlcblxuVGhpcyB0aGVtZSwgbGlrZSBXb3JkUHJlc3MsIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEwuXG5Vc2UgaXQgdG8gbWFrZSBzb21ldGhpbmcgY29vbCwgaGF2ZSBmdW4sIGFuZCBzaGFyZSB3aGF0IHlvdSd2ZSBsZWFybmVkIHdpdGggb3RoZXJzLlxuXG5ER0cgaXMgYmFzZWQgb24gVW5kZXJzY29yZXMgaHR0cHM6Ly91bmRlcnNjb3Jlcy5tZS8sIChDKSAyMDEyLTIwMTcgQXV0b21hdHRpYywgSW5jLlxuVW5kZXJzY29yZXMgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR1BMIHYyIG9yIGxhdGVyLlxuXG5Ob3JtYWxpemluZyBzdHlsZXMgaGF2ZSBiZWVuIGhlbHBlZCBhbG9uZyB0aGFua3MgdG8gdGhlIGZpbmUgd29yayBvZlxuTmljb2xhcyBHYWxsYWdoZXIgYW5kIEpvbmF0aGFuIE5lYWwgaHR0cHM6Ly9uZWNvbGFzLmdpdGh1Yi5pby9ub3JtYWxpemUuY3NzL1xuKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IFRBQkxFIE9GIENPTlRFTlRTOlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOb3JtYWxpemVcbiMgVHlwb2dyYXBoeVxuIyBFbGVtZW50c1xuIyBGb3Jtc1xuIyBOYXZpZ2F0aW9uXG5cdCMjIExpbmtzXG5cdCMjIE1lbnVzXG4jIEFjY2Vzc2liaWxpdHlcbiMgQWxpZ25tZW50c1xuIyBDbGVhcmluZ3NcbiMgV2lkZ2V0c1xuIyBDb250ZW50XG5cdCMjIFBvc3RzIGFuZCBwYWdlc1xuXHQjIyBDb21tZW50c1xuIyBJbmZpbml0ZSBzY3JvbGxcbiMgTWVkaWFcblx0IyMgQ2FwdGlvbnNcblx0IyMgR2FsbGVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwidmFyaWFibGVzLXNpdGUvdmFyaWFibGVzLXNpdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbWl4aW5zLW1hc3RlclwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5L3R5cG9ncmFwaHlcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImVsZW1lbnRzL2VsZW1lbnRzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvaG9tZVwiO1xuQGltcG9ydCBcImVsZW1lbnRzL2dyaWRibG9ja3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9yZXBlYXRpbmdibG9ja3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBGb3Jtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImZvcm1zL2Zvcm1zXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm5hdmlnYXRpb24vbmF2aWdhdGlvblwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEFjY2Vzc2liaWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtb2R1bGVzL2FjY2Vzc2liaWxpdHlcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBBbGlnbm1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9hbGlnbm1lbnRzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQ2xlYXJpbmdzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9jbGVhcmluZ3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2l0ZS9zZWNvbmRhcnkvd2lkZ2V0c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJzaXRlL3NpdGVcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBJbmZpbml0ZSBzY3JvbGxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtb2R1bGVzL2luZmluaXRlLXNjcm9sbFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE1lZGlhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibWVkaWEvbWVkaWFcIjtcbiIsIkBpbXBvcnQgXCJjb2xvcnNcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwic3RydWN0dXJlXCI7XG5AaW1wb3J0IFwiY29sdW1uc1wiO1xuIiwiJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk6ICNmZmY7XG4kY29sb3JfX2JhY2tncm91bmQtc2NyZWVuOiAjZjFmMWYxO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWhyOiAjY2NjO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjogI2U2ZTZlNjtcbiRjb2xvcl9fYmFja2dyb3VuZC1wcmU6ICNlZWU7XG4kY29sb3JfX2JhY2tncm91bmQtaW5zOiAjZmZmOWMwO1xuXG4kY29sb3JfX3RleHQtc2NyZWVuOiAjMjE3NTliO1xuJGNvbG9yX190ZXh0LWlucHV0OiAjNjY2O1xuJGNvbG9yX190ZXh0LWlucHV0LWZvY3VzOiAjMTExO1xuJGNvbG9yX19saW5rOiByb3lhbGJsdWU7XG4kY29sb3JfX2xpbmstdmlzaXRlZDogcHVycGxlO1xuJGNvbG9yX19saW5rLWhvdmVyOiBtaWRuaWdodGJsdWU7XG4kY29sb3JfX3RleHQtbWFpbjogIzQwNDA0MDtcblxuJGNvbG9yX19ib3JkZXItYnV0dG9uOiAjY2NjICNjY2MgI2JiYjtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1ob3ZlcjogI2NjYyAjYmJiICNhYWE7XG4kY29sb3JfX2JvcmRlci1idXR0b24tZm9jdXM6ICNhYWEgI2JiYiAjYmJiO1xuJGNvbG9yX19ib3JkZXItaW5wdXQ6ICNjY2M7XG4kY29sb3JfX2JvcmRlci1hYmJyOiAjNjY2O1xuXG4kZG9ua2VyYmxhdXc6ICMwZjI4M2E7IC8qIGhvb2ZkbWVudSBlbiBoMSwgbG9jYXRpZSBwYXJrZWVyZGVrICovXG4kbGljaHRibGF1dzogIzg1YjVkOTsgLyogbG9jYXRpZSB6dWlkZXJoYXZlbiAqL1xuJHJvb2Q6ICNlMzA2MTM7IC8qIGxvY2F0aWUgY2FzY2FkZXBsZWluIDQgKi9cbiRnZWVsOiAjZmZlZDAwOyAvKiBsb2NhdGllIGNhc2NhZGVwbGVpbiA5ICovXG4kbGljaHRncmlqczojZjlmOWY5O1xuXG5cbiRtb2JpbGVibHVlOiM0NzcyOUM7XG5cbiIsIiRmb250X19tYWluOiBzYW5zLXNlcmlmO1xuJGZvbnRfX2NvZGU6IE1vbmFjbywgQ29uc29sYXMsIFwiQW5kYWxlIE1vbm9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIG1vbm9zcGFjZTtcbiRmb250X19wcmU6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kZm9udF9fbGluZS1oZWlnaHQtYm9keTogMS41O1xuJGZvbnRfX2xpbmUtaGVpZ2h0LXByZTogMS42O1xuXG4vKlxuXG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblxuICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgc2Fucy1zZXJpZjtcbiAgICBcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cbiovXG4iLCIkc2l6ZV9fc2l0ZS1tYWluOiAxMDAlO1xuJHNpemVfX3NpdGUtc2lkZWJhcjogMjUlO1xuIiwiJGNvbHVtbnM6IChcblx0MTogMTAwJSxcblx0MjogNTAlLFxuXHQzOiAzMy4zMyUsXG5cdDQ6IDI1JSxcblx0NTogMjAlLFxuXHQ2OiAxNi42NiUsXG5cdDc6IDE0LjI4JSxcblx0ODogMTIuNSUsXG5cdDk6IDExLjExJVxuKTtcblxuJGNvbHVtbnNfX21hcmdpbjogMy44JTtcbiIsIi8vIFJlbSBvdXRwdXQgd2l0aCBweCBmYWxsYmFja1xuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZVZhbHVlOiAxKSB7XG5cdGZvbnQtc2l6ZTogKCRzaXplVmFsdWUgKiAxNikgKiAxcHg7XG5cdGZvbnQtc2l6ZTogJHNpemVWYWx1ZSAqIDFyZW07XG59XG5cbi8vIENlbnRlciBibG9ja1xuQG1peGluIGNlbnRlci1ibG9jayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBDbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0dGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLy8gQ2xlYXIgYWZ0ZXIgKG5vdCBhbGwgY2xlYXJmaXggbmVlZCB0aGlzIGFsc28pXG5AbWl4aW4gY2xlYXJmaXgtYWZ0ZXIoKSB7XG5cdGNsZWFyOiBib3RoO1xufVxuXG4vLyBDb2x1bW4gd2lkdGggd2l0aCBtYXJnaW5cbkBtaXhpbiBjb2x1bW4td2lkdGgoJG51bWJlckNvbHVtbnM6IDMpIHtcblx0d2lkdGg6IG1hcC1nZXQoICRjb2x1bW5zLCAkbnVtYmVyQ29sdW1ucyApIC0gKCAoICRjb2x1bW5zX19tYXJnaW4gKiAoICRudW1iZXJDb2x1bW5zIC0gMSApICkgLyAkbnVtYmVyQ29sdW1ucyApO1xufVxuXG4vKkZ1bmN0aW9uIHRvIGNhbGN1bGF0ZSBlbSBmcm9tIHB4ICwgdXNlIGxpa2UgZm9udC1zaXplOiBlbSgxNCkqL1xuJGJyb3dzZXItY29udGV4dDogMTY7IC8vIERlZmF1bHRcblxuQGZ1bmN0aW9uIGVtKCRwaXhlbHMsICRjb250ZXh0OiAkYnJvd3Nlci1jb250ZXh0KSB7XG4gIEByZXR1cm4gI3skcGl4ZWxzLyRjb250ZXh0fWVtO1xufVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuQG1peGluIHNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdGJvcmRlcjogMDtcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuXHRjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHR3aWR0aDogMXB4O1xuXHR3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50OyAvKiBNYW55IHNjcmVlbiByZWFkZXIgYW5kIGJyb3dzZXIgY29tYmluYXRpb25zIGFubm91bmNlIGJyb2tlbiB3b3JkcyBhcyB0aGV5IHdvdWxkIGFwcGVhciB2aXN1YWxseS4gKi9cblxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtc2NyZWVuO1xuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdFx0Y2xpcDogYXV0byAhaW1wb3J0YW50O1xuXHRcdGNsaXAtcGF0aDogbm9uZTtcblx0XHRjb2xvcjogJGNvbG9yX190ZXh0LXNjcmVlbjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMC44NzUpO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRsZWZ0OiA1cHg7XG5cdFx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0XHRwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0ei1pbmRleDogMTAwMDAwOyAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xuXHR9XG59XG5cbi8qIHVuZGVyc2NvcmVzIGJyZWFrcG9pbnQgaXMgYXQgNjAwcHggLzM3LjUgZW0gKi9cblxuQG1peGluIGJwKCRwb2ludCkge1xuICBAaWYgJHBvaW50ID09IG1vYmlsZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk2MHB4KSB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3Age1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5NjFweCkgeyBAY29udGVudDsgfVxuICB9XG4gICBAZWxzZSBpZiAkcG9pbnQgPT0gYmlnZGVza3RvcCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEzODBweCkgeyBAY29udGVudDsgfVxuICB9XG59XG5cbi8qIGNoZWNrYm94IHJlY3RhbmdsZSAqL1xuQG1peGluIGNoZWNrYm94LXJlY3RhbmdsZSB7XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoxOHB4O1xuXHRoZWlnaHQ6IDE4cHg7XHRcdFxuXHRib3JkZXI6MXB4IHNvbGlkICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDNweDtcblx0bGVmdDogMDtcdFxufVxuQG1peGluIGNoZWNrYm94LXJlY3RhbmdsZS1hZnRlcigkY29sb3IpIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjIwcHg7XG5cdGhlaWdodDoyMHB4O1x0XHRcblx0YmFja2dyb3VuZDokY29sb3I7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAzcHg7XG5cdHJpZ2h0OiAwO1x0XG59XG5cbi8qIHRvIGluY2x1ZGUgY29sb3JlZCBjb3JuZXIgKi9cbkBtaXhpbiBjb2xvcmVkLWNvcm5lciAoJGNvbG9yKSB7XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoyMHB4O1xuXHRoZWlnaHQ6IDIwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OiAwO1x0XG59XG4vKiBtb2JpbGUgKi9cbkBtaXhpbiBjb2xvcmVkLWNvcm5lci1zbWFsbCAoJGNvbG9yKSB7XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoxMHB4O1xuXHRoZWlnaHQ6IDEwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OjA7XG59XG5cbi8qIGZvb3RlciBzcXVhcmUgKi9cbkBtaXhpbiBmb290ZXItd2hpdGUtc3F1YXJlIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjYwcHg7XG5cdGhlaWdodDogNjBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtNjBweDtcblx0bGVmdDogMjUwcHg7XHRcbn1cbkBtaXhpbiBmb290ZXItd2hpdGUtc3F1YXJlLXNtYWxsIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMjBweDtcblx0bGVmdDogMTBweDtcdFxufVxuXG4vKiB0byBpbmNsdWRlIGNvbG9yZWQgdG9wIGxlZnQgY29ybmVyICovXG5AbWl4aW4gdG9wLWxlZnQtY29ybmVyICgkY29sb3IpIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjEwcHg7XG5cdGhlaWdodDoxMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1x0XG59XG4vKiB0byBpbmNsdWRlIGJsdWUgbGVmdCBidWxsZXQgYmxvY2sgKi9cbkBtaXhpbiBidWxsZXQtYmxvY2sgKCRjb2xvcikge1xuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MTBweDtcblx0aGVpZ2h0OjEwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDEycHg7XG5cdGxlZnQ6IDE1cHg7XHRcbn1cblxuLyogdG8gaW5jbHVkZSBib3R0b20gYm9yZGVyICovXG5AbWl4aW4gYm90dG9tLWJvcmRlciB7XHRcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjEwMCU7XHRcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XHRcbn1cblxuLyogYm9yZGVyIG1ldCBnZWtsZXVyZCBibG9ramUgKi9cbkBtaXhpbiBib3R0b20tYm9yZGVyLWJsb2NrIHtcblx0d2lkdGg6Y2FsYygxMDAlIC0gMzBweCk7XHRcblx0Y29udGVudDogJyc7XG5cdGhlaWdodDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1x0XG59XG5cbi8qIGJvcmRlciBtZXQgc29jaWFsIG1lZGlhIGljb25zICovXG5AbWl4aW4gYm90dG9tLWJvcmRlci1ibG9jay1sb25nIHtcblx0d2lkdGg6Y2FsYygxMDAlIC0gMTAwcHgpO1xuXHRjb250ZW50OiAnJztcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XHRcbn1cblxuLyogYm9yZGVyIG1ldCBwYWRkaW5nICovXG5AbWl4aW4gYm90dG9tLWJvcmRlci1wYWRkaW5nIHtcblx0d2lkdGg6Y2FsYygxMDAlIC0gMjBweCk7XG5cdGNvbnRlbnQ6ICcnO1xuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMjBweDtcdFxufVxuQG1peGluIGJvdHRvbS1ib3JkZXItcGFkZGluZy1zb2NpYWwge1xuXHR3aWR0aDozNjBweDtcblx0Y29udGVudDogJyc7XG5cdGhlaWdodDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAyNDBweDtcdFxufVxuQG1peGluIGJvdHRvbS1ib3JkZXItcGFkZGluZy10aW1le1xuXHR3aWR0aDpjYWxjKDEwMCUgLSAxMTBweCk7XG5cdGNvbnRlbnQ6ICcnO1xuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogN3B4O1xuXHRsZWZ0OiAxMTBweDtcdFxufVxuXG4vKiB0byBpbmNsdWRlIGJvdHRvbSBzaG9ydCB3aGl0ZSBib3JkZXIgKi9cbkBtaXhpbiBib3R0b20tYm9yZGVyLXNtYWxsIHtcdFxuXHRjb250ZW50OiAnJztcblx0d2lkdGg6NDBweDtcblx0aGVpZ2h0OiAycHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMTBweDtcblx0bGVmdDogMDtcdFxufVxuLyogdG8gaW5jbHVkZSBib3R0b20gc2hvcnQgd2hpdGUgYm9yZGVyIG9uIG1vYmlsZSAqL1xuQG1peGluIGJvdHRvbS1ib3JkZXItbW9iaWxlIHtcdFxuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MjBweDtcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtNXB4O1xuXHRsZWZ0OiA4MnB4O1x0XG59XG4vKiBibHVlIHNtYWxsIGJvcmRlciBpbiBldmVudCBkZXRhaWwgaW5mbyAqL1xuQG1peGluIGJvdHRvbS1ib3JkZXItc21hbGwtYmx1ZSB7XHRcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjQwcHg7XG5cdGhlaWdodDogMnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMTBweDtcblx0bGVmdDogMjBweDtcdFxufVxuLyogdG8gaW5jbHVkZSBib3R0b20gc2hvcnQgcmVkIGJvcmRlciBpbiBtYWluIG1lbnUgKi9cbkBtaXhpbiBtZW51LWJvdHRvbS1ib3JkZXItc21hbGwge1x0XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDo0MHB4O1xuXHRoZWlnaHQ6IDhweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJHJvb2Q7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAtNXB4O1xuXHRsZWZ0OiAyM3B4O1x0XG59XG4vKiB0byBpbmNsdWRlIHRvcCBjb2xvcmVkIGxvY2F0aW9uIGJvcmRlciAqL1xuQG1peGluIHRvcC1ib3JkZXItc21hbGwoJGNvbG9yKXtcdFxuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MjBweDtcblx0aGVpZ2h0OiAycHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC01cHg7XG5cdGxlZnQ6IDA7XHRcbn1cblxuLyogcmVzZXQgc3R5bGVzIGZvciBncmlkIGFyZWFzICovXG5AbWl4aW4gZ3JpZC1yZXNldHtcblx0XG5cdC8qIHRvIHJlbW92ZSB1bndhbnRlZCBjaGlsZHJlbiBmcm9tIHRoZSBncmlkICovXG4gIFx0Jjo6YmVmb3Jle1xuICBcdFx0cG9zaXRpb246YWJzb2x1dGU7XG4gIFx0fVxuXG4gIFx0PiAqIHtcbiAgXHRcdG92ZXJmbG93OmhpZGRlbjsgXHRcbiAgXHR9XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuXHRtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG5cdGZvbnQtc2l6ZTogMmVtO1xuXHRtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG5cdGhlaWdodDogMDsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcblx0Zm9udC1zaXplOiA3NSU7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcblx0cGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKlx0XHRgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG5cdGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAzICovXG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cblx0b3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cblx0Zm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4iLCJib2R5LFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRmb250LWZhbWlseTogJGZvbnRfX21haW47XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxKTtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1ib2R5O1xufVxuXG5AaW1wb3J0IFwiaGVhZGluZ3NcIjtcblxuQGltcG9ydCBcImNvcHlcIjtcbiIsImgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRjbGVhcjogYm90aDtcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFxuXHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5oMXtcdFxuXHRmb250LXNpemU6IGVtKDI2KTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuOXB4O1x0XG5cdG1hcmdpbjowO1xufVxuXG5oMntcblx0Zm9udC1zaXplOiBlbSgyMCk7XG59XG5cbmZvb3RlciBoMyB7XG5cdGZvbnQtZmFtaWx5OiBPc3dhbGQsIHNhbnMtc2VyaWY7XG59IiwicCB7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXHRmb250LWZhbWlseTogUm9ib3RvO1xuXHRmb250LXNpemU6IGVtKDE0KTtcdFxuXHRjb2xvcjojMjMyMzIzO1xuXHR3b3JkLWJyZWFrOiBub3JtYWw7XG5cdGh5cGhlbnM6YXV0bztcbn1cblxuQGluY2x1ZGUgYnAobW9iaWxlKXtcblx0cHtcblx0XHRmb250LXNpemU6IGVtKDEzKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0fVxufVxuXG4uZW50cnktY29udGVudCB7XHRcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNDBweDsgLyogc29jaWFsIHNoYXJlIGJ1dHRvbnMgKi9cblxuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICBcdHdvcmQtd3JhcDogYnJlYWstd29yZDsgIFx0XG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdGh5cGhlbnM6IGF1dG87XG5cblx0b2wsIHVse1xuXHRcdG1hcmdpbi1sZWZ0OiAuOGVtO1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0fVxuXG5cdG9sIGxpLCB1bCBsaSB7XG5cdFx0Zm9udC1zaXplOiBlbSgxNCk7XHRcdFxuXHR9XG5cblx0YSwgbGkgYXtcblx0XHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXG5cdFx0Jjp2aXNpdGVke1xuXHRcdFx0Y29sb3I6IzQ3NzI5Qztcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XHQmOmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1wYWRkaW5nLXNvY2lhbDtcdFxuXHRcdH1cblx0fVxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1x0XHRcblx0XHQmOmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1ibG9jay1sb25nO1x0XG5cdFx0fVxuXHR9XG5cblx0LndwLWNhcHRpb24tdGV4dCxcblx0LmZlYXR1cmVkLWltYWdlLWNhcHRpb257XG5cdFx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1x0XHRcdFxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHRcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxMyk7XG5cdFx0fVx0XHRcblx0fVxufVxuXG5cbmRmbiwgY2l0ZSwgZW0sIGkge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRtYXJnaW46IDAgMS41ZW07XG59XG5cbmFkZHJlc3Mge1xuXHRtYXJnaW46IDAgMCAxLjVlbTtcbn1cblxucHJlIHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLXByZTtcblx0Zm9udC1mYW1pbHk6ICRmb250X19wcmU7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjkzNzUpO1xuXHRsaW5lLWhlaWdodDogJGZvbnRfX2xpbmUtaGVpZ2h0LXByZTtcblx0bWFyZ2luLWJvdHRvbTogMS42ZW07XG5cdG1heC13aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdHBhZGRpbmc6IDEuNmVtO1xufVxuXG5jb2RlLCBrYmQsIHR0LCB2YXIge1xuXHRmb250LWZhbWlseTogJGZvbnRfX2NvZGU7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjkzNzUpO1xufVxuXG5hYmJyLCBhY3JvbnltIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkY29sb3JfX2JvcmRlci1hYmJyO1xuXHRjdXJzb3I6IGhlbHA7XG59XG5cbm1hcmssIGlucyB7XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1pbnM7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYmlnIHtcblx0Zm9udC1zaXplOiAxMjUlO1xufVxuIiwiaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIgeyAvKiBJbmhlcml0IGJveC1zaXppbmcgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY2hhbmdlIHRoZSBwcm9wZXJ0eSBmb3IgY29tcG9uZW50cyB0aGF0IGxldmVyYWdlIG90aGVyIGJlaGF2aW9yOyBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTsgLyogRmFsbGJhY2sgZm9yIHdoZW4gdGhlcmUgaXMgbm8gY3VzdG9tIGJhY2tncm91bmQgY29sb3IgZGVmaW5lZC4gKi9cbn1cblxuaHIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtaHI7XG5cdGJvcmRlcjogMDtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG5AaW1wb3J0IFwibGlzdHNcIjtcblxuaW1nIHtcblx0aGVpZ2h0OiBhdXRvOyAvKiBNYWtlIHN1cmUgaW1hZ2VzIGFyZSBzY2FsZWQgY29ycmVjdGx5LiAqL1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIEFkaGVyZSB0byBjb250YWluZXIgd2lkdGguICovXG59XG5cbmZpZ3VyZSB7XG5cdG1hcmdpbjogMWVtIDA7IC8qIEV4dHJhIHdpZGUgaW1hZ2VzIHdpdGhpbiBmaWd1cmUgdGFncyBkb24ndCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhLiAqL1xufVxuXG5AaW1wb3J0IFwidGFibGVzXCI7XG5cblxuLm1vYmlsZS1pbmZve1xuXHRkaXNwbGF5OiBub25lO1xuXHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdH1cbn1cbi5oaWRlLW1vYmlsZXtcblx0ZGlzcGxheTogYmxvY2s7XG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi5zaXRlLCAuc2l0ZS1mb290ZXJ7XG5cdG1heC13aWR0aDogMTQ0MHB4O1xuXHRtYXJnaW46IDAgYXV0bztcdFx0XG59XG5cbi5zaXRlLW1haW57XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNpdGUtaGVhZGVye1x0XG5cdHBvc2l0aW9uOiBmaXhlZDtcdFxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0ei1pbmRleDogMTtcblx0dG9wOjA7XHRcdFxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0Ym94LXNoYWRvdzogMCAtMXB4IDEwcHggIzk2OTE5Nztcblx0fVxuXG5cdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1x0XG5cdFx0d2lkdGg6IDk0MnB4OyAvKiB2b29yIEZGIDk0MCBiZXRlciAqL1xuXHRcdGxlZnQ6Y2FsYyggKDEwMHZ3IC0gOTU4cHgpIC8gMiApO1x0Lyogdm9vciBGRiA5NDAgYmV0ZXIgKi9cblx0XHRoZWlnaHQ6IDc1cHg7XHRcblx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCBibGFjaztcdFxuXHR9XG5cblx0QGluY2x1ZGUgYnAoYmlnZGVza3RvcCl7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMTkwcHg7IC8qIHZhbndlZ2UgYm9yZGVyIGRpZSBkb29ybG9vcHQgKi9cblx0XHRwYWRkaW5nLXJpZ2h0OiAyNTBweDtcdFx0XHRcblx0fVx0XG59XG5cbi5zaXRlLWNvbnRlbnR7XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcdFxuXHRcdHBhZGRpbmc6MTBweDtcdFxuXHR9XG5cblx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdFx0bWF4LXdpZHRoOiA5NDBweDtcblx0XHRtYXJnaW46IDAgYXV0bztcdFxuXHRcdHBhZGRpbmc6MTAwcHggMDtcblx0fVxuXHRcbn1cblxuLnNpdGUtYnJhbmRpbmd7XG5cdFxuXG5cdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXHRcdHdpZHRoOiAyNTBweDtcdFxuXHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0LnNpdGUtdGl0bGV7XG5cdFx0XHRoZWlnaHQ6IDc1cHg7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XHRcdFxuXG5cdFx0LnNpdGUtdGl0bGV7XG5cdFx0XHRoZWlnaHQ6IDYwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnNpdGUtdGl0bGV7XG5cdFx0bWFyZ2luOjZweCAwIDAgMDsgXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XHRcblxuXHRcdGF7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcdFx0XHRcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvbG9nby1kZXYuc3ZnKSAwIDAgbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNzlweCA2MnB4O1x0XG5cdFx0XHRoZWlnaHQ6IDYycHg7XG5cdFx0XHR3aWR0aDogMTc5cHg7XHRcblx0XHRcdHRleHQtaW5kZW50OiAxMDAlO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHRcblx0XHR9XHRcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRhIHtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBhdXRvIDUwcHg7XHRcblx0XHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0XHR3aWR0aDogMjAwcHg7XHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XHRcblx0fVx0XG59XG5cblxuXG4vKiBpbnRyb3Rla3N0amVzIGFsZ2VtZWVuICovXG5cbi5pbnRybyB7XG5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcblx0YXtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHQmOmZvY3VzOndpdGhpbntcblx0XHRcdG91dGxpbmU6IDFweCBzb2xpZCAkbGljaHRibGF1dztcblx0XHR9XG5cdH1cblxuXHRoM3tcblx0XHRmb250LWZhbWlseTogT3N3YWxkO1xuXHRcdGZvbnQtc2l6ZTogZW0oMjEpO1xuXHRcdGNvbG9yOiAjMDAwO1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXG5cdCYucGFya2VlcmRlazphZnRlcntcblx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lcigkZG9ua2VyYmxhdXcpO1xuXHR9XG5cdCYuY2FzY2FkZXBsZWluLTQ6YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXIoJHJvb2QpO1xuXHR9XG5cdCYuY2FzY2FkZXBsZWluLTEwOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRnZWVsKTtcblx0fVxuXHQmLnp1aWRlcmhhdmVuOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRsaWNodGJsYXV3KTtcblx0fVxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XG5cdFx0Ji5wYXJrZWVyZGVrOmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXItc21hbGwoJGRvbmtlcmJsYXV3KTtcblx0XHR9XG5cdFx0Ji5jYXNjYWRlcGxlaW4tNDphZnRlcntcblx0XHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyLXNtYWxsKCRyb29kKTtcblx0XHR9XG5cdFx0Ji5jYXNjYWRlcGxlaW4tMTA6YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkZ2VlbCk7XG5cdFx0fVxuXHRcdCYuenVpZGVyaGF2ZW46YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkbGljaHRibGF1dyk7XG5cdFx0fVxuXHR9XG5cdFxufVxuXG4uZGF0ZXtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0Zm9udC1mYW1pbHk6IFJvYm90bztcblx0XHRmb250LXNpemU6IGVtKDE0KTtcdFxuXHRcdGNvbG9yOiMyMzIzMjM7XG5cdH1cblx0XG59XG5cbi5sZWVzbWVlcntcblx0Zm9udC1mYW1pbHk6IFJvYm90bztcblx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdGNvbG9yOiMyMzIzMjM7XG5cdGRpc3BsYXk6IGlubGluZTtcdFxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OlwiID4+XCI7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtbGlua3Mge1xuXG5cdG1hcmdpbjoyMHB4IDA7XG5cblx0YSwgYTpob3ZlciwgYTp2aXNpdGVke1xuXHRcdGZvbnQtZmFtaWx5OiBSb2JvdG87XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0Y29sb3I6IzIzMjMyMztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdH1cblx0fVxuXHQuY3VycmVudHtcblx0XHRmb250LWZhbWlseTogUm9ib3RvO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdGNvbG9yOiRsaWNodGJsYXV3O1xuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHR9XG5cdH1cdFxuXHRhLnByZXZ7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRjb250ZW50OlwiPDwgXCI7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFlbTtcblx0XHR9XG5cdH0gXG5cdGEubmV4dHtcblx0XHRtYXJnaW4tbGVmdDogMTBweDtcblxuXHRcdCY6YWZ0ZXJ7XG5cdFx0XHRjb250ZW50OlwiID4+XCI7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxZW07XG5cdFx0fVxuXHR9IFxuXHRhLnBhZ2UtbnVtYmVyc3tcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0cGFkZGluZzogLjJlbTtcblx0fVxufVxuXG5cbi8qIG9wIG92ZXJ6aWNodHNwYWdpbmEncyAqL1xuXG4uaG9tZSwgXG4ucGFnZS10ZW1wbGF0ZS1uZXdzLXBhZ2UsXG4uc2VhcmNoLXJlc3VsdHMsXG4uc2luZ2xlLWRnZ19ldmVudCxcbi5zaW5nbGUtcG9zdCB7XG5cblx0LmludHJvOm5vdCgubWFpbik6YmVmb3Jle1xuXHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXI7XHRcdFxuXHR9XG5cblx0LmludHJvLmV2ZW50OmJlZm9yZSxcblx0LmludHJvLmV2ZW50cm93OmJlZm9yZXtcblx0XHRAaW5jbHVkZSBib3R0b20tYm9yZGVyLWJsb2NrO1x0XHRcblx0fVxuXG59XG5cbi8qIHByb2dyYW1tYW92ZXJ6aWNodCAqL1xuXG5zZWN0aW9uLnByb2dyYW17XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cblx0LnNob3ctbG9jYXRpb25ze1x0XHRcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdHdpZHRoOiAyODBweDtcblx0XHR9XG5cblx0XHRidXR0b257XHRcdFx0XG5cdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHRwYWRkaW5nOiBlbSgxMykgZW0oMzApO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjQ5LCAyNDksIDI0OSwgMC44KTtcblx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdH1cblxuXHQubG9jYXRpb25ze1xuXHRcdHdpZHRoOiAyMjBweDtcblx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvTG9jYXRpZXMuc3ZnKSAwIDAgbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMjIwcHggMjIwcHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XHRcblx0XHRcblx0XHRhe1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRcdH1cblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdFx0fVxuXG5cdFx0LmhlYWRpbmd7XG5cdFx0XHRwYWRkaW5nOiBlbSgxMykgZW0oMzApO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjQ5LCAyNDksIDI0OSwgMC44KTtcblx0XHR9XG5cdFxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdFx0d2lkdGg6IDI4MHB4O1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAyODBweCAyODBweDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTYwcHg7XG5cblx0XHRcdC5oZWFkaW5ne1xuXHRcdFx0XHR3aWR0aDogMjgwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cdFxuXG59XG5cbi5uby1jc3NncmlkIHNlY3Rpb24ucHJvZ3JhbSAuaW50cm97XG5cdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbmJvZHkuc2VhcmNoLXJlc3VsdHMge1xuXG5cdGgxe1xuXHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHR9XG5cbn1cblxuLnNlYXJjaC1yZXN1bHRzLCAucGFnZS10ZW1wbGF0ZS1wcm9ncmFtLXBhZ2Uge1xuXHRcblx0LnByb2dyYW0gaDF7XG5cdFx0bWFyZ2luLXRvcDogMDtcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxOCk7XG5cdFx0fVxuXHR9XG5cblx0LyogZmlsdGVycyAqL1x0XG5cblx0LmZpbHRlcntcblx0XHRwYWRkaW5nLXRvcDogMzBweDtcblx0XHRcblx0fVxuXG5cdC5mYWNldHdwLWNvdW50ZXIge1xuXHQgICAgZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5maWx0ZXIgbGFiZWx7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHRcdGhlaWdodDogMzBweDtcblx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKGltZy9jaGV2cm9uLnN2ZykgY2VudGVyIHJpZ2h0IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMTBweDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFxuXHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0d2lkdGg6Y2FsYygxMDAlIC0gMTBweCk7XG5cdFx0fVxuXHR9XG5cblx0LmZhY2V0d3AtY2hlY2tib3h7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFx0XG5cdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGNoZWNrYm94LXJlY3RhbmdsZTtcblx0XHR9XHRcblx0fVxuXG5cdC5mYWNldHdwLWNoZWNrYm94LmNoZWNrZWR7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9WaW5ramUuc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAycHggNnB4O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTRweCAxMnB4O1xuXHR9XG5cdC5mYWNldHdwLWNoZWNrYm94W2RhdGEtdmFsdWU9XCJjYXNjYWRlcGxlaW4tNFwiXTphZnRlcntcblx0XHRAaW5jbHVkZSBjaGVja2JveC1yZWN0YW5nbGUtYWZ0ZXIoJHJvb2QpO1xuXHR9XG5cdC5mYWNldHdwLWNoZWNrYm94W2RhdGEtdmFsdWU9XCJjYXNjYWRlcGxlaW4tMTBcIl06YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRnZWVsKTtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwicGFya2VlcmRla1wiXTphZnRlcntcblx0XHRAaW5jbHVkZSBjaGVja2JveC1yZWN0YW5nbGUtYWZ0ZXIoJGRvbmtlcmJsYXV3KTtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwienVpZGVyaGF2ZW5cIl06YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRsaWNodGJsYXV3KTtcblx0fVxuXHRcblx0LmZpbHRlci5hY3RpdmUgbGFiZWwge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvY2hldnJvbi11cC5zdmcpO1xuXHR9XG5cblx0LmZhY2V0d3AtZmFjZXR7XG5cdFx0cGFkZGluZzoxMHB4IDAgMjVweCAwO1x0XHRcblx0XHRkaXNwbGF5OiBub25lOyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMTtcblx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblx0XHR3aWR0aDogMjIwcHg7XHRcblx0XHRoZWlnaHQ6IGF1dG87XHRcdFx0XG5cblx0XHRzZWxlY3QsIHNlbGVjdDpmb2N1cywgc2VsZWN0OmFjdGl2ZXtcblx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHR3aWR0aDpjYWxjKDEwMCUgLSAxMHB4KTtcblx0XHR9XG5cblx0fVxuXHRcblx0LyogdGlqZHN0aXAgZmlsdGVyICovXHRcblxuXHQjdGltZW9wdGlvbnN7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwYWRkaW5nOjEwcHggMCAyNXB4IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDE7XHRcblx0XHRiYWNrZ3JvdW5kOndoaXRlO1xuXHRcdHdpZHRoOiAyMjBweDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0d2lkdGg6Y2FsYygxMDAlIC0gMTBweCk7XG5cdFx0fVxuXHR9XG5cblx0LnRpbWV0YXJnZXR7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG5cdFx0bWFyZ2luLWJvdHRvbTogNHB4O1x0XHRcblx0fVxuXG5cdGJ1dHRvbi5yZXNldHtcblx0XHQvKmRpc3BsYXk6IG5vbmU7Ki8gLyogdGVtcCB1bnRpbCBmaWx0ZXJzIHdvcmsgKi9cblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRcdGhlaWdodDogMjZweDtcblx0XHR3aWR0aDogMTYwcHg7XG5cdFx0dmVydGljYWwtYWxpZ246IGNlbnRlcjtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0bWFyZ2luLXRvcDozMHB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1x0XG5cblx0XHQmOmhvdmVyLCAmOmZvY3Vze1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjokZG9ua2VyYmxhdXc7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0fVx0XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXHR9XG5cblx0LnRpbWUtZGl2aWRlcntcblx0XHRmb250LXNpemU6IGVtKDE4KTtcblx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdFx0bWFyZ2luOiAxMHB4IDA7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0JjphZnRlcntcblx0XHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItcGFkZGluZy10aW1lO1xuXHRcdH1cblx0fVxuXG5cdC5ldmVudC1vdmVydmlldy1zaW5nbGV7XG5cdFx0XHRcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGljaHRncmlqcztcblx0XHRwYWRkaW5nOmVtKDE2KSBlbSgyMCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Ji5wYXJrZWVyZGVrOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZG9ua2VyYmxhdXcpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi00OmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkcm9vZCk7XG5cdFx0fVxuXHRcdCYuY2FzY2FkZXBsZWluLTEwOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZ2VlbCk7XG5cdFx0fVxuXHRcdCYuenVpZGVyaGF2ZW46YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRsaWNodGJsYXV3KTtcblx0XHR9XG5cblx0XHQmLnBhcmtlZXJkZWsgLmxvY2F0aWVzOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1ib3JkZXItc21hbGwoJGRvbmtlcmJsYXV3KTtcblx0XHR9XG5cdFx0Ji5jYXNjYWRlcGxlaW4tNCAubG9jYXRpZXM6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWJvcmRlci1zbWFsbCgkcm9vZCk7XG5cdFx0fVxuXHRcdCYuY2FzY2FkZXBsZWluLTEwIC5sb2NhdGllczpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtYm9yZGVyLXNtYWxsKCRnZWVsKTtcblx0XHR9XG5cdFx0Ji56dWlkZXJoYXZlbiAubG9jYXRpZXM6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWJvcmRlci1zbWFsbCgkbGljaHRibGF1dyk7XG5cdFx0fVxuXG5cdFx0YXtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzcHg7XG5cdFx0fVxuXG5cdFx0LmNhdHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTIpO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdFx0fVxuXG5cdFx0Lm1ldGF7XG5cdFx0XHRmb250LXNpemU6IGVtKDEyKTtcblx0XHRcdGZsZXg6IDAgMSBhdXRvO1xuXHRcdFx0bWFyZ2luLXRvcDphdXRvOyAvKiBzdGljayBhdCB0aGUgYm90dG9tICovXHRcdFx0XHRcdFxuXG5cdFx0XHQudGlqZGVuIHtcblx0XHRcdFx0XG5cdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0LmxvY2F0aWVze1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XHRcdFxuXHRcdFx0XHRtYXJnaW4tdG9wOiAxZW07XHRcblxuXHRcdFx0XHRzcGFue1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XHRcdFxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHR9XG5cdFx0XG5cdH1cbn1cblxuLyogSUUgZmFsbGJhY2sgKi9cbi5uby1jc3NncmlkIC5ldmVudC1vdmVydmlldy1zaW5nbGV7XG5cdGhlaWdodDogMjIwcHg7XG59XG5cblxuLyogY29udGVudCBibG9ja3Mgb24gZ3JpZCAqL1xuXG5cbi5mZWF0dXJlZCwgLm5ld3Mge1xuXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdFxufVx0XG5cbi50aHVtYi5uZXdzcm93LFxuLnRodW1iLmV2ZW50cm93LFxuLnNlYXJjaC1yZXN1bHRzIC50aHVtYntcblx0YmFja2dyb3VuZC1jb2xvcjogI2VlZTtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAyMjBweDtcblx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHR9XG59XG5cblxuXG4vKiBJRSBmYWxsYmFjayAqL1xuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XG5cdC5uby1jc3NncmlkIHtcblxuXHRcdC50aHVtYi5uZXdzcm93LFxuXHRcdC50aHVtYi5ldmVudHJvd3tcblx0XHRcdGhlaWdodDogMjIwcHg7XG5cdFx0XHR3aWR0aDogMjIwcHg7XG5cdFx0fVxuXHRcdC5pbnRyby5uZXdzcm93LFxuXHRcdC5pbnRyby5ldmVudHJvd3tcblx0XHRcdHdpZHRoOiAyMjBweDtcblx0XHR9XG5cdFx0LnNpbmdsZSB7XG5cdFx0XHQuaW50cm8ubmV3c3Jvd3tcblx0XHRcdFx0aGVpZ2h0OiAyMjBweDtcblxuXHRcdFx0XHRoM3tcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wYWdlLXRlbXBsYXRlLW5ld3MtcGFnZSAuaW50cm8gaDN7XG5cdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdH1cblx0XHRcblx0fVxufVxuXG5cblxuLyogYW5kZXIgbmV3cyBlbiBldmVudHMgb3AgbW9iaWVsICovXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdC50aHVtYi5uZXdzcm93LFxuXHQudGh1bWIuZXZlbnRyb3d7XG5cdFx0XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6IDEwMHB4O1xuXHRcdGhlaWdodDogMTAwcHg7XHRcblx0XHRiYWNrZ3JvdW5kOiNlZWU7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cblx0XHRpbWd7XG5cdFx0XHR3aWR0aDogMTAwcHg7XG5cdFx0XHRoZWlnaHQ6IDEwMHB4O1x0XHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0LmludHJvLm5ld3Nyb3csXG5cdC5pbnRyby5ldmVudHJvdyB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHRcdFxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XHRcdFx0XG5cdFx0aGVpZ2h0OiAxMTBweDtcdFxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cblx0XHRhe1xuXHRcdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRcdHdpZHRoOiAxOTBweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cblx0XHRoM3tcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1x0XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1x0XHRcdFx0XG5cdFx0fVxuXG5cdFx0cHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmRhdGV7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDIuNWVtO1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdFx0LmxlZXNtZWVyLm1vYntcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMWVtO1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cblx0fVxuXG59XG5cbi8qIHNpbmdsZSBhcnRpY2xlIGVuIGV2ZW50ICovXG4uc2luZ2xlIGFydGljbGUge1xuXG5cdGNsZWFyOiBsZWZ0O1xuXG5cdC8qIHZvbGdvcmRlIGJsb2trZW4gYW5kZXJzIG9wIG1vYmllbCAqL1xuXHQubW9iaWxlLWluZm97XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0XHRoMXtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXG5cdFx0LmJsb2NrLmV2ZW50LW1ldGFkYXRhe1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0Lm1vYmlsZS1pbmZve1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHRcdFx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC5lbnRyeS1jb250ZW50e1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDI0MHB4O1xuXG5cdFx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdFx0XHRtaW4taGVpZ2h0OiA3MDBweDsgLyogaXZtIHZlZWwgbWV0YWRhdGEgKi9cdFxuXHRcdFx0cGFkZGluZy1ib3R0b206IDQwcHg7IC8qIHNvY2lhbCBzaGFyZSBidXR0b25zICovXG5cdFx0fVx0XHRcdFxuXG5cdFx0cHtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHR9XHRcblxuXHRcdGgyLGgzLGg0e1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1x0XG5cdFx0XHRtYXJnaW4tdG9wOjA7XHRcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XHRcblx0XHR9XHRcblxuXHRcdGgyK3AsIGgzK3AsIGg0K3Age1xuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMjJweDtcblxuXHRcdFx0cCxoMixoMyxoNHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwXG5cdFx0XHR9XG5cdFx0fVx0XG5cblx0XHRcblxuXHRcdC8qIGJpaiBldmVudHMgc3RhYXQgZXIgZWVuIGxpbmsgbmFhciBoZXQgb3ZlcnppY2h0IG9uZGVyIGRlIGZvdG8gKi9cblx0XHQudGh1bWItbGlua3tcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMjQwcHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0XHRtYXgtaGVpZ2h0OiA0ODBweDtcblxuXHRcdFx0Ji53aXRoLWNhcHRpb257XG5cdFx0XHRcdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuZmVhdHVyZWQtaW1hZ2UtY2FwdGlvbntcblx0XHRcdFx0bWF4LXdpZHRoOiA0NjBweDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHRcdFx0XHRcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1x0XHRcdFx0XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XHRcblx0XHRcdFx0cGFkZGluZzogMTBweCAwO1x0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHQucG9zdC10aHVtYm5haWx7XG5cdFx0XHRcdHdpZHRoOiA0NjBweDtcdFx0XHRcdFxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcdFx0XHRcdFx0XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRhLnRlcnVne1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdFx0d2lkdGg6IDIyMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1x0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpY2h0Z3JpanM7XHRcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRjb2xvcjokZG9ua2VyYmxhdXc7XHRcblx0XHRcdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdHBhZGRpbmc6IGVtKDcpIGVtKDExKTtcdFx0XHRcdFxuXG5cdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZ2VlbCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cdFxuXHRcdFx0fVx0XG5cdFx0fVx0XHRcblx0XHRcblx0fVxuXG59XG5cblxuI21haW4gLnN1cHN5c3RpYy1zb2NpYWwtc2hhcmluZ3tcblx0aGVpZ2h0OjQwcHg7XHRcblx0cGFkZGluZzowO1x0XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogMDtcdFxuXG5cdGF7XG5cdFx0d2lkdGg6IDM5cHg7XG5cdFx0aGVpZ2h0OiAzOXB4O1xuXHRcdG1hcmdpbjowIDAgMCAxMHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6I2Y5ZjlmOTtcblx0XHRjb2xvcjokZG9ua2VyYmxhdXc7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Jjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmV7XG5cdFx0XHRjb2xvcjojZmZmO1x0XHRcdFx0XHRcblx0XHR9XG5cblx0XHRpe1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjlweDtcblx0XHRcdGxlZnQ6N3B4O1xuXHRcdFx0Zm9udC1zaXplOiAxOXB4O1x0XHRcdFx0XHRcblx0XHR9XG5cdH1cdFxufVxuXG5cbi8qIG5pZXV3c292ZXJ6aWNodCBlbiB6b2VrcmVzdWx0YXRlbiBvcCBtb2JpZWwgLSBhbGxlIGl0ZW1zIGtsZWluIGJlaGFsdmUgZGUgZWVyc3RlICovXG5cbkBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0LnBhZ2UtdGVtcGxhdGUtbmV3cy1wYWdlIC5uZXdzb3ZlcnZpZXcsXG5cdC5zZWFyY2gtcmVzdWx0cyBzZWN0aW9uLnNlYXJjaC1yZXN1bHRze1xuXHRcdFxuXG5cdFx0IC8qIGVlcnN0ZSBiZXJpY2h0IHRodW1iIGVuIGludHJvICovXG5cdFx0ID4gZGl2Om50aC1jaGlsZCgxKXtcdFxuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDogbm9uZTtcblxuXHRcdCBcdGltZyB7XG5cdFx0IFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0IFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdCBcdH1cblx0XHQgfVxuXHRcdCA+IGRpdjpudGgtY2hpbGQoMil7XHRcblx0IFx0ICAgIFxuXHQgXHQgICAgZGlzcGxheTogYmxvY2s7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1x0XHQgICBcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHQgICAgbWFyZ2luLWxlZnQ6IDA7XG5cdFx0ICAgIHBhZGRpbmctdG9wOiAwO1xuXG5cdFx0ICAgIGF7XG5cdFx0ICAgIFx0d2lkdGg6IDEwMCU7XG5cdFx0ICAgIFx0aGVpZ2h0OiBhdXRvO1xuXHRcdCAgICB9XG5cblx0XHQgICAgcHtcblx0XHQgICAgXHRkaXNwbGF5OiBibG9jaztcblx0XHQgICAgfVxuXHRcdCAgICAuZGF0ZSB7XG5cdFx0ICAgIFx0ZGlzcGxheTogbm9uZTtcblx0XHQgICAgfVxuXHRcdCAgICAubGVlc21lZXJ7XG5cdFx0ICAgIFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0ICAgIH1cblx0XHQgICAgLmxlZXNtZWVyLm1vYntcblx0XHQgICAgXHRkaXNwbGF5OiBub25lO1xuXHRcdCAgICB9XG5cdFx0fVxuXHRcdCBcdFxuXHRcdCBcblxuXHRcdC50aHVtYntcdFx0XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDoxMDBweDtcblx0XHRcdGhlaWdodDogMTAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuXG5cdFx0XHRpbWd7XG5cdFx0XHRcdHdpZHRoOiAxMDBweDtcblx0XHRcdFx0aGVpZ2h0OiAxMDBweDtcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5pbnRybyB7XG5cdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcdFx0XG5cdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTEwcHgpO1x0XHRcdFxuXHRcdFx0aGVpZ2h0OiAxMTBweDtcdFxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cblx0XHRcdGF7XG5cdFx0XHRcdGhlaWdodDogMTAwcHg7XHRcdFx0XHRcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXG5cdFx0XHRoM3tcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHR9XG5cblx0XHRcdHB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC5kYXRle1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTogMi41ZW07XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHQubGVlc21lZXIubW9ie1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTogMWVtO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0fVxuXG5cdFx0fVx0XHRcdFx0XG5cblx0fVxuXG59XG5cbi8qIGxhYWQgbWVlciBwb3N0cyBidXR0b24gKi9cbi5hbG0tbG9hZC1tb3JlLWJ0bi5kZ2d7XG5cdHdpZHRoOjIyMHB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG5cdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuXHRmb250LXNpemU6IGVtKDE2KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG5cdCY6aG92ZXIsICY6Zm9jdXN7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjojZjlmOWY5O1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdH1cblxuXHQmOmFmdGVye1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZG9ua2VyYmxhdXcpO1xuXHR9XG59XG4uYWxtLWxvYWQtbW9yZS1idG4uZGdnLmRvbmV7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4uYWxtLWJ0bi13cmFwIC5hbG0tbG9hZC1tb3JlLWJ0bi5sb2FkaW5nOjpiZWZvcmV7XG5cdGJhY2tncm91bmQ6bm9uZTsgLyogbG9hZGVyIGdpZiAqL1xufVxuXG5cbi8qIGRlYWZ1bHQgcGFnZSAqL1xuLnBhZ2UtdGVtcGxhdGUtZGVmYXVsdCBhcnRpY2xlIHtcblxuXHRjbGVhcjogbGVmdDtcdFxuXG5cdGgxe1xuXHRcdG1hcmdpbjogMCAwIDVweCAwO1xuXHR9XG5cblx0LmVudHJ5LWNvbnRlbnR7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmctbGVmdDogMjQwcHg7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1x0XHRcdFx0XHRcdFxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXHRcdFx0bWluLWhlaWdodDogMzAwcHg7IFxuXHRcdFx0cGFkZGluZy1ib3R0b206IDQwcHg7IC8qIHNvY2lhbCBzaGFyZSBidXR0b25zICovXG5cdFx0fVx0XG5cblx0XHRwe1xuXHRcdFx0bWFyZ2luLXRvcDowO1xuXG5cdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0fVx0XHRcblx0XHRcblx0XHQvKiBmZWF0dXJlZCBpbWFnZSBzdGFhdCBib3ZlbmFhbiAqL1xuXHRcdC5wb3N0LXRodW1ibmFpbHtcblx0XHRcdHdpZHRoOiA0NjBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMjQwcHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cblx0XHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XHRcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LyogaW1nIGluIGNvbnRlbnQgKi9cblx0XHRwIGltZ3tcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMjQwcHg7XG5cdFx0XHRwYWRkaW5nOiAwIDAgMjBweCAwO1xuXG5cdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1x0XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXHRcdFx0fVxuXHRcdH1cdFxuXHRcdFxuXHRcdFx0XG5cdH1cbn1cblxuLyogb3ZlcnppY2h0IHBhcnRuZXJzICovXG4ucGFnZS10ZW1wbGF0ZS1wYXJ0bmVyLXBhZ2Uge1xuXG5cdGgxe1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHRzZWN0aW9uLnBhcnRuZXJze1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cblx0XHQudGh1bWJ7XHRcdFx0XHRcdFx0XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRtYXJnaW46MjBweCAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5pbnRyb3tcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTMzODNiO1xuXG5cdFx0XHRoMyBhLCBoMyBhOnZpc2l0ZWR7XG5cdFx0XHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XHRcdFxufVxuXG5cbmZvb3Rlci5zaXRlLWZvb3RlciB7XG5cdGJhY2tncm91bmQ6ICNlZWVlZWU7XHRcdFx0XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0cGFkZGluZzowIDEwcHg7XHRcdFxuXHRcdGJvcmRlci10b3A6MjBweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGZvb3Rlci13aGl0ZS1zcXVhcmUtc21hbGw7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XHRcdFx0XG5cdFx0Ym9yZGVyLXRvcDo2MHB4IHNvbGlkICRkb25rZXJibGF1dztcdFx0XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdFx0cGFkZGluZy10b3A6MDtcblx0XHRwYWRkaW5nLWxlZnQ6Y2FsYyggKDEwMHZ3IC0gOTYwcHgpIC8gMiApO1xuXHRcdHBhZGRpbmctcmlnaHQ6Y2FsYyggKDEwMHZ3IC0gOTYwcHgpIC8gMiApO1xuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSBmb290ZXItd2hpdGUtc3F1YXJlO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJwKGJpZ2Rlc2t0b3Ape1xuXHRcdHBhZGRpbmc6IDAgMjUwcHg7XG5cdFx0bWluLWhlaWdodDogNDAwcHg7XG5cdH1cblx0XG5cblx0c2VjdGlvbntcblx0XHRwYWRkaW5nOjQwcHggMDtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XHRcblx0XHRcdHBhZGRpbmc6MTBweCAxMHB4IDEwcHggMTIwcHg7XHRcdFx0XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1x0XHRcdFx0XG5cblx0XHRcdGgze1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHR9XHRcdFxuXHRcdH1cblx0fVxuXG5cdHNlY3Rpb24ubG9nb3tcblx0XHRiYWNrZ3JvdW5kOiB1cmwoaW1nL2Zvb3Rlci1iZWVsZG1lcmsuc3ZnKSAwIDQwcHggbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTI5cHggMTE4cHg7XHRcblxuXHR9XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRzZWN0aW9uLmxvZ297XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoaW1nL2Zvb3Rlci1iZWVsZG1lcmsuc3ZnKSAwIDEwcHggbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiA4MXB4IDc0cHg7XHRcblx0XHRcdHdpZHRoOiA4MXB4O1xuXHRcdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRcdHBhZGRpbmc6MDtcdFxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHRcdFxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjEwcHg7XG5cdFx0XHRsZWZ0OjEwcHg7XHRcblx0XHR9XHRcblxuXHR9XG5cblx0LnNvY2lhbHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XHRcblxuXHRcdGF7XG5cdFx0XHRmbGV4OiAwIDEgYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdHdpZHRoOiA0MHB4O1xuXHRcdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHRcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcdFx0XHRcdFx0XG5cblx0XHRcdCYuZmJ7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvZmFjZWJvb2tfYnV0dG9uLnN2Zyk7XG5cdFx0XHR9XG5cdFx0XHQmLnR3e1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL1R3aXR0ZXJfYnV0dG9uLnN2Zyk7XG5cdFx0XHR9XG5cdFx0XHQmLnl0e1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL3lvdXR1YmVfYnV0dG9uLnN2Zyk7XG5cdFx0XHR9XG5cdFx0fVx0XG5cdH1cblxuXHQudGV4dHdpZGdldCwgLnRleHR3aWRnZXQgcHtcblx0XHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXG5cdFx0YSwgYTpob3ZlciwgYTp2aXNpdGVke1xuXHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHR9XG5cdH1cbn1cblxuXG4iLCJ1bCwgb2wge1xuXHRtYXJnaW46IDAgMCAxLjVlbSAzZW07XG59XG5cbnVsIHtcblx0bGlzdC1zdHlsZTogZGlzYztcbn1cblxub2wge1xuXHRsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5saSA+IHVsLFxubGkgPiBvbCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuZHQge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuXHRtYXJnaW46IDAgMS41ZW0gMS41ZW07XG59XG4iLCJ0YWJsZSB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xuXHR3aWR0aDogMTAwJTtcbn1cbiIsIlxuLmZlYXR1cmVkIHtcblxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdC50aHVtYi5tYWluIHtcblx0XHRcdGltZ3tcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaW50cm8ubWFpbiB7XG5cdFx0XHRcdFxuXHRcdHBhZGRpbmc6IDIxcHggMzBweDtcdFx0XG5cdFx0bWFyZ2luLXRvcDotMjBweDtcblx0XHRcblx0XHRwe1xuXHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0fVx0XG5cblx0XHRoM3tcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgyNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS40Njtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRcdHBhZGRpbmc6MTBweDtcblx0XHRcdG1hcmdpbi10b3A6IC03MHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdG1heC13aWR0aDogNDNlbTtcblxuXHRcdFx0aDN7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0fVxuXG5cdFx0XHRwe1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaW50cm8uZXZlbnR7XG5cblx0XHRoMyBzcGFue1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVx0XHRcblxuXHR9XG5cblx0LyogZmVhdHVyZWQgZXZlbnQgb24gbW9iaWxlICovXG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblxuXHRcdC50aHVtYi5ldmVudHtcblxuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHRpbWd7XG5cdFx0XHRcdHdpZHRoOiAxMDBweDtcblx0XHRcdFx0aGVpZ2h0OiAxMDBweDtcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5pbnRyby5ldmVudHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRcdC8qd2lkdGg6IDE5MHB4OyovXG5cdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTEwcHgpO1x0XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG5cdFx0XHRoM3tcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdH1cblxuXHQvKiBtZWRpdW0gbmV3cyBibG9jayAqL1xuXHQudGh1bWIuc2Vjb25kLW5ld3N7XG5cdFx0bWFyZ2luLXRvcDoyMHB4O1xuXHR9XG5cblx0LmludHJvLnNlY29uZC1uZXdze1x0XHRcblx0XHRtYXJnaW4tdG9wOjIwcHg7XHRcdFxuXG5cdFx0YXtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cblx0XHRoM3tcblx0XHRcdGZvbnQtZmFtaWx5OiBPc3dhbGQ7XG5cdFx0XHRmb250LXNpemU6IGVtKDIxKTtcblx0XHRcdGNvbG9yOiMwMDA7XG5cdFx0XHRtYXJnaW46MDtcblxuXHRcdFx0c3Bhbntcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVx0XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0aDN7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0fVxuXHRcdH1cdFxuXG5cdH1cblxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdC50aHVtYi5zZWNvbmQtbmV3cyBpbWd7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXgtd2lkdGg6IDQ2MHB4O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblx0fVxufVxuXG4vKiBJRSBmYWxsYmFjayAqL1xuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcblxuXHQubm8tY3NzZ3JpZCAuaG9tZSB7XG5cblx0XHQuaW50cm86bm90KC5tYWluKXtcblx0XHRcdGhlaWdodDogMjIwcHg7XG5cdFx0XHR3aWR0aDogMjIwcHg7XG5cdFx0XHRtYXJnaW46MjBweCAwO1xuXHRcdH1cblx0XHQudGh1bWIubWFpbntcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweFxuXHRcdH1cblx0XHQudGh1bWIuc2Vjb25kLW5ld3N7XG5cdFx0XHRtYXgtd2lkdGg6IDQ2MHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdH1cblx0XHQuYmxvY2sucHJvZ3JhbS1saW5re1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XG5cdH1cbn1cblxuIiwiLyogYWxsIGNzcyBncmlkIHNwZWNpZmljYXRpb25zLCBvbmx5IGZvciBkZXNrdG9wIGZyb20gOTYwcHggd2lkdGggICovXG5cbi8qIHRhcmdldCBJRTExIHdpdGggLm5vLWNzc2dyaWQgY2xhc3MsIG9yIHByb2dyZXNzaXZlIHRhcmdldCBuZXcgYnJvd3NlcnMgd2l0aCAuY3NzZ3JpZCBjbGFzcyAqL1xuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcblxuXHQvKiBhbGdlbWVuZSBvbmRlcmRlbGVuL2Jsb2trZW4gKi9cblxuXHQuYmxvY2sucHJvZ3JhbS1saW5re1xuXHRcdGdyaWQtY29sdW1uLXN0YXJ0OiA0O1xuXHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAxO1xuXHRcdGdyaWQtcm93LXN0YXJ0OiAxO1xuXHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XG5cdH1cblxuXHQuY3NzZ3JpZCB7XG5cdFx0LnNpdGUtZm9vdGVyIHtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0XHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHRcdCAgXHRncmlkLXRlbXBsYXRlLXJvd3M6IDIyMHB4O1xuXHRcdH1cblx0fVxuXHRcblx0LyogZmFsbGJhY2sgZm9yIElFICovXG5cdC5zaXRlLWZvb3Rlcntcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHNlY3Rpb257XG5cdFx0XHRmbGV4OjAgMSAyNSU7XG5cdFx0fVxuXHR9XHRcblxuXHQvKiBob21lcGFnZSAqL1xuXG5cdC5zaXRlLW1haW4gc2VjdGlvbi5mZWF0dXJlZHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFxuXHQgIFx0QGluY2x1ZGUgZ3JpZC1yZXNldDtcdCAgXHRcblx0fVxuXG5cdC5zaXRlLW1haW4gc2VjdGlvbi5uZXdze1x0XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0ICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cdCAgICBncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0ICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFxuXHQgICAgICBcIm5iIG50MSBudDIgbnQzXCJcblx0ICAgICAgXCIuICBuaTEgbmkyIG5pM1wiXG5cdCAgICAgIFwiLiAgZXQxIGV0MiBwYiBcIlxuXHQgICAgICBcIi4gIGVpMSBlaTIgLiAgXCI7XHRcblx0XHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXHRcblx0fVxuXG5cdC5ob21lIHtcblxuXHRcdC8qIGZlYXR1cmVkIGdyaWQgKi9cblxuXHRcdC5mZWF0dXJlZCAudGh1bWIubWFpbntcdFx0XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogMTtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAzO1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDE7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMztcdFx0XHRcblx0XHR9XG5cdFx0LmZlYXR1cmVkIC5pbnRyby5tYWlue1xuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDI7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjtcdFxuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDM7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFx0XHRcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHRcblx0XHR9XG5cdFx0LmZlYXR1cmVkIC50aHVtYi5ldmVudHtcdFx0XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogNDtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDI7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFx0XHRcblx0XHR9XG5cdFx0LmZlYXR1cmVkIC5pbnRyby5ldmVudHtcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiA0O1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDE7XHRcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAzO1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDE7XHRcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHRcblx0XHR9XG5cdFx0LmZlYXR1cmVkIC50aHVtYi5zZWNvbmQtbmV3c3tcdFx0XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogMjtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAyO1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDQ7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMjtcdFx0XHRcdFxuXHRcdH1cblx0XHQuZmVhdHVyZWQgLmludHJvLnNlY29uZC1uZXdze1xuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDQ7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTtcdFxuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDQ7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMjtcdFxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcdFxuXHRcdH1cblxuXHRcdC8qIG5ld3MgZ3JpZCAqL1xuXG5cdFx0LmJsb2NrLm5ld3MtbGlua3tcblx0XHRcdGdyaWQtYXJlYTogbmI7XG5cdFx0fVxuXHRcdFxuXHRcdC8qIHN0YXJ0IHdpdGggbmV3IGdyaWQgXG5cdFx0bnRoLWNoaWxkIGNvdW50cyBhbGwgc2libGluZyBkaXZzLCBzbyB0aHVtYnMgYW5kIGludHJvJ3MgKi9cdFxuXG5cdFx0Lm5ld3N7XG5cblx0XHRcdD4gZGl2Om50aC1jaGlsZCgyKXtcdFxuXHRcdFx0XHRncmlkLWFyZWE6bnQxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoMyl7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOm5pMTtcdFxuXHRcdFx0fVxuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDQpe1x0XG5cdFx0XHRcdGdyaWQtYXJlYTpudDI7XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg1KXtcdFxuXHRcdFx0XHRncmlkLWFyZWE6bmkyO1x0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDYpe1x0XG5cdFx0XHRcdGdyaWQtYXJlYTpudDM7XHRcdFxuXHRcdFx0fVxuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDcpe1xuXHRcdFx0XHRncmlkLWFyZWE6bmkzO1x0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdC50aHVtYi5ldmVudHJvd3tcdFxuXHRcdFx0XHRncmlkLWFyZWE6ZXQxO1x0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC5pbnRyby5ldmVudHJvd3tcdFxuXHRcdFx0XHRncmlkLWFyZWE6ZWkxO1x0XG5cdFx0XHR9XG5cdFx0XHQvKiBuZXh0IHNpYmxpbmcgKi9cblx0XHRcdC50aHVtYi5ldmVudHJvdyB+IC50aHVtYi5ldmVudHJvd3tcdFxuXHRcdFx0XHRncmlkLWFyZWE6ZXQyO1x0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQuaW50cm8uZXZlbnRyb3cgfiAuaW50cm8uZXZlbnRyb3d7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOmVpMjtcdFx0XHRcdFx0XHRcblx0XHRcdH1cblxuXHRcdFx0LmJsb2NrLnByb2dyYW0tb3ZlcnZpZXd7XG5cdFx0XHRcdGdyaWQtYXJlYTpwYjtcblx0XHRcdH1cdFx0XHRcdFx0XHRcblxuXHRcdH1cdFxuXHR9XG5cdFxuXHQvKiBJRSBmaXggKi9cblx0Lm5vLWNzc2dyaWQgLmhvbWUgLm5ld3Mge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdC5ibG9jay5wcm9ncmFtLW92ZXJ2aWV3e1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiAyNjBweDtcblx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdH1cblx0fVxuXHRcblxuXHQvKiBwcm9ncmFtbWFvdmVyemljaHRzcGFnaW5hICovXG5cblx0LnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbS1wYWdle1xuXG5cdFx0c2VjdGlvbi5wcm9ncmFte1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHRcdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdFx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1x0XHQgIFx0XHQgIFx0XG5cdFx0ICBcdGdyaWQtdGVtcGxhdGUtYXJlYXM6IFxuXHRcdCAgICAgIFwiaW50cm8gaW50cm8gbG9jIHBiXCJcblx0XHQgICAgICBcImYxIGYyIGYzIHJiXCI7XHQgXG5cdFx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcblxuXHRcdCAgXHQuaW50cm97XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiBpbnRybztcdFx0XG5cdFx0ICBcdH1cblx0XHQgIFx0LmxvY2F0aW9uc3tcblx0XHQgIFx0XHRncmlkLWFyZWE6IGxvYztcdFxuXHRcdCAgXHR9XG5cdFx0ICBcdC5ibG9jay5wcm9ncmFte1xuXHRcdCAgXHRcdGdyaWQtYXJlYTogcGI7XG5cdFx0ICBcdH1cblx0XHQgIFx0LmZpbHRlci5jYXR7XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiBmMTtcblx0XHQgIFx0fVxuXHRcdCAgXHQuZmlsdGVyLnRpbWV7XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiBmMjtcblx0XHQgIFx0fVxuXHRcdCAgXHQuZmlsdGVyLmxvY2F0aW9ue1xuXHRcdCAgXHRcdGdyaWQtYXJlYTogZjM7XG5cdFx0ICBcdH1cdFxuXHRcdCAgXHQucmVzZXR7XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiByYjtcblx0XHQgIFx0fSAgXHRcblx0XHR9XG5cblx0XHRzZWN0aW9uLnByb2dyYW0tcmVzdWx0c3tcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0XHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHRcdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0XHQgIFx0Z3JpZC1hdXRvLXJvd3M6IDIyMHB4O1xuXHRcdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFxuXHRcdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXG5cdFx0fVxuXHR9XG5cdFxuXHQvKiBmYWxsYmFjayBmb3IgSUUgKi9cblx0Lm5vLWNzc2dyaWQgLnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbS1wYWdlIHNlY3Rpb24ucHJvZ3JhbS1yZXN1bHRze1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cblx0XHQ+IGRpdiB7XG5cdFx0XHRmbGV4OiAwIDEgMTgwcHg7XHRcdFx0XHRcblx0XHRcdG1hcmdpbjogMCAyMHB4IDIwcHggMDtcdFx0XHRcdFx0XHRcblx0XHR9XG5cblx0XHQ+IGRpdjpudGgtY2hpbGQoNG4rNCl7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdH1cblxuXHQvKiBuaWV1d3Mgb3ZlcnppY2h0c3BhZ2luYSAqL1xuXHRcblxuXHQuY3NzZ3JpZCAucGFnZS10ZW1wbGF0ZS1uZXdzLXBhZ2V7XG5cblx0XHQvKnByb2dyYW1tYWJsb2tqZSBidWl0ZW4gaGV0IGdyaWQgKi9cblx0XHQuYmxvY2sucHJvZ3JhbS1saW5re1x0XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6MDtcblx0XHRcdHJpZ2h0OiAwO1x0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XG5cblx0XHQubmV3c292ZXJ2aWV3e1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHRcdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdFx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHRcdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdFx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXHQgIFx0XG5cdFx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7IFxuXHRcdCAgXHRncmlkLWF1dG8tZmxvdzogY29sdW1uOyBcdFx0ICAgXG5cblx0XHRcdC8qIDFlIG5pZXV3c2l0ZW0gdGh1bWIgKi9cblx0XHQgICAgPiBkaXY6bnRoLWNoaWxkKDhuKzEpe1x0XG5cdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuXHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMjtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiAxZSBuaWV1d3NpdGVtIGludHJvICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMil7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDI7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAyO1x0XHRcdFxuXHRcdFx0XHR3aWR0aDogMjIwcHg7IC8qIHdpdHJ1aW10ZSByZWNodGVya2FudCAqL1x0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiAyZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMyl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiAyZSBuaWV1d3NpdGVtIGludHJvICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNCl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiAzZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNSl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiAzZSBuaWV1d3NpdGVtIGludHJvICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNil7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFxuXHRcdFx0fVxuXHRcdFx0LyogNGUgbmlldXdzaXRlbSB0aHVtYiAqL1xuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzcpe1x0XG5cdFx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1xuXHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0LyogNGUgbmlldXdzaXRlbSBpbnRybyAqL1xuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzgpe1x0XG5cdFx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1xuXHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVx0XG5cdFx0XHRcblx0XHRcdC5hbG0tYnRuLXdyYXB7XG5cdFx0XHRcdGRpc3BsYXk6IGNvbnRlbnRzO1xuXHRcdFx0fVxuXG5cdFx0XHQjYWpheC1sb2FkLW1vcmV7XG5cdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiA0O1xuXHRcdFx0XHRncmlkLXJvdzogYXV0bztcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQjYWpheC1sb2FkLW1vcmUubG9hZGVke1xuXHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gNDtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDg7XG5cdFx0XHRcdHdpZHRoOiA5NDBweDtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1x0XG5cdFx0XHR9XHRcdFx0XHRcblxuXHRcdFx0LmFsbS1saXN0aW5ne1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAyMjBweCk7ICBcdFxuXHRcdFx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0XHRcdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0XHRcdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdFx0XHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcdCAgXHRcblx0XHRcdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyBcblx0XHRcdCAgXHRncmlkLWF1dG8tZmxvdzogY29sdW1uOyBcdFx0XHQgIFx0XG5cblx0XHRcdCAgXHQvKiAxZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHQgICAgPiBkaXY6bnRoLWNoaWxkKDhuKzEpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDI7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIDFlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzIpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDI7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDI7XHRcdFx0XG5cdFx0XHRcdFx0d2lkdGg6IDIyMHB4OyAvKiB3aXRydWltdGUgcmVjaHRlcmthbnQgKi9cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIDJlIG5pZXV3c2l0ZW0gdGh1bWIgKi9cblx0XHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzMpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHQvKiAyZSBuaWV1d3NpdGVtIGludHJvICovXG5cdFx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis0KXtcdFxuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuXHRcdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogM2UgbmlldXdzaXRlbSB0aHVtYiAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNSl7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIDNlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzYpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogNGUgbmlldXdzaXRlbSB0aHVtYiAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNyl7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogNCAvIHNwYW4gMTtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIDRlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzgpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVx0XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHR9XHRcdFxuXHRcblxuXHQvKiBmYWxsYmFjayBmb3IgSUUgKi9cblx0Lm5vLWNzc2dyaWQgLnBhZ2UtdGVtcGxhdGUtbmV3cy1wYWdlIHtcdFxuXG5cdFx0Lm1vYmlsZS1pbmZve1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDpyaWdodDtcblx0XHR9XHRcblxuXHRcdC5oaWRlLW1vYmlsZXtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Lm5ld3NvdmVydmlldyB7XHRcdFxuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHRcdFx0XG5cdFx0XHRoZWlnaHQ6IGNhbGMoNCAqIDQ2MHB4KTtcblx0XHRcdHdpZHRoOmNhbGMoMTAwJSAtIDIyMHB4KTtcblxuXHRcdFx0PiBkaXYge1xuXHRcdFx0XHRmbGV4OiAwIDEgMjIwcHg7XHRcdFx0XHRcdFxuXHRcdFx0XHR3aWR0aDogMjIwcHg7XHRcblx0XHRcdFx0aGVpZ2h0OiAyMjBweDtcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0LmludHJvIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdH1cdFx0XHRcdFxuXHRcdH1cblxuXHR9XG5cblx0Lyogem9la3Jlc3VsdGF0ZW4gcGFnaW5hICovXG5cblx0LmNzc2dyaWQgc2VjdGlvbi5zZWFyY2gtcmVzdWx0c3tcblxuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXHQgIFx0XG5cdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXG5cdCAgXHRncmlkLWF1dG8tZmxvdzogY29sdW1uOyAgIFxuXG5cdFx0LyogYWxsZSBpdGVtcyBoZXR6ZWxmZGUgKi9cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMSl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMil7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4biszKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNCl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzUpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcblx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNil7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4bis3KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rOCl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0XG5cblx0fVxuXG5cdC8qIGZhbGxiYWNrIGZvciBJRSAqL1xuXHQubm8tY3NzZ3JpZCAuc2VhcmNoLXJlc3VsdHMgc2VjdGlvbi5zZWFyY2gtcmVzdWx0cyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0aGVpZ2h0OiBjYWxjKDIgKiA0NjBweCk7XG5cdFx0d2lkdGg6MTAwJTtcdFx0XG5cblx0XHQ+IGRpdiB7XG5cdFx0XHRmbGV4OiAwIDEgMjIwcHg7XHRcdFx0XHRcblx0XHRcdHdpZHRoOiAyMjBweDtcdFxuXHRcdFx0aGVpZ2h0OiAyMjBweDtcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQuaW50cm8ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XHRcdFx0XHRcblx0fVxuXHRcblx0XHRcdCBcblxuXHQvKiBuaWV1d3MgZGV0YWlscGFnaW5hICovXG5cblx0LnNpdGUtbWFpbiBzZWN0aW9uLm5ld3NkZXRhaWwgYXJ0aWNsZXtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdCAgXHRncmlkLWF1dG8tcm93czogYXV0bztcblx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXHRcblx0XHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXHRcblx0fVxuXG5cdC5zaW5nbGUgYXJ0aWNsZXtcblxuXHRcdGhlYWRlcntcdFx0XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogMjtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAyO1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDE7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFx0XHRcblx0XHR9XHRcblx0XHQuZW50cnktY29udGVudHtcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDM7XHRcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAyO1xuXHRcdH1cblx0XHQuYmxvY2sucHJvZ3JhbS1saW5re1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDI7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFxuXHRcdH1cblxuXHR9XG5cblx0LnNpbmdsZSBzZWN0aW9uLm5ld3N7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0ICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cdCAgICBncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0ICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFxuXHQgICAgICBcIm5iIG50MSBudDIgbnQzXCJcblx0ICAgICAgXCIuICBuaTEgbmkyIG5pM1wiO1x0XG5cdFx0QGluY2x1ZGUgZ3JpZC1yZXNldDtcblxuXG5cdCAgXHQuYmxvY2submV3cy1saW5re1xuXHRcdFx0Z3JpZC1hcmVhOiBuYjtcblx0XHR9XG5cblx0XHQ+IGRpdjpudGgtY2hpbGQoMil7XHRcblx0XHRcdGdyaWQtYXJlYTpudDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDMpe1x0XG5cdFx0XHRncmlkLWFyZWE6bmkxO1x0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg0KXtcdFxuXHRcdFx0Z3JpZC1hcmVhOm50MjtcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoNSl7XHRcblx0XHRcdGdyaWQtYXJlYTpuaTI7XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg2KXtcdFxuXHRcdFx0Z3JpZC1hcmVhOm50MztcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg3KXtcblx0XHRcdGdyaWQtYXJlYTpuaTM7XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cblxuXHR9XG5cblx0LyogcHJvZ3JhbW1hIGRldGFpbCBwYWdpbmEgKi9cblxuXHQuc2luZ2xlLWRnZ19ldmVudCBhcnRpY2xle1xuXHRcdFxuXHRcdC5ibG9jay5ldmVudC1tZXRhZGF0YXtcblx0XHRcdGdyaWQtcm93OiAyIC8gc3BhbiAxO1x0XG5cdFx0XHRncmlkLWNvbHVtbiA6IDQgLyBzcGFuIDE7XG5cdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcdFx0XG5cdFx0fVxuXG5cdH1cblx0LyogSUUgZmFsbGJhY2sgKi9cblx0Lm5vLWNzc2dyaWQgLnNpbmdsZS1kZ2dfZXZlbnQgYXJ0aWNsZSAuYmxvY2suZXZlbnQtbWV0YWRhdGF7XG5cdFx0bWFyZ2luLWxlZnQ6MjBweDtcblx0fVxuXG5cdC8qIHN0YW5kYWFyZCBkZXRhaWxwYWdpbmEgKi9cblxuXHQuc2l0ZS1tYWluIHNlY3Rpb24ucGFnZWRldGFpbCBhcnRpY2xle1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuXHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcdFxuXHRcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcdFxuXHR9XG5cblx0LnBhZ2UtdGVtcGxhdGUtZGVmYXVsdCBhcnRpY2xlIHtcblxuXHRcdGhlYWRlcntcdFx0XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogMjtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAyO1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDE7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFx0XHRcblx0XHR9XHRcblx0XHQuZW50cnktY29udGVudHtcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDM7XHRcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAyO1xuXHRcdH1cblx0XHQuYmxvY2sucHJvZ3JhbS1saW5re1xuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDI7XG5cdFx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFxuXHRcdH1cblxuXHR9XG5cblx0LyogcGFydG5lciBwYWdpbmEgKi9cblx0XG5cdC5wYWdlLXRlbXBsYXRlLXBhcnRuZXItcGFnZSBzZWN0aW9uLnBhcnRuZXJvdmVydmlld3tcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFx0ICBcdFxuXHQgIFx0QGluY2x1ZGUgZ3JpZC1yZXNldDsgIFxuXHQgIFx0Z3JpZC1hdXRvLWZsb3c6IGNvbHVtbjsgXHRcblxuXHQgIFx0LmludHJvIHtcblx0XHRcdGdyaWQtY29sdW1uOiAyIC8gc3BhbiAyO1xuXHRcdFx0Z3JpZC1yb3c6IDEgLyBzcGFuIDE7XG5cdFx0fVxuXHRcdC5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMSAvIHNwYW4gMTtcblx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1x0XG5cdFx0fVx0ICAgXG5cdH1cblx0LmNzc2dyaWQgLnBhZ2UtdGVtcGxhdGUtcGFydG5lci1wYWdlIHNlY3Rpb24ucGFydG5lcnN7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHQgIFx0Z3JpZC1hdXRvLXJvd3M6IGF1dG87XG5cdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFx0XG5cdCAgXHRncmlkLWF1dG8tZmxvdzogY29sdW1uOyAgIFx0XHQgIFx0XG5cdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXHQgIFxuXG5cdCAgXHQuaW50cm97XG5cdCAgXHRcdGhlaWdodDogMTIwcHg7XG5cdCAgXHR9XHRcdFx0ICAgXG5cblx0XHQvKiBoZXJoYWxlbmQgcGF0cm9vbiB2YW4gMTIgb25kZXJkZWxlbiwgNiBwYXJ0bmVyIHBvc3RzICovXHRcdFxuXHRcdD5kaXZ7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFxuXHRcdH1cblx0XHQvKiAxZSBwYXJ0bmVyIHRodW1iLCAyIGtvbG9tbWVuIGJyZWVkICovXG5cdCAgICA+IGRpdjpudGgtY2hpbGQoMTJuKzEpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcdFx0XHRcdFxuXHRcdFx0bWFyZ2luLWxlZnQ6IDI0MHB4O1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQvKiAxZSBwYXJ0bmVyIGludHJvICovXG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybisyKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XHRcdFx0XHRcblx0XHRcdG1hcmdpbi1sZWZ0OiAyNDBweDtcdFx0XHRcdFx0XG5cdFx0fVx0XHRcblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzMpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFx0XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybis0KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rNSl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzYpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogNCAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybis3KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rOCl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rOSl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XHRcblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzEwKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XHRcblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzExKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rMTIpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFx0XG5cdH1cdFxuXG5cdC8qIElFIGZhbGxiYWNrICovXG5cdC5uby1jc3NncmlkIC5wYWdlLXRlbXBsYXRlLXBhcnRuZXItcGFnZSBzZWN0aW9uLnBhcnRuZXJze1x0XHRcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGhlaWdodDogOTgwcHg7XHRcdFx0XHRcblxuXHRcdD4gZGl2IHtcblx0XHRcdGZsZXg6IDAgMSAyMjBweDtcdFx0XHRcdFxuXHRcdFx0d2lkdGg6IDIyMHB4O1x0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFxuXHRcdC50aHVtYiB7XG5cdFx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdH1cblx0XHQuaW50cm8ge1xuXHRcdFx0aGVpZ2h0OiAxMjBweDtcblx0XHRcdG1heC1oZWlnaHQ6IDEyMHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XHRcdFx0XHRcblx0fVx0XG5cdFxuXG59XG5cblxuIiwiXG4vKiBnZWtsZXVyZGUgYmxva2plcyBtZXQga29ydGUgaW5mbyBkb29yIGRlIGdlaGVsZSBzaXRlICovXG5cbi5ibG9ja3tcblxuXHRoZWlnaHQ6IDIyMHB4O1xuXHR3aWR0aDogMjIwcHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgLyogaXZtIGdla2xldXJkZSBob2VrYmxva2plcyAqL1xuXG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXG5cdGRpdiB7XG5cdFx0Zm9udC1mYW1pbHk6IE9zd2FsZDtcblx0XHRmb250LXNpemU6IGVtKDI0KTtcdFxuXHR9XG59XG5cbkBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdC5ibG9ja3tcblx0XHRoZWlnaHQ6IDgwcHg7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDFweCk7XG5cdFx0bWFyZ2luOjEwcHggMDtcblx0fVxufVxuXG4vKiBJRSBmYWxsYmFjayAqL1xuLm5vLWNzc2dyaWQge1xuXHQuc2luZ2xlIC5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdH1cbn1cblxuLyogcm9vZCBibG9ramUgYm92ZW5hYW4gKi9cbi5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdGJhY2tncm91bmQtY29sb3I6ICRyb29kO1x0XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvbG9nby13aXQuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiA3NnB4IDYycHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDI0cHggMjZweDtcdFxuXG5cdGF7XHRcdFxuXHRcdHBhZGRpbmc6ZW0oMjQpO1xuXG5cdFx0cCB7IFxuXHRcdFx0d2lkdGg6IDk1cHg7XG5cdFx0XHRtYXJnaW4tbGVmdDo4NHB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI5O1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjZweDtcblx0XHR9XG5cblx0XHRkaXZ7XHRcdFx0XHRcdFxuXHRcdFx0Y29sb3I6ICNmZmY7XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdH1cblx0fVxuXHQmOmFmdGVye1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XG5cdH1cdFxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdC5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJG1vYmlsZWJsdWU7XHRcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2xvZ28td2l0LXJvb2RibG9ramUuc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDU5cHggNTBweDtcdFxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDI0cHggMTVweDtcdFxuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRhe1xuXHRcdFx0cGFkZGluZzplbSgxNSk7XHRcdFx0XG5cblx0XHRcdHB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdHdpZHRoOiAyMDBweDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHRcdGRpdntcdFx0XHRcdFx0XG5cdFx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogODNweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG4vKiBvcCBwcm9ncmFtbWFvdmVyemljaHQgKi9cbi5ibG9jay5wcm9ncmFte1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XHRcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9sb2dvLXdpdC1yb29kLWJsb2tqZS5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDc2cHggNjJweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMTlweCAyNnB4O1x0XG5cblx0cCB7IFxuXHRcdHdpZHRoOiA5NXB4O1xuXHRcdG1hcmdpbi1sZWZ0OjExMHB4O1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdFx0Y29sb3I6ICNmZmY7XG5cdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjk7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC42cHg7XG5cdH1cblxuXHRkaXZ7XHRcdFx0XHRcdFxuXHRcdGNvbG9yOiAjZmZmO1x0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdG1hcmdpbi10b3A6NTBweDtcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcblx0XHRmb250LXNpemU6IGVtKDE1KTtcblx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItc21hbGw7XG5cdFx0fVxuXHR9XG5cblx0JjphZnRlcntcblx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1xuXHR9XHRcbn1cblxuQGluY2x1ZGUgYnAobW9iaWxlKXtcblxuXHQuYmxvY2sucHJvZ3JhbXtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbW9iaWxlYmx1ZTtcdFxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvbG9nby13aXQtcm9vZGJsb2tqZS5zdmcpO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogNTlweCA1MHB4O1x0XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMjRweCAxNXB4O1x0XHRcdFx0XG5cblx0XHRwe1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHdpZHRoOiAyMTBweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwM3B4O1xuXHRcdFx0cGFkZGluZy10b3A6IDExcHg7XG5cdFx0XHRmb250LXNpemU6IGVtKDEzKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0fVxuXG5cdFx0ZGl2e1x0XHRcdFx0XHRcblx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDgzcHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtMTBweDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblxuXHRcdFx0LnZhbmFmdGlqZHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItbW9iaWxlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0fVxuXG59XG5cblxuXG5cbi5ibG9jay5wcm9ncmFtLW92ZXJ2aWV3e1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XHRcblxuXHRhe1xuXHRcdHBhZGRpbmc6ZW0oMjApO1xuXHR9XG5cblx0ZGl2IHtcblx0XHRjb2xvcjojZmZmO1xuXHRcdHBhZGRpbmctdG9wOiBlbSg0NCk7XG5cdH1cblxuXHQmOmJlZm9yZXtcblx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1x0XHRcblx0fVxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcblx0LmJsb2NrLnByb2dyYW0tb3ZlcnZpZXd7XG5cblx0XHRkaXZ7XG5cdFx0XHRwYWRkaW5nLXRvcDowO1xuXHRcdH1cblx0XHRcblx0fVxuXG59XG5cbi5ibG9jay5uZXdzLWxpbmt7XHRcblx0YmFja2dyb3VuZC1jb2xvcjogJGdlZWw7XG5cdGNvbG9yOiAjZmZmO1xuXG5cdGF7XG5cdFx0cGFkZGluZzplbSgyMCk7XG5cdH1cblxuXHRkaXYge1xuXHRcdGNvbG9yOiMwMDA7XG5cdFx0cGFkZGluZy10b3A6IGVtKDQ0KTtcblx0fVxuXG5cdCY6YmVmb3Jle1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XHRcdFxuXHR9XG5cdFxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdC5ibG9jay5uZXdzLWxpbmsge1xuXHRcdG1hcmdpbjoxMHB4IDA7XG5cblx0XG5cdFx0ZGl2e1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXHR9XG59XG5cbi5ibG9jay5uZXdzLW1vcmV7XHRcblx0YmFja2dyb3VuZC1jb2xvcjogJHJvb2Q7XHRcdFxuXHRwYWRkaW5nOmVtKDIwKTtcdFxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0bWFyZ2luLXRvcDotMTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cblx0ZGl2IHtcblx0XHRjb2xvcjojZmZmO1xuXHRcdHBhZGRpbmctdG9wOiBlbSg0NCk7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0cGFkZGluZy10b3A6MDtcblx0XHR9XG5cdH1cblxuXHQmOmJlZm9yZXtcblx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1x0XHRcblx0fVxuXHRcbn1cblxuLyogcHJvZ3JhbW1hIGRldGFpbCBpbmZvIG9wIG1vYmllbCAqL1xuXG4uc2luZ2xlIGFydGljbGUgLmVudHJ5LWNvbnRlbnQgLm1vYmlsZS1pbmZvIHtcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi10b3A6IDEwcHg7XHRcblxuXHRkaXZ7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7IC8qIHJlc2V0IGl2bSBhbmRlcmUgZGl2cyBpbiBibG9ja3MgKi9cblx0fVxuXG5cdC5pbmZvIHtcblx0XHRwYWRkaW5nOjA7XHRcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRcblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XHRcdFxuXHRcdH1cblxuXHRcdHB7XG5cdFx0XHRjb2xvcjokZG9ua2VyYmxhdXc7XHRcdFxuXHRcdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFxuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMC43cHg7ICBcdFx0XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNXB4O1x0XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMnB4O1x0XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cblx0XHRcdD4gc3BhbjpmaXJzdC1vZi10eXBle1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcdFxuXHRcdFx0fVx0XHRcblx0XHR9XHRcblxuXHRcdHA6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdHRvcDogLTVweDtcdFxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHRwOm5vdCg6Zmlyc3Qtb2YtdHlwZSk6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1zbWFsbC1ibHVlO1x0XHRcdFxuXHRcdH1cdFx0XG5cdFx0XHRcdFxuXHR9XG5cblx0YS5hYW5tZWxkZW57XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luOjEwcHggMCAyMHB4IDA7XG5cdFx0aGVpZ2h0OiAzMnB4O1x0XG5cdFx0bWF4LXdpZHRoOiAzMDBweDtcblx0XHRwYWRkaW5nOiA1cHggMzBweDtcdFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMzMsIDE4MSwgMjE3LCAwLjQpOztcblx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1x0XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1xuXHRcdH1cblx0fVxuXG59XG5cbi8qIHByb2dyYW1tYSBkZXRhaWwgcGFnaW5hIGJsb2NrIG1ldGFkYXRhKi9cblxuLmJsb2NrLmV2ZW50LW1ldGFkYXRhe1x0XHRcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHRcblxuXHRkaXZ7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7IC8qIHJlc2V0IGl2bSBhbmRlcmUgZGl2cyBpbiBibG9ja3MgKi9cblx0fVxuXG5cdC5pbmZve1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0cGFkZGluZzogZW0oMjMpIGVtKDIwKTtcdFxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XHRcdFxuXHRcdH1cblxuXHRcdHB7XG5cdFx0XHRjb2xvcjojZmZmO1x0XHRcblx0XHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTUpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDAuOHB4OyAgXHRcdFxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IC41ZW07XHRcblxuXHRcdFx0PiBzcGFuOmZpcnN0LW9mLXR5cGV7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1x0XG5cdFx0XHR9XG5cdFx0XHRcdFxuXHRcdH1cdFxuXHRcdHA6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdG1hcmdpbi10b3A6IDA7XHRcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1x0XHRcdFx0XHRcblx0XHR9XG5cdFx0cDpub3QoOmZpcnN0LW9mLXR5cGUpOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItc21hbGw7XHRcdFx0XG5cdFx0fVxuXHRcdHA6bGFzdC1vZi10eXBle1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XHRcblx0fVx0XHRcblxuXHRkaXYubG9jYXRpZV9pbWd7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcdFx0XG5cdH1cblxuXHRhLmFhbm1lbGRlbntcblx0XHRoZWlnaHQ6IDQwcHg7XHRcblx0XHRwYWRkaW5nOiBlbSg3KSBlbSgxMSk7XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdlZWw7XG5cdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblx0XHRmb250LXNpemU6IGVtKDE2KTtcdFxuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1xuXHRcdH1cblx0fVxuXHRcbn1cblxuLnRpamRlbiBzcGFuLFxuLmxvY2F0aWVzIHNwYW57XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiQGltcG9ydCBcImJ1dHRvbnNcIjtcblxuQGltcG9ydCBcImZpZWxkc1wiO1xuIiwiYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRib3JkZXI6IDFweCBzb2xpZDtcblx0Ym9yZGVyLWNvbG9yOiAkY29sb3JfX2JvcmRlci1idXR0b247XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1idXR0b247XG5cdGNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuNzUpO1xuXHRsaW5lLWhlaWdodDogMTtcblx0cGFkZGluZzogLjZlbSAxZW0gLjRlbTtcblxuXHQmOmhvdmVyIHtcblx0XHRib3JkZXItY29sb3I6ICRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1ob3Zlcjtcblx0fVxuXG5cdCY6YWN0aXZlLFxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXItY29sb3I6ICRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1mb2N1cztcblx0fVxufVxuIiwiaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInJhbmdlXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxudGV4dGFyZWEge1xuXHRjb2xvcjogJGNvbG9yX190ZXh0LWlucHV0O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2JvcmRlci1pbnB1dDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRwYWRkaW5nOiAzcHg7XG5cblx0Jjpmb2N1cyB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1pbnB1dC1mb2N1cztcblx0fVxufVxuXG5zZWxlY3Qge1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2JvcmRlci1pbnB1dDtcbn1cblxudGV4dGFyZWEge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJsaW5rc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBNZW51c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1lbnVzXCI7XG4iLCJhIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluaztcblxuXHQmOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAkY29sb3JfX2xpbmstdmlzaXRlZDtcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluay1ob3Zlcjtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiAycHggc29saWQgJGxpY2h0YmxhdXc7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IC0ycHg7XHRcdFxuXHR9XG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlIHtcblx0XHRvdXRsaW5lOiAwO1xuXHR9XG59XG4iLCIubWFpbi1uYXZpZ2F0aW9uIHtcdFxuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFxuXHRcbiAgICBAaW5jbHVkZSBicChkZXNrdG9wKXtcbiAgICBcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMDBweCk7XG5cdFx0ZmxvYXQ6IGxlZnQ7XHRcbiAgICB9XHRcblxuXHR1bCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XHRcblx0XHRjbGVhcjogYm90aDtcblxuXHRcdGxpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdFx0XHRsaW5lLWhlaWdodDogMy41O1xuXHRcdFx0cGFkZGluZzogMCAxNXB4O1x0XHRcblx0XHR9XHRcblxuXHRcdHVsIHtcblx0XHRcdGJveC1zaGFkb3c6IDAgM3B4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMTAwJTtcblx0XHRcdGxlZnQ6IC05OTllbTtcblx0XHRcdHotaW5kZXg6IDk5OTk5O1xuXG5cdFx0XHR1bCB7XG5cdFx0XHRcdGxlZnQ6IC05OTllbTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cblx0XHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJ1bGxldC1ibG9jaygkbGljaHRibGF1dyk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBidWxsZXQtYmxvY2soJHJvb2QpO1xuXHRcdFx0XHRcdFx0fVx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmhvdmVyID4gdWwsXG5cdFx0XHRcdCYuZm9jdXMgPiB1bCB7XG5cdFx0XHRcdFx0bGVmdDogMTAwJTtcblx0XHRcdFx0fVx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHR3aWR0aDogMjAwcHg7XHRcdFx0XHRcblx0XHRcdH1cdFx0XHRcblx0XHRcdFxuXHRcdFx0XG5cdFx0fVxuXHRcdC8qIElFMTEgd2l0aCAubm8tZm9jdXN3aXRoaW4gKi9cblx0XHRsaTpob3ZlciA+IHVsLFxuXHRcdGxpLmZvY3VzID4gdWwsXG5cdFx0bGk6Zm9jdXMgPiB1bCxcblx0XHRsaTpmb2N1cy13aXRoaW4gPiB1bCB7XG5cdFx0XHRsZWZ0OiBhdXRvO1x0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdFxuXHR9XG5cdFxuXHRAaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XHQubWVudSA+IGxpOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbik6aG92ZXJ7XHRcdFxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBtZW51LWJvdHRvbS1ib3JkZXItc21hbGw7XG5cdFx0XHR9XHRcdFx0XHRcblx0XHR9XG5cdH1cblx0XG5cdFxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6JGRvbmtlcmJsYXV3O1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG5cdFx0cGFkZGluZzouNGVtO1x0XHRcblx0fVxuXG5cblx0Lm1lbnUgPiAuY3VycmVudF9wYWdlX2l0ZW0gPiBhLFxuXHQubWVudSA+IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG5cdC5tZW51ID4gLmN1cnJlbnRfcGFnZV9hbmNlc3RvciA+IGEsXG5cdC5tZW51ID4gLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEge1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBtZW51LWJvdHRvbS1ib3JkZXItc21hbGw7XG5cdFx0XHR9XHRcblx0XHR9XHRcblx0fVxufVxuXG4ubm8tZm9jdXN3aXRoaW4gLm1haW4tbmF2aWdhdGlvbiB1bHtcblx0bGk6aG92ZXIgPiB1bCxcblx0bGk6Zm9jdXMgPiB1bHtcblx0XHRsZWZ0OmF1dG87XG5cdH1cbn1cblxuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcdFxuXG5cdG5hdltyb2xlPVwic2VhcmNoXCJde1x0XG5cdFx0d2lkdGg6IDUwcHg7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1x0XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHRcblxuXHRcdC8qIHNlYXJjaCBpY29uICovXG5cdFx0YnV0dG9uLnNlYXJjaC10b2dnbGUge1x0XHRcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvbG9lcC5zdmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1x0XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiA3NXB4O1x0XHRcblx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcblx0XHR9XG5cdH1cblxufVxuLyogU21hbGwgbWVudS4gKi9cbi5tZW51LXRvZ2dsZSxcbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCB1bCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQuc2l0ZS1oZWFkZXJ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Lm1lbnUtdG9nZ2xle1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjMwcHg7XG5cdFx0XHRyaWdodDogMTBweDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjdweCAxOHB4O1xuXHRcdFx0d2lkdGg6IDI3cHg7XG5cdFx0XHRoZWlnaHQ6IDE4cHg7XHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0Lm1vYmlsZS1zZWFyY2gtYWN0aXZlIC5zaXRlLWhlYWRlcntcdFx0XG5cblx0XHQubWVudS10b2dnbGV7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybChpbWcvY2xvc2UtYnV0dG9uLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblxuXHRcdH1cblxuXHRcdG5hdltyb2xlPVwic2VhcmNoXCJde1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjcwcHg7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMzNzczYTA7XHRcdFxuXHRcdFx0aGVpZ2h0OiA0MHB4O1x0XG5cblx0XHRcdC5zZWFyY2gtZmllbGR7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHR3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0Y29sb3I6d2hpdGU7XG5cdFx0XHRcdHBhZGRpbmc6IDdweCA0MHB4IDBweCA0MHB4O1xuXG5cdFx0XHRcdCY6OnBsYWNlaG9sZGVyLCBcblx0ICAgIFx0XHQmOnBsYWNlaG9sZGVyLXNob3due1xuXHRcdCAgICBcdFx0Y29sb3I6d2hpdGU7XG5cdFx0ICAgIFx0XHRvcGFjaXR5OiAxO1xuXHRcdCAgICBcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XHRcdFx0XHRcdFxuXHRcdCAgICBcdH0gICBcblx0XHRcdH1cdFx0ICAgIFx0XHRcblx0XHQgICAgXHQgXHRcblx0XHRcdC5zZWFyY2gtc3VibWl0e1xuXHRcdFx0XHR3aWR0aDogNDBweDtcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvbG9lcC13aXQuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IDE4cHg7XG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWR7XG5cdFx0bWFyZ2luLXRvcDogNDVweDtcdFx0XG5cdFx0XG5cdFx0bGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGF7XG5cdFx0XHRkaXNwbGF5OiBub25lOyAvKiBvbmx5IHNob3cgY2hpbGRyZW4gKi9cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRmbG9hdDpub25lO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdHVsLnN1Yi1tZW51e1xuXHRcdFx0XHRmbG9hdDpub25lO1x0XHRcdFx0XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHRsaXtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdFx0bWFyZ2luOjA7XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGxpe1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdFx0XHRwYWRkaW5nOjA7XHRcdFx0XHRcblxuXHRcdFx0XHRhe1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjc1O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCA0MHB4O1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvKiBvcCBtb2JpZWwgbGlqa3QgYWxsZXMgb3AgaGV0emVsZmRlIG5pdmVhdSB0ZSBzdGFhbiwgY2xhc3MgdG9ldm9lZ2VuIGluIHdwIG1lbnUgKi9cblxuXHRcdGxpLmV2ZW4ge1xuXHRcdFx0IGJhY2tncm91bmQtY29sb3I6ICNEQUU5RjQ7XHRcdCBcdFx0IFxuXHRcdH1cblx0XG5cdH1cdFxufVxuXG5cbi8qIHZpc2libGUgb24gbW9iaWxlIGFuZCB3aGVuIHNlYXJjaCBpcyBhY3RpdmUgKi9cbmJ1dHRvbi5tZW51LXRvZ2dsZXtcblx0YmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoaW1nL21lbnUtdG9nZ2xlLnN2ZykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMjFweCAxNHB4O1xuXHR3aWR0aDogMjFweDtcblx0aGVpZ2h0OiAxNHB4O1x0XG5cdGJvcmRlcjpub25lO1xuXHRib3JkZXItcmFkaXVzOiAwO1x0XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdC5tZW51LXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQvKiBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHQgb25seSBtYWluIG5hdiB0b2dnbGUgaXMgdmlzaWJsZSAqL1xuXHQuc2VhcmNoLXRvZ2dsZXtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdFxuXHQvKiBzZWFyY2ggYWN0aXZhdGVkIHRvZ2V0aGVyIHdpdGggdGhlIG1haW4gbmF2ICovXG5cdC5tb2JpbGUtc2VhcmNoLWFjdGl2ZSB7XG5cdFx0LnNlYXJjaC1maWVsZCxcblx0XHQuc2VhcmNoLXN1Ym1pdHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4vKiBtYWluIG5hdmlnYXRpb24gaXMgYWxzbyBjb2xsYXBzZWQgaWYgc2VhcmNoIGlzIGFjdGl2ZSAqL1xuXG4vKiBzZWFyY2ggc3VibWl0IGJ1dHRvbiBieSBkZWZhdWx0IGhpZGRlbiAqL1xuLnNlYXJjaC1maWVsZCwuc2VhcmNoLXN1Ym1pdHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi8qIHdoZW4gc2VhcmNoIGljb24gaXMgY2xpY2tlZCwgc2VhcmNoIGlucHV0IGFuZCBzdWJtaXQgaXMgdmlzaWJsZSAqL1xuI3BhZ2Uuc2VhcmNoLWFjdGl2ZXtcblxuXHQubWVudS10b2dnbGUsXG5cdC5zZWFyY2gtZmllbGQsXG5cdC5zZWFyY2gtc3VibWl0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5tYWluLW5hdmlnYXRpb257XG5cdFx0bWFyZ2luLXRvcDogMjVweDtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsLFxuXHQuc2VhcmNoLXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdG5hdltyb2xlPVwic2VhcmNoXCJde1xuXHRcdHdpZHRoOiA2NTBweDtcdFx0XG5cdH1cblx0XG5cdC8qIG1lbnUgdG9nZ2xlIGljb24gKi9cblx0YnV0dG9uLm1lbnUtdG9nZ2xle1x0XHRcblx0XHRmbG9hdDogbGVmdDtcdFxuXHRcdG1hcmdpbi10b3A6MzRweDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQuc2VhcmNoLWZvcm17XHRcblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFx0XG5cblx0XHRAaW5jbHVkZSBicChkZXNrdG9wKSB7XG5cdFx0ICAgIHdpZHRoOiA2NTBweDtcblx0XHQgICAgXG5cdFx0ICAgbGFiZWwgaW5wdXR7XG5cdFx0ICAgIFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHQgICAgXHRcblx0XHQgICAgXHRwYWRkaW5nOiA1cHg7XG5cblx0XHQgICAgXHQmLnNlYXJjaC1maWVsZHtcblx0XHQgICAgXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBcdFx0d2lkdGg6NjUwcHg7XG5cdFx0ICAgIFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0ICAgIFx0XHRwYWRkaW5nOjVweCAxMHB4O1xuXHRcdCAgICBcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdCAgICBcdFx0Ym9yZGVyOm5vbmU7XG5cdFx0ICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEzMywgMTgxLCAyMTcsIDAuMyk7XG5cdFx0ICAgIFx0fVx0XHRcblxuXHRcdCAgICBcdCY6OnBsYWNlaG9sZGVyLCBcblx0XHQgICAgXHQmOnBsYWNlaG9sZGVyLXNob3due1xuXHRcdCAgICBcdFx0Y29sb3I6JGRvbmtlcmJsYXV3O1xuXHRcdCAgICBcdFx0b3BhY2l0eTogMTtcblx0XHQgICAgXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1x0XHRcdFx0XHRcblx0XHQgICAgXHR9ICAgXG5cdFx0ICAgIFx0XG5cdFx0ICAgIH1cblxuXHRcdCAgICBpbnB1dC5zZWFyY2gtc3VibWl0e1xuXHQgICAgXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvbG9lcC5zdmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1x0XG5cdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDE4cHg7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuXHRcdFx0XHRib3JkZXI6bm9uZTtcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOjVweDtcblx0XHRcdFx0cmlnaHQ6IDVweDtcblx0ICAgIFx0fVxuXHRcdH1cblx0fVxuXG59XG5cbi8qIHdoZW4gb24gdGhlIHNlYXJjaCByZXN1bHRzIHBhZ2UsIGVsZW1lbnRzIG5vdCB2aXNpYmxlIGFueW1vcmUgaW4gdGhlIGhlYWRlciwgb25seSB0aGUgcGFnZSBjb250ZW50ICovXG5ib2R5LnNlYXJjaHtcblx0LnBhZ2UtY29udGVudCB7XG5cdFx0LnNlYXJjaC1maWVsZCxcblx0XHQuc2VhcmNoLXN1Ym1pdHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4uY29tbWVudC1uYXZpZ2F0aW9uLFxuLnBvc3RzLW5hdmlnYXRpb24sXG4ucG9zdC1uYXZpZ2F0aW9uIHtcblxuXHQuc2l0ZS1tYWluICYge1xuXHRcdG1hcmdpbjogMCAwIDEuNWVtO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQubmF2LXByZXZpb3VzIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG5cblx0Lm5hdi1uZXh0IHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2lkdGg6IDUwJTtcblx0fVxufVxuIiwiLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG5cblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuXHRcdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0XHRjbGlwLXBhdGg6IG5vbmU7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1zY3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDAuODc1KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdFx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRvcDogNXB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cblx0fVxufVxuXG4vKiBEbyBub3Qgc2hvdyB0aGUgb3V0bGluZSBvbiB0aGUgc2tpcCBsaW5rIHRhcmdldC4gKi9cbiNjb250ZW50W3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuXHRvdXRsaW5lOiAwO1xufVxuXG5cbi5za2lwLWxpbms6Zm9jdXN7XG5cdGZvbnQtZmFtaWx5OiBSb2JvdG87XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRjb2xvcjokZG9ua2VyYmxhdXc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0b3V0bGluZToycHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRib3JkZXI6bm9uZTtcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogbm9uZTtcblx0cGFkZGluZzouNWVtO1xuXHRtYXJnaW46MWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiIsIi5hbGlnbmxlZnQge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4uYWxpZ25yaWdodCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG5cdGNsZWFyOiBib3RoO1xuXHRAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4iLCIuY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YmVmb3JlLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtY29udGVudDpiZWZvcmUsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmJlZm9yZSxcbi5zaXRlLWZvb3RlcjphZnRlciB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcblx0QGluY2x1ZGUgY2xlYXJmaXgtYWZ0ZXI7XG59XG4iLCIud2lkZ2V0IHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cblx0LyogTWFrZSBzdXJlIHNlbGVjdCBlbGVtZW50cyBmaXQgaW4gd2lkZ2V0cy4gKi9cblx0c2VsZWN0IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cbn1cbiIsIi8vIEBpbXBvcnQgXCIuLi9sYXlvdXQvY29udGVudC1zaWRlYmFyXCI7XG4vLyBAaW1wb3J0IFwiLi4vbGF5b3V0L3NpZGViYXItY29udGVudFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBQb3N0cyBhbmQgcGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJwcmltYXJ5L3Bvc3RzLWFuZC1wYWdlc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInByaW1hcnkvY29tbWVudHNcIjtcbiIsIi5zdGlja3kge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmhlbnRyeSB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG4udXBkYXRlZDpub3QoLnB1Ymxpc2hlZCkge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZS1jb250ZW50LFxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSB7XG5cdG1hcmdpbjogMS41ZW0gMCAwO1x0XG59XG5cbi5wYWdlLWxpbmtzIHtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuIiwiLmNvbW1lbnQtY29udGVudCBhIHtcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xufVxuLmJ5cG9zdGF1dGhvciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLyogR2xvYmFsbHkgaGlkZGVuIGVsZW1lbnRzIHdoZW4gSW5maW5pdGUgU2Nyb2xsIGlzIHN1cHBvcnRlZCBhbmQgaW4gdXNlLiAqL1xuLmluZmluaXRlLXNjcm9sbCAucG9zdHMtbmF2aWdhdGlvbiwgLyogT2xkZXIgLyBOZXdlciBQb3N0cyBOYXZpZ2F0aW9uIChhbHdheXMgaGlkZGVuKSAqL1xuLmluZmluaXRlLXNjcm9sbC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIgeyAvKiBUaGVtZSBGb290ZXIgKHdoZW4gc2V0IHRvIHNjcm9sbGluZykgKi9cblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogV2hlbiBJbmZpbml0ZSBTY3JvbGwgaGFzIHJlYWNoZWQgaXRzIGVuZCB3ZSBuZWVkIHRvIHJlLWRpc3BsYXkgZWxlbWVudHMgdGhhdCB3ZXJlIGhpZGRlbiAodmlhIC5uZXZlcmVuZGluZykgYmVmb3JlLiAqL1xuLmluZmluaXR5LWVuZC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi5wYWdlLWNvbnRlbnQgLndwLXNtaWxleSxcbi5lbnRyeS1jb250ZW50IC53cC1zbWlsZXksXG4uY29tbWVudC1jb250ZW50IC53cC1zbWlsZXkge1xuXHRib3JkZXI6IG5vbmU7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdG1hcmdpbi10b3A6IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qIE1ha2Ugc3VyZSBlbWJlZHMgYW5kIGlmcmFtZXMgZml0IHRoZWlyIGNvbnRhaW5lcnMuICovXG5lbWJlZCxcbmlmcmFtZSxcbm9iamVjdCB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogTWFrZSBzdXJlIGxvZ28gbGluayB3cmFwcyBhcm91bmQgbG9nbyBpbWFnZS4gKi9cbi5jdXN0b20tbG9nby1saW5rIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDYXB0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImNhcHRpb25zXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIEdhbGxlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImdhbGxlcmllc1wiO1xuIiwiLndwLWNhcHRpb24ge1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXG5cdGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuXHRcdEBpbmNsdWRlIGNlbnRlci1ibG9jaztcblx0fVxuXG5cdC53cC1jYXB0aW9uLXRleHQge1xuXHRcdG1hcmdpbjogMC44MDc1ZW0gMDtcblx0fVxufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLmdhbGxlcnkge1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLmdhbGxlcnktaXRlbSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHR3aWR0aDogMTAwJTtcblxuXHQvLyBMb29wcyB0byBlbnVtZXJhdGUgdGhlIGNsYXNzZXMgZm9yIGdhbGxlcnkgY29sdW1ucy5cblx0QGZvciAkaSBmcm9tIDIgdGhyb3VnaCA5IHtcblx0XHQuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9ICYge1xuXHRcdFx0bWF4LXdpZHRoOiBtYXAtZ2V0KCAkY29sdW1ucywgJGkgKTtcblx0XHR9XG5cdH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW9CRTtBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0VBcUJnRTtBRXRCekMseUNBQXlDO0FBQzFDLHlCQUF5QjtBQUMvQiw0QkFBNEI7QUFDNUIsNEJBQTRCO0FDbEI1Qzs7Ozs7Ozs7RUFRRTtBR2dCRixpRUFBaUU7QUFPakUseUNBQXlDO0FBa0N6QyxpREFBaUQ7QUFjakQsd0JBQXdCO0FBb0J4QiwrQkFBK0I7QUFVL0IsWUFBWTtBQVdaLG1CQUFtQjtBQW9CbkIsd0NBQXdDO0FBVXhDLHVDQUF1QztBQVd2Qyw4QkFBOEI7QUFXOUIsZ0NBQWdDO0FBV2hDLG1DQUFtQztBQVduQyx3QkFBd0I7QUE2QnhCLDBDQUEwQztBQVUxQyxvREFBb0Q7QUFVcEQsNENBQTRDO0FBVTVDLHFEQUFxRDtBQVVyRCw0Q0FBNEM7QUFXNUMsaUNBQWlDO0FOek9qQzs7Z0VBRWdFO0FPakRoRSw0RUFBNEU7QUFFNUU7K0VBQytFO0FBRS9FOzs7R0FHRztBQUVILEFBQUEsSUFBSSxDQUFDO0VBQ0osV0FBVyxFQUFFLElBQUk7RUFBRSxPQUFPO0VBQzFCLHdCQUF3QixFQUFFLElBQUk7RUFBRSxPQUFPLEVBQ3ZDOztBQUVEOytFQUMrRTtBQUUvRTs7R0FFRztBQUVILEFBQUEsSUFBSSxDQUFDO0VBQ0osTUFBTSxFQUFFLENBQUMsR0FDVDs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLEVB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 */