/*!
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 cascadeplein-buiten en digitaal */
/* locatie zuiderhaven */
/* locatie cascadeplein 4 */
/* locatie cascadeplein 6 en provincie */
/* locatie cascadeplein 9 en stad */
/*

    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 {
  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 {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

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

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

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

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

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

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

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

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

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

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

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

/*--------------------------------------------------------------
# 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 p img {
    padding-bottom: 1.5em; }
  .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 {
  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/ */
  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 {
      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-header.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.cascadeplein-buiten: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-6:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #ffed00;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.cascadeplein-10:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #52ae33;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.zuiderhaven:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #85b5d9;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.digitaal:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #0f283a;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.stad:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #ffed00;
    position: absolute;
    bottom: 0;
    right: 0; }
  .intro.provincie:after {
    content: '';
    width: 20px;
    height: 20px;
    background-color: #52ae33;
    position: absolute;
    bottom: 0;
    right: 0; }
  @media (max-width: 960px) {
    .intro.cascadeplein-buiten: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-6:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.cascadeplein-10:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #52ae33;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.zuiderhaven:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #85b5d9;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.digitaal:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.stad:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      bottom: 0;
      right: 0; }
    .intro.provincie:after {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #52ae33;
      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_2020.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, .page-template-program-page-month {
  /* filters */
  /* tijdstip filter */ }
  .search-results .program h1, .page-template-program-page .program h1, .page-template-program-page-month .program h1 {
    margin-top: 0; }
    @media (max-width: 960px) {
      .search-results .program h1, .page-template-program-page .program h1, .page-template-program-page-month .program h1 {
        text-transform: uppercase;
        font-size: 1.125em; } }
  .search-results .filter, .page-template-program-page .filter, .page-template-program-page-month .filter {
    padding-top: 30px; }
  .search-results .facetwp-counter, .page-template-program-page .facetwp-counter, .page-template-program-page-month .facetwp-counter {
    display: none; }
  .search-results .filter button, .page-template-program-page .filter button, .page-template-program-page-month .filter button {
    display: block;
    width: 220px;
    height: 30px;
    border: none;
    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;
    text-align: left;
    padding: 0;
    color: #0f283a; }
    @media (max-width: 960px) {
      .search-results .filter button, .page-template-program-page .filter button, .page-template-program-page-month .filter button {
        width: calc(100% - 10px); } }
  .search-results .facetwp-checkbox, .page-template-program-page .facetwp-checkbox, .page-template-program-page-month .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, .page-template-program-page-month .facetwp-checkbox:before {
      content: '';
      width: 18px;
      height: 18px;
      border: 1px solid #0f283a;
      position: absolute;
      top: 3px;
      left: 0; }
  .search-results .facetwp-checkbox.checked, .page-template-program-page .facetwp-checkbox.checked, .page-template-program-page-month .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, .page-template-program-page-month .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-6"]:after, .page-template-program-page .facetwp-checkbox[data-value="cascadeplein-6"]:after, .page-template-program-page-month .facetwp-checkbox[data-value="cascadeplein-6"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #ffed00;
    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, .page-template-program-page-month .facetwp-checkbox[data-value="cascadeplein-10"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #52ae33;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="cascadeplein-buiten"]:after, .page-template-program-page .facetwp-checkbox[data-value="cascadeplein-buiten"]:after, .page-template-program-page-month .facetwp-checkbox[data-value="cascadeplein-buiten"]: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, .page-template-program-page-month .facetwp-checkbox[data-value="zuiderhaven"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #85b5d9;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="stad"]:after, .page-template-program-page .facetwp-checkbox[data-value="stad"]:after, .page-template-program-page-month .facetwp-checkbox[data-value="stad"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #ffed00;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="provincie"]:after, .page-template-program-page .facetwp-checkbox[data-value="provincie"]:after, .page-template-program-page-month .facetwp-checkbox[data-value="provincie"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #52ae33;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .facetwp-checkbox[data-value="digitaal"]:after, .page-template-program-page .facetwp-checkbox[data-value="digitaal"]:after, .page-template-program-page-month .facetwp-checkbox[data-value="digitaal"]:after {
    content: '';
    width: 20px;
    height: 20px;
    background: #0f283a;
    position: absolute;
    bottom: 3px;
    right: 0; }
  .search-results .filter.active button, .page-template-program-page .filter.active button, .page-template-program-page-month .filter.active button {
    background-image: url(/wp-content/themes/dgg/img/chevron-up.svg); }
  .search-results .facetwp-facet, .page-template-program-page .facetwp-facet, .page-template-program-page-month .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, .page-template-program-page-month .facetwp-facet select, .page-template-program-page-month .facetwp-facet select:focus, .page-template-program-page-month .facetwp-facet select:active {
      border: none;
      width: 100%;
      padding: 0; }
    @media (max-width: 960px) {
      .search-results .facetwp-facet, .page-template-program-page .facetwp-facet, .page-template-program-page-month .facetwp-facet {
        width: calc(100% - 10px); } }
  .search-results #timeoptions, .page-template-program-page #timeoptions, .page-template-program-page-month #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, .page-template-program-page-month #timeoptions {
        width: calc(100% - 10px); } }
  .search-results .timetarget, .page-template-program-page .timetarget, .page-template-program-page-month .timetarget {
    cursor: pointer;
    font-size: 1em;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 4px; }
  .search-results button.reset, .page-template-program-page button.reset, .page-template-program-page-month 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, .page-template-program-page-month button.reset:hover, .page-template-program-page-month button.reset:focus {
      background-color: #0f283a;
      color: white; }
    @media (max-width: 960px) {
      .search-results button.reset, .page-template-program-page button.reset, .page-template-program-page-month button.reset {
        margin-left: 0; } }
  .search-results .time-divider, .page-template-program-page .time-divider, .page-template-program-page-month .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, .page-template-program-page-month .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, .page-template-program-page-month .event-overview-single {
    background-color: #f9f9f9;
    padding: 1em 1.25em;
    position: relative; }
    .search-results .event-overview-single.cascadeplein-buiten:before, .page-template-program-page .event-overview-single.cascadeplein-buiten:before, .page-template-program-page-month .event-overview-single.cascadeplein-buiten: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, .page-template-program-page-month .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-6:before, .page-template-program-page .event-overview-single.cascadeplein-6:before, .page-template-program-page-month .event-overview-single.cascadeplein-6:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-10:before, .page-template-program-page .event-overview-single.cascadeplein-10:before, .page-template-program-page-month .event-overview-single.cascadeplein-10:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #52ae33;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.zuiderhaven:before, .page-template-program-page .event-overview-single.zuiderhaven:before, .page-template-program-page-month .event-overview-single.zuiderhaven:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #85b5d9;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.stad:before, .page-template-program-page .event-overview-single.stad:before, .page-template-program-page-month .event-overview-single.stad:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #ffed00;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.provincie:before, .page-template-program-page .event-overview-single.provincie:before, .page-template-program-page-month .event-overview-single.provincie:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #52ae33;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.digitaal:before, .page-template-program-page .event-overview-single.digitaal:before, .page-template-program-page-month .event-overview-single.digitaal:before {
      content: '';
      width: 10px;
      height: 10px;
      background-color: #0f283a;
      position: absolute;
      top: 0;
      left: 0; }
    .search-results .event-overview-single.cascadeplein-buiten .locaties:before, .page-template-program-page .event-overview-single.cascadeplein-buiten .locaties:before, .page-template-program-page-month .event-overview-single.cascadeplein-buiten .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, .page-template-program-page-month .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-6 .locaties:before, .page-template-program-page .event-overview-single.cascadeplein-6 .locaties:before, .page-template-program-page-month .event-overview-single.cascadeplein-6 .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #ffed00;
      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, .page-template-program-page-month .event-overview-single.cascadeplein-10 .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #52ae33;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.zuiderhaven .locaties:before, .page-template-program-page .event-overview-single.zuiderhaven .locaties:before, .page-template-program-page-month .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.stad .locaties:before, .page-template-program-page .event-overview-single.stad .locaties:before, .page-template-program-page-month .event-overview-single.stad .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #ffed00;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.provincie .locaties:before, .page-template-program-page .event-overview-single.provincie .locaties:before, .page-template-program-page-month .event-overview-single.provincie .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #52ae33;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single.digitaal .locaties:before, .page-template-program-page .event-overview-single.digitaal .locaties:before, .page-template-program-page-month .event-overview-single.digitaal .locaties:before {
      content: '';
      width: 20px;
      height: 2px;
      background-color: #0f283a;
      position: absolute;
      top: -5px;
      left: 0; }
    .search-results .event-overview-single a, .page-template-program-page .event-overview-single a, .page-template-program-page-month .event-overview-single a {
      text-decoration: none;
      color: #0f283a;
      height: 100%;
      display: flex;
      flex-direction: column; }
    .search-results .event-overview-single h3, .page-template-program-page .event-overview-single h3, .page-template-program-page-month .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, .page-template-program-page-month .event-overview-single .cat {
      font-size: 0.75em; }
    .search-results .event-overview-single .meta, .page-template-program-page .event-overview-single .meta, .page-template-program-page-month .event-overview-single .meta {
      font-size: 0.75em;
      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, .page-template-program-page-month .event-overview-single .meta .tijden span {
        display: block; }
      .search-results .event-overview-single .meta .locaties, .page-template-program-page .event-overview-single .meta .locaties, .page-template-program-page-month .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, .page-template-program-page-month .event-overview-single .meta .locaties span {
          display: block; }
    @media (max-width: 960px) {
      .search-results .event-overview-single, .page-template-program-page .event-overview-single, .page-template-program-page-month .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; }
      .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 {
            max-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 !important; }
  #main .supsystic-social-sharing a.social-sharing-button.sharer-flat.facebook:focus {
    background-color: #2d4373 !important;
    outline: 2px solid #0f283a;
    outline-offset: -2px; }
  #main .supsystic-social-sharing a.social-sharing-button.sharer-flat.twitter:focus {
    background-color: #55acee !important;
    outline: 2px solid #0f283a;
    outline-offset: -2px; }

/* 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/logo-footer.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/logo-footer.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: flex;
    margin-top: 40px; }
    footer.site-footer .social a {
      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 {
    grid-column-start: 4;
    grid-column-end: span 1;
    grid-row-start: 1;
    grid-row-end: span 1; }
  .cssgrid .site-footer {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-template-rows: 220px; }
  /* fallback for IE */
  .site-footer {
    display: flex; }
    .site-footer section {
      flex: 0 1 25%; }
  /* homepage */
  .site-main section.featured {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    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: grid;
    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 {
      grid-column-start: 1;
      grid-column-end: span 3;
      grid-row-start: 1;
      grid-row-end: span 3; }
    .home .featured .intro.main {
      grid-column-start: 2;
      grid-column-end: span 2;
      grid-row-start: 3;
      grid-row-end: span 1;
      background-color: #fff; }
    .home .featured .thumb.event {
      grid-column-start: 4;
      grid-column-end: span 1;
      grid-row-start: 2;
      grid-row-end: span 1; }
    .home .featured .intro.event {
      grid-column-start: 4;
      grid-column-end: span 1;
      grid-row-start: 3;
      grid-row-end: span 1;
      background-color: #fff; }
    .home .featured .thumb.second-news {
      grid-column-start: 2;
      grid-column-end: span 2;
      grid-row-start: 4;
      grid-row-end: span 2; }
    .home .featured .intro.second-news {
      grid-column-start: 4;
      grid-column-end: span 1;
      grid-row-start: 4;
      grid-row-end: span 2;
      background-color: #fff; }
    .home .block.news-link {
      grid-area: nb; }
    .home .news {
      /* next sibling */ }
      .home .news > div:nth-child(2) {
        grid-area: nt1; }
      .home .news > div:nth-child(3) {
        grid-area: ni1; }
      .home .news > div:nth-child(4) {
        grid-area: nt2; }
      .home .news > div:nth-child(5) {
        grid-area: ni2; }
      .home .news > div:nth-child(6) {
        grid-area: nt3; }
      .home .news > div:nth-child(7) {
        grid-area: ni3; }
      .home .news .thumb.eventrow {
        grid-area: et1; }
      .home .news .intro.eventrow {
        grid-area: ei1; }
      .home .news .thumb.eventrow ~ .thumb.eventrow {
        grid-area: et2; }
      .home .news .intro.eventrow ~ .intro.eventrow {
        grid-area: ei2; }
      .home .news .block.program-overview {
        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: grid;
    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 {
      grid-area: intro; }
    .page-template-program-page section.program .locations {
      grid-area: loc; }
    .page-template-program-page section.program .block.program {
      grid-area: pb; }
    .page-template-program-page section.program .filter.cat {
      grid-area: f1; }
    .page-template-program-page section.program .filter.time {
      grid-area: f2; }
    .page-template-program-page section.program .filter.location {
      grid-area: f3; }
    .page-template-program-page section.program .filter.location.month {
      grid-area: f2; }
    .page-template-program-page section.program .reset {
      grid-area: rb; }
  .page-template-program-page section.program-results {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    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: flex;
    flex-direction: row;
    flex-wrap: wrap; }
    .no-cssgrid .page-template-program-page section.program-results > div {
      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: grid;
      grid-template-columns: repeat(4, 1fr);
      grid-column-gap: 20px;
      grid-row-gap: 20px;
      grid-auto-rows: 220px;
      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) {
        grid-column: 1 / span 2;
        grid-row: auto / span 2; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+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) {
        grid-column: 2 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+4) {
        grid-column: 2 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+5) {
        grid-column: 3 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+6) {
        grid-column: 3 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+7) {
        grid-column: 4 / span 1;
        grid-row: auto / span 1; }
      .cssgrid .page-template-news-page .newsoverview > div:nth-child(8n+8) {
        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 {
        grid-column: 1 / span 4;
        grid-row: auto;
        height: 40px; }
      .cssgrid .page-template-news-page .newsoverview #ajax-load-more.loaded {
        grid-column: 1 / span 4;
        grid-row: auto / span 8;
        width: 940px;
        height: auto; }
      .cssgrid .page-template-news-page .newsoverview .alm-listing {
        display: grid;
        grid-template-columns: repeat(4, 220px);
        grid-column-gap: 20px;
        grid-row-gap: 20px;
        grid-auto-rows: 220px;
        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) {
          grid-column: 1 / span 2;
          grid-row: auto / span 2; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+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) {
          grid-column: 2 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+4) {
          grid-column: 2 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+5) {
          grid-column: 3 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+6) {
          grid-column: 3 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+7) {
          grid-column: 4 / span 1;
          grid-row: auto / span 1; }
        .cssgrid .page-template-news-page .newsoverview .alm-listing > div:nth-child(8n+8) {
          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: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: calc(4 * 460px);
    width: calc(100% - 220px); }
    .no-cssgrid .page-template-news-page .newsoverview > div {
      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: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    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) {
      grid-column: 1 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+2) {
      grid-column: 1 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+3) {
      grid-column: 2 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+4) {
      grid-column: 2 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+5) {
      grid-column: 3 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+6) {
      grid-column: 3 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+7) {
      grid-column: 4 / span 1;
      grid-row: auto / span 1; }
    .cssgrid section.search-results > div:nth-child(8n+8) {
      grid-column: 4 / span 1;
      grid-row: auto / span 1; }
  /* fallback for IE */
  .no-cssgrid .search-results section.search-results {
    position: relative;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: calc(2 * 460px);
    width: 100%; }
    .no-cssgrid .search-results section.search-results > div {
      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: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 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 {
    grid-column-start: 2;
    grid-column-end: span 2;
    grid-row-start: 1;
    grid-row-end: span 1; }
  .single article .entry-content {
    grid-column-start: 1;
    grid-column-end: span 3;
    grid-row-start: 2; }
  .single article .block.program-link {
    grid-row-start: 2;
    grid-row-end: span 1; }
  .single section.news {
    display: grid;
    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 {
      grid-area: nb; }
    .single section.news > div:nth-child(2) {
      grid-area: nt1; }
    .single section.news > div:nth-child(3) {
      grid-area: ni1; }
    .single section.news > div:nth-child(4) {
      grid-area: nt2; }
    .single section.news > div:nth-child(5) {
      grid-area: ni2; }
    .single section.news > div:nth-child(6) {
      grid-area: nt3; }
    .single section.news > div:nth-child(7) {
      grid-area: ni3; }
  /* programma detail pagina */
  .single-dgg_event article .block.event-metadata {
    grid-row: 2 / 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: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 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 {
    grid-column-start: 2;
    grid-column-end: span 2;
    grid-row-start: 1;
    grid-row-end: span 1; }
  .page-template-default article .entry-content {
    grid-column-start: 1;
    grid-column-end: span 3;
    grid-row-start: 2; }
  .page-template-default article .block.program-link {
    grid-row-start: 2;
    grid-row-end: span 1; }
  /* partner pagina */
  .page-template-partner-page section.partneroverview {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 220px;
    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 {
      grid-column: 2 / span 2;
      grid-row: 1 / span 1; }
    .page-template-partner-page section.partneroverview .block.program-link {
      grid-row-start: 1 / span 1;
      grid-column: 4 / span 1; }
  .cssgrid .page-template-partner-page section.partners {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-auto-rows: 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) {
      grid-column: 1 / span 2;
      margin-left: 240px; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+2) {
      grid-column: 1 / span 2;
      margin-left: 240px; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+3) {
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+4) {
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+5) {
      grid-column: 4 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+6) {
      grid-column: 4 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+7) {
      grid-column: 1 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+8) {
      grid-column: 1 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+9) {
      grid-column: 2 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+10) {
      grid-column: 2 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+11) {
      grid-column: 3 / span 1; }
    .cssgrid .page-template-partner-page section.partners > div:nth-child(12n+12) {
      grid-column: 3 / span 1; }
  /* IE fallback */
  .no-cssgrid .page-template-partner-page section.partners {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 980px; }
    .no-cssgrid .page-template-partner-page section.partners > div {
      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_MGG_WitZwart.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_MGG_WitZwart.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_MGG_WitRood.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_MGG_WitRood.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:first-of-type {
      top: -5px; }
    .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:first-of-type {
      margin-top: 0; }
    .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; }
    .main-navigation ul li {
      float: left;
      position: relative;
      background: white;
      line-height: 3.5;
      padding: 0 15px; }
    .main-navigation ul ul {
      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; } }

/* for Edge and IE */
.no-focuswithin .main-navigation ul li:hover > ul,
.no-focuswithin .main-navigation ul li:focus > ul,
.no-focuswithin .main-navigation ul li.menu-item-has-children:focus > ul {
  left: auto !important; }

@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::-moz-placeholder {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field:-ms-input-placeholder {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field::-ms-input-placeholder {
        color: white;
        opacity: 1;
        font-size: 1em;
        font-family: Montserrat; }
      .mobile-search-active .site-header nav[role="search"] .search-field:-moz-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 {
        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::-moz-placeholder {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input:-ms-input-placeholder {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input::-ms-input-placeholder {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input:-moz-placeholder-shown {
            color: #0f283a;
            opacity: 1;
            font-size: 1em;
            font-family: Montserrat; }
          #page.search-active .search-form label input:-ms-input-placeholder {
            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;
    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;
  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+IFRBQkxFIE9GIENPTlRFTlRTOlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOb3JtYWxpemVcbiMgVHlwb2dyYXBoeVxuIyBFbGVtZW50c1xuIyBGb3Jtc1xuIyBOYXZpZ2F0aW9uXG5cdCMjIExpbmtzXG5cdCMjIE1lbnVzXG4jIEFjY2Vzc2liaWxpdHlcbiMgQWxpZ25tZW50c1xuIyBDbGVhcmluZ3NcbiMgV2lkZ2V0c1xuIyBDb250ZW50XG5cdCMjIFBvc3RzIGFuZCBwYWdlc1xuXHQjIyBDb21tZW50c1xuIyBJbmZpbml0ZSBzY3JvbGxcbiMgTWVkaWFcblx0IyMgQ2FwdGlvbnNcblx0IyMgR2FsbGVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwidmFyaWFibGVzLXNpdGUvdmFyaWFibGVzLXNpdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbWl4aW5zLW1hc3RlclwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5L3R5cG9ncmFwaHlcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImVsZW1lbnRzL2VsZW1lbnRzXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvaG9tZVwiO1xuQGltcG9ydCBcImVsZW1lbnRzL2dyaWRibG9ja3NcIjtcbkBpbXBvcnQgXCJlbGVtZW50cy9yZXBlYXRpbmdibG9ja3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBGb3Jtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImZvcm1zL2Zvcm1zXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm5hdmlnYXRpb24vbmF2aWdhdGlvblwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEFjY2Vzc2liaWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtb2R1bGVzL2FjY2Vzc2liaWxpdHlcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBBbGlnbm1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9hbGlnbm1lbnRzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQ2xlYXJpbmdzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9jbGVhcmluZ3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2l0ZS9zZWNvbmRhcnkvd2lkZ2V0c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJzaXRlL3NpdGVcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBJbmZpbml0ZSBzY3JvbGxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtb2R1bGVzL2luZmluaXRlLXNjcm9sbFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE1lZGlhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibWVkaWEvbWVkaWFcIjtcbiIsIkBpbXBvcnQgXCJjb2xvcnNcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwic3RydWN0dXJlXCI7XG5AaW1wb3J0IFwiY29sdW1uc1wiO1xuIiwiJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk6ICNmZmY7XG4kY29sb3JfX2JhY2tncm91bmQtc2NyZWVuOiAjZjFmMWYxO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWhyOiAjY2NjO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjogI2U2ZTZlNjtcbiRjb2xvcl9fYmFja2dyb3VuZC1wcmU6ICNlZWU7XG4kY29sb3JfX2JhY2tncm91bmQtaW5zOiAjZmZmOWMwO1xuXG4kY29sb3JfX3RleHQtc2NyZWVuOiAjMjE3NTliO1xuJGNvbG9yX190ZXh0LWlucHV0OiAjNjY2O1xuJGNvbG9yX190ZXh0LWlucHV0LWZvY3VzOiAjMTExO1xuJGNvbG9yX19saW5rOiByb3lhbGJsdWU7XG4kY29sb3JfX2xpbmstdmlzaXRlZDogcHVycGxlO1xuJGNvbG9yX19saW5rLWhvdmVyOiBtaWRuaWdodGJsdWU7XG4kY29sb3JfX3RleHQtbWFpbjogIzQwNDA0MDtcblxuJGNvbG9yX19ib3JkZXItYnV0dG9uOiAjY2NjICNjY2MgI2JiYjtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1ob3ZlcjogI2NjYyAjYmJiICNhYWE7XG4kY29sb3JfX2JvcmRlci1idXR0b24tZm9jdXM6ICNhYWEgI2JiYiAjYmJiO1xuJGNvbG9yX19ib3JkZXItaW5wdXQ6ICNjY2M7XG4kY29sb3JfX2JvcmRlci1hYmJyOiAjNjY2O1xuXG4kZG9ua2VyYmxhdXc6ICMwZjI4M2E7IC8qIGhvb2ZkbWVudSBlbiBoMSwgbG9jYXRpZSBjYXNjYWRlcGxlaW4tYnVpdGVuIGVuIGRpZ2l0YWFsICovXG4kbGljaHRibGF1dzogIzg1YjVkOTsgLyogbG9jYXRpZSB6dWlkZXJoYXZlbiAqL1xuJHJvb2Q6ICNlMzA2MTM7IC8qIGxvY2F0aWUgY2FzY2FkZXBsZWluIDQgKi9cbiRncm9lbjogIzUyYWUzMzsgLyogbG9jYXRpZSBjYXNjYWRlcGxlaW4gNiBlbiBwcm92aW5jaWUgKi9cbiRnZWVsOiAjZmZlZDAwOyAvKiBsb2NhdGllIGNhc2NhZGVwbGVpbiA5IGVuIHN0YWQgKi9cbiRsaWNodGdyaWpzOiNmOWY5Zjk7XG5cblxuJG1vYmlsZWJsdWU6IzQ3NzI5QztcblxuIiwiJGZvbnRfX21haW46IHNhbnMtc2VyaWY7XG4kZm9udF9fY29kZTogTW9uYWNvLCBDb25zb2xhcywgXCJBbmRhbGUgTW9ub1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgbW9ub3NwYWNlO1xuJGZvbnRfX3ByZTogXCJDb3VyaWVyIDEwIFBpdGNoXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRmb250X19saW5lLWhlaWdodC1ib2R5OiAxLjU7XG4kZm9udF9fbGluZS1oZWlnaHQtcHJlOiAxLjY7XG5cbi8qXG5cbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuXG4gICAgZm9udC1mYW1pbHk6ICdPc3dhbGQnLCBzYW5zLXNlcmlmO1xuICAgIFxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcblxuKi9cbiIsIiRzaXplX19zaXRlLW1haW46IDEwMCU7XG4kc2l6ZV9fc2l0ZS1zaWRlYmFyOiAyNSU7XG4iLCIkY29sdW1uczogKFxuXHQxOiAxMDAlLFxuXHQyOiA1MCUsXG5cdDM6IDMzLjMzJSxcblx0NDogMjUlLFxuXHQ1OiAyMCUsXG5cdDY6IDE2LjY2JSxcblx0NzogMTQuMjglLFxuXHQ4OiAxMi41JSxcblx0OTogMTEuMTElXG4pO1xuXG4kY29sdW1uc19fbWFyZ2luOiAzLjglO1xuIiwiLy8gUmVtIG91dHB1dCB3aXRoIHB4IGZhbGxiYWNrXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEpIHtcblx0Zm9udC1zaXplOiAoJHNpemVWYWx1ZSAqIDE2KSAqIDFweDtcblx0Zm9udC1zaXplOiAkc2l6ZVZhbHVlICogMXJlbTtcbn1cblxuLy8gQ2VudGVyIGJsb2NrXG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4vLyBDbGVhciBhZnRlciAobm90IGFsbCBjbGVhcmZpeCBuZWVkIHRoaXMgYWxzbylcbkBtaXhpbiBjbGVhcmZpeC1hZnRlcigpIHtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbi8vIENvbHVtbiB3aWR0aCB3aXRoIG1hcmdpblxuQG1peGluIGNvbHVtbi13aWR0aCgkbnVtYmVyQ29sdW1uczogMykge1xuXHR3aWR0aDogbWFwLWdldCggJGNvbHVtbnMsICRudW1iZXJDb2x1bW5zICkgLSAoICggJGNvbHVtbnNfX21hcmdpbiAqICggJG51bWJlckNvbHVtbnMgLSAxICkgKSAvICRudW1iZXJDb2x1bW5zICk7XG59XG5cbi8qRnVuY3Rpb24gdG8gY2FsY3VsYXRlIGVtIGZyb20gcHggLCB1c2UgbGlrZSBmb250LXNpemU6IGVtKDE0KSovXG4kYnJvd3Nlci1jb250ZXh0OiAxNjsgLy8gRGVmYXVsdFxuXG5AZnVuY3Rpb24gZW0oJHBpeGVscywgJGNvbnRleHQ6ICRicm93c2VyLWNvbnRleHQpIHtcbiAgQHJldHVybiAjeyRwaXhlbHMvJGNvbnRleHR9ZW07XG59XG5cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG5AbWl4aW4gc2NyZWVuLXJlYWRlci10ZXh0IHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbjogLTFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHg7XG5cdHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1zY3JlZW47XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0XHRjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0Y2xpcC1wYXRoOiBub25lO1xuXHRcdGNvbG9yOiAkY29sb3JfX3RleHQtc2NyZWVuO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjg3NSk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdGxlZnQ6IDVweDtcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRcdHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR0b3A6IDVweDtcblx0XHR3aWR0aDogYXV0bztcblx0XHR6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG5cdH1cbn1cblxuLyogdW5kZXJzY29yZXMgYnJlYWtwb2ludCBpcyBhdCA2MDBweCAvMzcuNSBlbSAqL1xuXG5AbWl4aW4gYnAoJHBvaW50KSB7XG4gIEBpZiAkcG9pbnQgPT0gbW9iaWxlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk2MXB4KSB7IEBjb250ZW50OyB9XG4gIH1cbiAgIEBlbHNlIGlmICRwb2ludCA9PSBiaWdkZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM4MHB4KSB7IEBjb250ZW50OyB9XG4gIH1cbn1cblxuLyogY2hlY2tib3ggcmVjdGFuZ2xlICovXG5AbWl4aW4gY2hlY2tib3gtcmVjdGFuZ2xlIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjE4cHg7XG5cdGhlaWdodDogMThweDtcdFx0XG5cdGJvcmRlcjoxcHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogM3B4O1xuXHRsZWZ0OiAwO1x0XG59XG5AbWl4aW4gY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRjb2xvcikge1xuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MjBweDtcblx0aGVpZ2h0OjIwcHg7XHRcdFxuXHRiYWNrZ3JvdW5kOiRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDNweDtcblx0cmlnaHQ6IDA7XHRcbn1cblxuLyogdG8gaW5jbHVkZSBjb2xvcmVkIGNvcm5lciAqL1xuQG1peGluIGNvbG9yZWQtY29ybmVyICgkY29sb3IpIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0cmlnaHQ6IDA7XHRcbn1cbi8qIG1vYmlsZSAqL1xuQG1peGluIGNvbG9yZWQtY29ybmVyLXNtYWxsICgkY29sb3IpIHtcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjEwcHg7XG5cdGhlaWdodDogMTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0cmlnaHQ6MDtcbn1cblxuLyogZm9vdGVyIHNxdWFyZSAqL1xuQG1peGluIGZvb3Rlci13aGl0ZS1zcXVhcmUge1xuXHRjb250ZW50OiAnJztcblx0d2lkdGg6NjBweDtcblx0aGVpZ2h0OiA2MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC02MHB4O1xuXHRsZWZ0OiAyNTBweDtcdFxufVxuQG1peGluIGZvb3Rlci13aGl0ZS1zcXVhcmUtc21hbGwge1xuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC0yMHB4O1xuXHRsZWZ0OiAxMHB4O1x0XG59XG5cbi8qIHRvIGluY2x1ZGUgY29sb3JlZCB0b3AgbGVmdCBjb3JuZXIgKi9cbkBtaXhpbiB0b3AtbGVmdC1jb3JuZXIgKCRjb2xvcikge1xuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MTBweDtcblx0aGVpZ2h0OjEwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XHRcbn1cbi8qIHRvIGluY2x1ZGUgYmx1ZSBsZWZ0IGJ1bGxldCBibG9jayAqL1xuQG1peGluIGJ1bGxldC1ibG9jayAoJGNvbG9yKSB7XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoxMHB4O1xuXHRoZWlnaHQ6MTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMTJweDtcblx0bGVmdDogMTVweDtcdFxufVxuXG4vKiB0byBpbmNsdWRlIGJvdHRvbSBib3JkZXIgKi9cbkBtaXhpbiBib3R0b20tYm9yZGVyIHtcdFxuXHRjb250ZW50OiAnJztcblx0d2lkdGg6MTAwJTtcdFxuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcdFxufVxuXG4vKiBib3JkZXIgbWV0IGdla2xldXJkIGJsb2tqZSAqL1xuQG1peGluIGJvdHRvbS1ib3JkZXItYmxvY2sge1xuXHR3aWR0aDpjYWxjKDEwMCUgLSAzMHB4KTtcdFxuXHRjb250ZW50OiAnJztcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XHRcbn1cblxuLyogYm9yZGVyIG1ldCBzb2NpYWwgbWVkaWEgaWNvbnMgKi9cbkBtaXhpbiBib3R0b20tYm9yZGVyLWJsb2NrLWxvbmcge1xuXHR3aWR0aDpjYWxjKDEwMCUgLSAxMDBweCk7XG5cdGNvbnRlbnQ6ICcnO1xuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcdFxufVxuXG4vKiBib3JkZXIgbWV0IHBhZGRpbmcgKi9cbkBtaXhpbiBib3R0b20tYm9yZGVyLXBhZGRpbmcge1xuXHR3aWR0aDpjYWxjKDEwMCUgLSAyMHB4KTtcblx0Y29udGVudDogJyc7XG5cdGhlaWdodDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAyMHB4O1x0XG59XG5AbWl4aW4gYm90dG9tLWJvcmRlci1wYWRkaW5nLXNvY2lhbCB7XG5cdHdpZHRoOjM2MHB4O1xuXHRjb250ZW50OiAnJztcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDI0MHB4O1x0XG59XG5AbWl4aW4gYm90dG9tLWJvcmRlci1wYWRkaW5nLXRpbWV7XG5cdHdpZHRoOmNhbGMoMTAwJSAtIDExMHB4KTtcblx0Y29udGVudDogJyc7XG5cdGhlaWdodDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiA3cHg7XG5cdGxlZnQ6IDExMHB4O1x0XG59XG5cbi8qIHRvIGluY2x1ZGUgYm90dG9tIHNob3J0IHdoaXRlIGJvcmRlciAqL1xuQG1peGluIGJvdHRvbS1ib3JkZXItc21hbGwge1x0XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDo0MHB4O1xuXHRoZWlnaHQ6IDJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC0xMHB4O1xuXHRsZWZ0OiAwO1x0XG59XG4vKiB0byBpbmNsdWRlIGJvdHRvbSBzaG9ydCB3aGl0ZSBib3JkZXIgb24gbW9iaWxlICovXG5AbWl4aW4gYm90dG9tLWJvcmRlci1tb2JpbGUge1x0XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoyMHB4O1xuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC01cHg7XG5cdGxlZnQ6IDgycHg7XHRcbn1cbi8qIGJsdWUgc21hbGwgYm9yZGVyIGluIGV2ZW50IGRldGFpbCBpbmZvICovXG5AbWl4aW4gYm90dG9tLWJvcmRlci1zbWFsbC1ibHVlIHtcdFxuXHRjb250ZW50OiAnJztcblx0d2lkdGg6NDBweDtcblx0aGVpZ2h0OiAycHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC0xMHB4O1xuXHRsZWZ0OiAyMHB4O1x0XG59XG4vKiB0byBpbmNsdWRlIGJvdHRvbSBzaG9ydCByZWQgYm9yZGVyIGluIG1haW4gbWVudSAqL1xuQG1peGluIG1lbnUtYm90dG9tLWJvcmRlci1zbWFsbCB7XHRcblx0Y29udGVudDogJyc7XG5cdHdpZHRoOjQwcHg7XG5cdGhlaWdodDogOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcm9vZDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IC01cHg7XG5cdGxlZnQ6IDIzcHg7XHRcbn1cbi8qIHRvIGluY2x1ZGUgdG9wIGNvbG9yZWQgbG9jYXRpb24gYm9yZGVyICovXG5AbWl4aW4gdG9wLWJvcmRlci1zbWFsbCgkY29sb3Ipe1x0XG5cdGNvbnRlbnQ6ICcnO1xuXHR3aWR0aDoyMHB4O1xuXHRoZWlnaHQ6IDJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogLTVweDtcblx0bGVmdDogMDtcdFxufVxuXG4vKiByZXNldCBzdHlsZXMgZm9yIGdyaWQgYXJlYXMgKi9cbkBtaXhpbiBncmlkLXJlc2V0e1xuXHRcblx0LyogdG8gcmVtb3ZlIHVud2FudGVkIGNoaWxkcmVuIGZyb20gdGhlIGdyaWQgKi9cbiAgXHQmOjpiZWZvcmV7XG4gIFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcbiAgXHR9XG5cbiAgXHQ+ICoge1xuICBcdFx0b3ZlcmZsb3c6aGlkZGVuOyBcdFxuICBcdH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcblx0Zm9udC1zaXplOiAyZW07XG5cdG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cblx0aGVpZ2h0OiAwOyAvKiAxICovXG5cdG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuXHRmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDc1JTtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuXHRib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG5cdHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuXHRmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0bWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuXHRwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqXHRcdGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0Y29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cblx0ZGlzcGxheTogdGFibGU7IC8qIDEgKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDMgKi9cblx0d2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuXHRmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG5cdGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbiIsImJvZHksXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuXHRjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fbWFpbjtcblx0QGluY2x1ZGUgZm9udC1zaXplKDEpO1xuXHRsaW5lLWhlaWdodDogJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk7XG59XG5cbkBpbXBvcnQgXCJoZWFkaW5nc1wiO1xuXG5AaW1wb3J0IFwiY29weVwiO1xuIiwiaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGNsZWFyOiBib3RoO1xuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgxe1x0XG5cdGZvbnQtc2l6ZTogZW0oMjYpO1xuXHRsZXR0ZXItc3BhY2luZzogMC45cHg7XHRcblx0bWFyZ2luOjA7XG59XG5cbmgye1xuXHRmb250LXNpemU6IGVtKDIwKTtcbn1cblxuZm9vdGVyIGgzIHtcblx0Zm9udC1mYW1pbHk6IE9zd2FsZCwgc2Fucy1zZXJpZjtcbn0iLCJwIHtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG5cdGZvbnQtZmFtaWx5OiBSb2JvdG87XG5cdGZvbnQtc2l6ZTogZW0oMTQpO1x0XG5cdGNvbG9yOiMyMzIzMjM7XG5cdHdvcmQtYnJlYWs6IG5vcm1hbDtcblx0aHlwaGVuczphdXRvO1xufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXHRwe1xuXHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHR9XG59XG5cbi5lbnRyeS1jb250ZW50IHtcdFxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiA0MHB4OyAvKiBzb2NpYWwgc2hhcmUgYnV0dG9ucyAqL1xuXG5cdG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIFx0d29yZC13cmFwOiBicmVhay13b3JkOyAgXHRcblx0d29yZC1icmVhazogYnJlYWstd29yZDtcblx0aHlwaGVuczogYXV0bztcblxuXHRwIGltZ3tcblx0XHRwYWRkaW5nLWJvdHRvbTogMS41ZW07XG5cdH1cblxuXHRvbCwgdWx7XG5cdFx0bWFyZ2luLWxlZnQ6IC44ZW07XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHR9XG5cblx0b2wgbGksIHVsIGxpIHtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcdFx0XG5cdH1cblxuXHRhLCBsaSBhe1xuXHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cblx0XHQmOnZpc2l0ZWR7XG5cdFx0XHRjb2xvcjojNDc3MjlDO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXHRcdCY6YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBib3R0b20tYm9yZGVyLXBhZGRpbmctc29jaWFsO1x0XG5cdFx0fVxuXHR9XG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XHRcdFxuXHRcdCY6YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBib3R0b20tYm9yZGVyLWJsb2NrLWxvbmc7XHRcblx0XHR9XG5cdH1cblxuXHQud3AtY2FwdGlvbi10ZXh0LFxuXHQuZmVhdHVyZWQtaW1hZ2UtY2FwdGlvbntcblx0XHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiBlbSgxNCk7XHRcdFx0XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcdFxuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRmb250LXNpemU6IGVtKDEzKTtcblx0XHR9XHRcdFxuXHR9XG59XG5cblxuZGZuLCBjaXRlLCBlbSwgaSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMCAxLjVlbTtcbn1cblxuYWRkcmVzcyB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtcHJlO1xuXHRmb250LWZhbWlseTogJGZvbnRfX3ByZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtcHJlO1xuXHRtYXJnaW4tYm90dG9tOiAxLjZlbTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogMS42ZW07XG59XG5cbmNvZGUsIGtiZCwgdHQsIHZhciB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fY29kZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvcl9fYm9yZGVyLWFiYnI7XG5cdGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWlucztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuXHRmb250LXNpemU6IDEyNSU7XG59XG4iLCJodG1sIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7IC8qIEluaGVyaXQgYm94LXNpemluZyB0byBtYWtlIGl0IGVhc2llciB0byBjaGFuZ2UgdGhlIHByb3BlcnR5IGZvciBjb21wb25lbnRzIHRoYXQgbGV2ZXJhZ2Ugb3RoZXIgYmVoYXZpb3I7IHNlZSBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS8gKi9cblx0Ym94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5OyAvKiBGYWxsYmFjayBmb3Igd2hlbiB0aGVyZSBpcyBubyBjdXN0b20gYmFja2dyb3VuZCBjb2xvciBkZWZpbmVkLiAqL1xufVxuXG5ociB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ocjtcblx0Ym9yZGVyOiAwO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbkBpbXBvcnQgXCJsaXN0c1wiO1xuXG5pbWcge1xuXHRoZWlnaHQ6IGF1dG87IC8qIE1ha2Ugc3VyZSBpbWFnZXMgYXJlIHNjYWxlZCBjb3JyZWN0bHkuICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogQWRoZXJlIHRvIGNvbnRhaW5lciB3aWR0aC4gKi9cbn1cblxuZmlndXJlIHtcblx0bWFyZ2luOiAxZW0gMDsgLyogRXh0cmEgd2lkZSBpbWFnZXMgd2l0aGluIGZpZ3VyZSB0YWdzIGRvbid0IG92ZXJmbG93IHRoZSBjb250ZW50IGFyZWEuICovXG59XG5cbkBpbXBvcnQgXCJ0YWJsZXNcIjtcblxuXG4ubW9iaWxlLWluZm97XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxufVxuLmhpZGUtbW9iaWxle1xuXHRkaXNwbGF5OiBibG9jaztcblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLnNpdGUsIC5zaXRlLWZvb3Rlcntcblx0bWF4LXdpZHRoOiAxNDQwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1x0XHRcbn1cblxuLnNpdGUtbWFpbntcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2l0ZS1oZWFkZXJ7XHRcblx0cG9zaXRpb246IGZpeGVkO1x0XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHR6LWluZGV4OiAxO1xuXHR0b3A6MDtcdFx0XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRib3gtc2hhZG93OiAwIC0xcHggMTBweCAjOTY5MTk3O1xuXHR9XG5cblx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XHRcblx0XHR3aWR0aDogOTQycHg7IC8qIHZvb3IgRkYgOTQwIGJldGVyICovXG5cdFx0bGVmdDpjYWxjKCAoMTAwdncgLSA5NThweCkgLyAyICk7XHQvKiB2b29yIEZGIDk0MCBiZXRlciAqL1xuXHRcdGhlaWdodDogNzVweDtcdFxuXHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkIGJsYWNrO1x0XG5cdH1cblxuXHRAaW5jbHVkZSBicChiaWdkZXNrdG9wKXtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXgtd2lkdGg6IDExOTBweDsgLyogdmFud2VnZSBib3JkZXIgZGllIGRvb3Jsb29wdCAqL1xuXHRcdHBhZGRpbmctcmlnaHQ6IDI1MHB4O1x0XHRcdFxuXHR9XHRcbn1cblxuLnNpdGUtY29udGVudHtcblxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1x0XG5cdFx0cGFkZGluZzoxMHB4O1x0XG5cdH1cblxuXHRAaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XHRtYXgtd2lkdGg6IDk0MHB4O1xuXHRcdG1hcmdpbjogMCBhdXRvO1x0XG5cdFx0cGFkZGluZzoxMDBweCAwO1xuXHR9XG5cdFxufVxuXG4uc2l0ZS1icmFuZGluZ3tcblx0XG5cblx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdFx0d2lkdGg6IDI1MHB4O1x0XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cblx0XHQuc2l0ZS10aXRsZXtcblx0XHRcdGhlaWdodDogNzVweDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdHBhZGRpbmctbGVmdDogMTBweDtcdFx0XG5cblx0XHQuc2l0ZS10aXRsZXtcblx0XHRcdGhlaWdodDogNjBweDtcblx0XHR9XG5cdH1cblxuXHQuc2l0ZS10aXRsZXtcblx0XHRtYXJnaW46NnB4IDAgMCAwOyBcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHRcdFxuXG5cdFx0YXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1x0XHRcdFxuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKGltZy9sb2dvLWhlYWRlci5zdmcpIDAgMCBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE3OXB4IDYycHg7XHRcblx0XHRcdGhlaWdodDogNjJweDtcblx0XHRcdHdpZHRoOiAxNzlweDtcdFxuXHRcdFx0dGV4dC1pbmRlbnQ6IDEwMCU7XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcdFxuXHRcdH1cdFxuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdGEge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNTBweDtcdFxuXHRcdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRcdHdpZHRoOiAyMDBweDtcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH1cdFxuXHR9XHRcbn1cblxuXG5cbi8qIGludHJvdGVrc3RqZXMgYWxnZW1lZW4gKi9cblxuLmludHJvIHtcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFxuXHRhe1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdCY6Zm9jdXM6d2l0aGlue1xuXHRcdFx0b3V0bGluZTogMXB4IHNvbGlkICRsaWNodGJsYXV3O1xuXHRcdH1cblx0fVxuXG5cdGgze1xuXHRcdGZvbnQtZmFtaWx5OiBPc3dhbGQ7XG5cdFx0Zm9udC1zaXplOiBlbSgyMSk7XG5cdFx0Y29sb3I6ICMwMDA7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0Ji5jYXNjYWRlcGxlaW4tYnVpdGVuOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdH1cblx0Ji5jYXNjYWRlcGxlaW4tNDphZnRlcntcblx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lcigkcm9vZCk7XG5cdH1cblx0Ji5jYXNjYWRlcGxlaW4tNjphZnRlcntcblx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lcigkZ2VlbCk7XG5cdH1cblx0Ji5jYXNjYWRlcGxlaW4tMTA6YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXIoJGdyb2VuKTtcblx0fVxuXHQmLnp1aWRlcmhhdmVuOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRsaWNodGJsYXV3KTtcblx0fVxuXHQmLmRpZ2l0YWFsOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdH1cblx0Ji5zdGFkOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyKCRnZWVsKTtcblx0fVxuXHQmLnByb3ZpbmNpZTphZnRlcntcblx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lcigkZ3JvZW4pO1xuXHR9XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcblx0XHQmLmNhc2NhZGVwbGVpbi1idWl0ZW46YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkZG9ua2VyYmxhdXcpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi00OmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXItc21hbGwoJHJvb2QpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi02OmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXItc21hbGwoJGdlZWwpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi0xMDphZnRlcntcblx0XHRcdEBpbmNsdWRlIGNvbG9yZWQtY29ybmVyLXNtYWxsKCRncm9lbik7XG5cdFx0fVxuXHRcdCYuenVpZGVyaGF2ZW46YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkbGljaHRibGF1dyk7XG5cdFx0fVxuXHRcdCYuZGlnaXRhYWw6YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkZG9ua2VyYmxhdXcpO1xuXHRcdH1cblx0XHQmLnN0YWQ6YWZ0ZXJ7XG5cdFx0XHRAaW5jbHVkZSBjb2xvcmVkLWNvcm5lci1zbWFsbCgkZ2VlbCk7XG5cdFx0fVxuXHRcdCYucHJvdmluY2llOmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgY29sb3JlZC1jb3JuZXItc21hbGwoJGdyb2VuKTtcblx0XHR9XG5cdH1cblx0XG59XG5cbi5kYXRle1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRmb250LWZhbWlseTogUm9ib3RvO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1x0XG5cdFx0Y29sb3I6IzIzMjMyMztcblx0fVxuXHRcbn1cblxuLmxlZXNtZWVye1xuXHRmb250LWZhbWlseTogUm9ib3RvO1xuXHRmb250LXNpemU6IGVtKDE0KTtcblx0Y29sb3I6IzIzMjMyMztcblx0ZGlzcGxheTogaW5saW5lO1x0XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCIgPj5cIjtcblx0XHR9XG5cdH1cbn1cblxuLm5hdi1saW5rcyB7XG5cblx0bWFyZ2luOjIwcHggMDtcblxuXHRhLCBhOmhvdmVyLCBhOnZpc2l0ZWR7XG5cdFx0Zm9udC1mYW1pbHk6IFJvYm90bztcblx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRjb2xvcjojMjMyMzIzO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0fVxuXHR9XG5cdC5jdXJyZW50e1xuXHRcdGZvbnQtZmFtaWx5OiBSb2JvdG87XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0Y29sb3I6JGxpY2h0YmxhdXc7XG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdH1cblx0fVx0XG5cdGEucHJldntcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdGNvbnRlbnQ6XCI8PCBcIjtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdHBhZGRpbmctbGVmdDogMWVtO1xuXHRcdH1cblx0fSBcblx0YS5uZXh0e1xuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG5cdFx0JjphZnRlcntcblx0XHRcdGNvbnRlbnQ6XCIgPj5cIjtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDFlbTtcblx0XHR9XG5cdH0gXG5cdGEucGFnZS1udW1iZXJze1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRwYWRkaW5nOiAuMmVtO1xuXHR9XG59XG5cblxuLyogb3Agb3ZlcnppY2h0c3BhZ2luYSdzICovXG5cbi5ob21lLCBcbi5wYWdlLXRlbXBsYXRlLW5ld3MtcGFnZSxcbi5zZWFyY2gtcmVzdWx0cyxcbi5zaW5nbGUtZGdnX2V2ZW50LFxuLnNpbmdsZS1wb3N0IHtcblxuXHQuaW50cm86bm90KC5tYWluKTpiZWZvcmV7XG5cdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlcjtcdFx0XG5cdH1cblxuXHQuaW50cm8uZXZlbnQ6YmVmb3JlLFxuXHQuaW50cm8uZXZlbnRyb3c6YmVmb3Jle1xuXHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItYmxvY2s7XHRcdFxuXHR9XG5cbn1cblxuLyogcHJvZ3JhbW1hb3ZlcnppY2h0ICovXG5cbnNlY3Rpb24ucHJvZ3JhbXtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuXHQuc2hvdy1sb2NhdGlvbnN7XHRcdFxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0d2lkdGg6IDI4MHB4O1xuXHRcdH1cblxuXHRcdGJ1dHRvbntcdFx0XHRcblx0XHRcdGhlaWdodDogNDBweDtcblx0XHRcdHBhZGRpbmc6IGVtKDEzKSBlbSgzMCk7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6cmdiYSgyNDksIDI0OSwgMjQ5LCAwLjgpO1xuXHRcdFx0Ym9yZGVyOm5vbmU7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIoJGRvbmtlcmJsYXV3KTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC5sb2NhdGlvbnN7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHRcdGhlaWdodDogMjIwcHg7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKGltZy9Mb2NhdGllc18yMDIwLnN2ZykgMCAwIG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDIyMHB4IDIyMHB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFx0XG5cdFx0XG5cdFx0YXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHR9XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZG9ua2VyYmxhdXcpO1xuXHRcdH1cblxuXHRcdC5oZWFkaW5ne1xuXHRcdFx0cGFkZGluZzogZW0oMTMpIGVtKDMwKTtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI0OSwgMjQ5LCAyNDksIDAuOCk7XG5cdFx0fVxuXHRcblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdG1hcmdpbi10b3A6IC00MHB4O1xuXHRcdFx0aGVpZ2h0OiAyMjBweDtcblx0XHRcdHdpZHRoOiAyODBweDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjgwcHggMjgwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MHB4O1xuXG5cdFx0XHQuaGVhZGluZ3tcblx0XHRcdFx0d2lkdGg6IDI4MHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9XHRcblxufVxuXG4ubm8tY3NzZ3JpZCBzZWN0aW9uLnByb2dyYW0gLmludHJve1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG5ib2R5LnNlYXJjaC1yZXN1bHRzIHtcblxuXHRoMXtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0fVxuXG59XG5cbi5zZWFyY2gtcmVzdWx0cywgLnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbS1wYWdlLCAucGFnZS10ZW1wbGF0ZS1wcm9ncmFtLXBhZ2UtbW9udGgge1xuXHRcblx0LnByb2dyYW0gaDF7XG5cdFx0bWFyZ2luLXRvcDogMDtcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxOCk7XG5cdFx0fVxuXHR9XG5cblx0LyogZmlsdGVycyAqL1x0XG5cblx0LmZpbHRlcntcblx0XHRwYWRkaW5nLXRvcDogMzBweDtcblx0XHRcblx0fVxuXG5cdC5mYWNldHdwLWNvdW50ZXIge1xuXHQgICAgZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5maWx0ZXIgYnV0dG9ue1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAyMjBweDtcblx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0Ym9yZGVyOm5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvY2hldnJvbi5zdmcpIGNlbnRlciByaWdodCBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IDEwcHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdHBhZGRpbmc6MDtcblx0XHRjb2xvcjogJGRvbmtlcmJsYXV3O1xuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdHdpZHRoOmNhbGMoMTAwJSAtIDEwcHgpO1xuXHRcdH1cblx0fVxuXG5cdC5mYWNldHdwLWNoZWNrYm94e1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcdFxuXHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFxuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSBjaGVja2JveC1yZWN0YW5nbGU7XG5cdFx0fVx0XG5cdH1cblxuXHQuZmFjZXR3cC1jaGVja2JveC5jaGVja2Vke1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvVmlua2plLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMnB4IDZweDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTJweDtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwiY2FzY2FkZXBsZWluLTRcIl06YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRyb29kKTtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwiY2FzY2FkZXBsZWluLTZcIl06YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRnZWVsKTtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwiY2FzY2FkZXBsZWluLTEwXCJdOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNoZWNrYm94LXJlY3RhbmdsZS1hZnRlcigkZ3JvZW4pO1xuXHR9XG5cdC5mYWNldHdwLWNoZWNrYm94W2RhdGEtdmFsdWU9XCJjYXNjYWRlcGxlaW4tYnVpdGVuXCJdOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNoZWNrYm94LXJlY3RhbmdsZS1hZnRlcigkZG9ua2VyYmxhdXcpO1xuXHR9XG5cdC5mYWNldHdwLWNoZWNrYm94W2RhdGEtdmFsdWU9XCJ6dWlkZXJoYXZlblwiXTphZnRlcntcblx0XHRAaW5jbHVkZSBjaGVja2JveC1yZWN0YW5nbGUtYWZ0ZXIoJGxpY2h0YmxhdXcpO1xuXHR9XG5cdC5mYWNldHdwLWNoZWNrYm94W2RhdGEtdmFsdWU9XCJzdGFkXCJdOmFmdGVye1xuXHRcdEBpbmNsdWRlIGNoZWNrYm94LXJlY3RhbmdsZS1hZnRlcigkZ2VlbCk7XG5cdH1cblx0LmZhY2V0d3AtY2hlY2tib3hbZGF0YS12YWx1ZT1cInByb3ZpbmNpZVwiXTphZnRlcntcblx0XHRAaW5jbHVkZSBjaGVja2JveC1yZWN0YW5nbGUtYWZ0ZXIoJGdyb2VuKTtcblx0fVxuXHQuZmFjZXR3cC1jaGVja2JveFtkYXRhLXZhbHVlPVwiZGlnaXRhYWxcIl06YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgY2hlY2tib3gtcmVjdGFuZ2xlLWFmdGVyKCRkb25rZXJibGF1dyk7XG5cdH1cblx0XG5cdC5maWx0ZXIuYWN0aXZlIGJ1dHRvbiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9jaGV2cm9uLXVwLnN2Zyk7XG5cdH1cblxuXHQuZmFjZXR3cC1mYWNldHtcblx0XHRwYWRkaW5nOjEwcHggMCAyNXB4IDA7XHRcdFxuXHRcdGRpc3BsYXk6IG5vbmU7IFxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdHdpZHRoOiAyMjBweDtcdFxuXHRcdGhlaWdodDogYXV0bztcdFx0XHRcblxuXHRcdHNlbGVjdCwgc2VsZWN0OmZvY3VzLCBzZWxlY3Q6YWN0aXZle1xuXHRcdFx0Ym9yZGVyOm5vbmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdHdpZHRoOmNhbGMoMTAwJSAtIDEwcHgpO1xuXHRcdH1cblxuXHR9XG5cdFxuXHQvKiB0aWpkc3RpcCBmaWx0ZXIgKi9cdFxuXG5cdCN0aW1lb3B0aW9uc3tcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHBhZGRpbmc6MTBweCAwIDI1cHggMDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMTtcdFxuXHRcdGJhY2tncm91bmQ6d2hpdGU7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHRcdGhlaWdodDogYXV0bztcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHR3aWR0aDpjYWxjKDEwMCUgLSAxMHB4KTtcblx0XHR9XG5cdH1cblxuXHQudGltZXRhcmdldHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblx0XHRtYXJnaW4tYm90dG9tOiA0cHg7XHRcdFxuXHR9XG5cblx0YnV0dG9uLnJlc2V0e1xuXHRcdC8qZGlzcGxheTogbm9uZTsqLyAvKiB0ZW1wIHVudGlsIGZpbHRlcnMgd29yayAqL1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cdFx0aGVpZ2h0OiAyNnB4O1xuXHRcdHdpZHRoOiAxNjBweDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRtYXJnaW4tdG9wOjMwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XHRcblxuXHRcdCY6aG92ZXIsICY6Zm9jdXN7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRkb25rZXJibGF1dztcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XHRcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdH1cblxuXHQudGltZS1kaXZpZGVye1xuXHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHRcblx0XHRtYXJnaW46IDEwcHggMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmFmdGVye1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1wYWRkaW5nLXRpbWU7XG5cdFx0fVxuXHR9XG5cblx0LmV2ZW50LW92ZXJ2aWV3LXNpbmdsZXtcblx0XHRcdFxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWNodGdyaWpzO1xuXHRcdHBhZGRpbmc6ZW0oMTYpIGVtKDIwKTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmLmNhc2NhZGVwbGVpbi1idWl0ZW46YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdFx0fVxuXHRcdCYuY2FzY2FkZXBsZWluLTQ6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRyb29kKTtcblx0XHR9XG5cdFx0Ji5jYXNjYWRlcGxlaW4tNjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIoJGdlZWwpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi0xMDpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIoJGdyb2VuKTtcblx0XHR9XG5cdFx0Ji56dWlkZXJoYXZlbjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIoJGxpY2h0YmxhdXcpO1xuXHRcdH1cblx0XHQmLnN0YWQ6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRnZWVsKTtcblx0XHR9XG5cdFx0Ji5wcm92aW5jaWU6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRncm9lbik7XG5cdFx0fVxuXHRcdCYuZGlnaXRhYWw6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdFx0fVxuXG5cdFx0Ji5jYXNjYWRlcGxlaW4tYnVpdGVuIC5sb2NhdGllczpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtYm9yZGVyLXNtYWxsKCRkb25rZXJibGF1dyk7XG5cdFx0fVxuXHRcdCYuY2FzY2FkZXBsZWluLTQgLmxvY2F0aWVzOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1ib3JkZXItc21hbGwoJHJvb2QpO1xuXHRcdH1cblx0XHQmLmNhc2NhZGVwbGVpbi02IC5sb2NhdGllczpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtYm9yZGVyLXNtYWxsKCRnZWVsKTtcblx0XHR9XG5cdFx0Ji5jYXNjYWRlcGxlaW4tMTAgLmxvY2F0aWVzOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1ib3JkZXItc21hbGwoJGdyb2VuKTtcblx0XHR9XG5cdFx0Ji56dWlkZXJoYXZlbiAubG9jYXRpZXM6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWJvcmRlci1zbWFsbCgkbGljaHRibGF1dyk7XG5cdFx0fVxuXHRcdCYuc3RhZCAubG9jYXRpZXM6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWJvcmRlci1zbWFsbCgkZ2VlbCk7XG5cdFx0fVxuXHRcdCYucHJvdmluY2llIC5sb2NhdGllczpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtYm9yZGVyLXNtYWxsKCRncm9lbik7XG5cdFx0fVxuXHRcdCYuZGlnaXRhYWwgLmxvY2F0aWVzOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIHRvcC1ib3JkZXItc21hbGwoJGRvbmtlcmJsYXV3KTtcblx0XHR9XG5cblx0XHRhe1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdH1cblxuXHRcdGgzIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcdFxuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDNweDtcblx0XHR9XG5cblx0XHQuY2F0e1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxMik7XHRcdFx0XG5cdFx0fVxuXG5cdFx0Lm1ldGF7XG5cdFx0XHRmb250LXNpemU6IGVtKDEyKTtcblx0XHRcdGZsZXg6IDAgMSBhdXRvO1xuXHRcdFx0bWFyZ2luLXRvcDphdXRvOyAvKiBzdGljayBhdCB0aGUgYm90dG9tICovXHRcdFx0XHRcdFxuXG5cdFx0XHQudGlqZGVuIHtcblx0XHRcdFx0XG5cdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0LmxvY2F0aWVze1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XHRcdFxuXHRcdFx0XHRtYXJnaW4tdG9wOiAxZW07XHRcblxuXHRcdFx0XHRzcGFue1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XHRcdFxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHR9XG5cdFx0XG5cdH1cbn1cblxuLyogSUUgZmFsbGJhY2sgKi9cbi5uby1jc3NncmlkIC5ldmVudC1vdmVydmlldy1zaW5nbGV7XG5cdGhlaWdodDogMjIwcHg7XG59XG5cblxuLyogY29udGVudCBibG9ja3Mgb24gZ3JpZCAqL1xuXG5cbi5mZWF0dXJlZCwgLm5ld3Mge1xuXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdFxufVx0XG5cbi50aHVtYi5uZXdzcm93LFxuLnRodW1iLmV2ZW50cm93LFxuLnNlYXJjaC1yZXN1bHRzIC50aHVtYntcblx0YmFja2dyb3VuZC1jb2xvcjogI2VlZTtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAyMjBweDtcblx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHR9XG59XG5cblxuXG4vKiBJRSBmYWxsYmFjayAqL1xuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XG5cdC5uby1jc3NncmlkIHtcblxuXHRcdC50aHVtYi5uZXdzcm93LFxuXHRcdC50aHVtYi5ldmVudHJvd3tcblx0XHRcdGhlaWdodDogMjIwcHg7XG5cdFx0XHR3aWR0aDogMjIwcHg7XG5cdFx0fVxuXHRcdC5pbnRyby5uZXdzcm93LFxuXHRcdC5pbnRyby5ldmVudHJvd3tcblx0XHRcdHdpZHRoOiAyMjBweDtcblx0XHR9XG5cdFx0LnNpbmdsZSB7XG5cdFx0XHQuaW50cm8ubmV3c3Jvd3tcblx0XHRcdFx0aGVpZ2h0OiAyMjBweDtcblxuXHRcdFx0XHRoM3tcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wYWdlLXRlbXBsYXRlLW5ld3MtcGFnZSAuaW50cm8gaDN7XG5cdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdH1cblx0XHRcblx0fVxufVxuXG5cblxuLyogYW5kZXIgbmV3cyBlbiBldmVudHMgb3AgbW9iaWVsICovXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdC50aHVtYi5uZXdzcm93LFxuXHQudGh1bWIuZXZlbnRyb3d7XG5cdFx0XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6IDEwMHB4O1xuXHRcdGhlaWdodDogMTAwcHg7XHRcblx0XHRiYWNrZ3JvdW5kOiNlZWU7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cblx0XHRpbWd7XG5cdFx0XHR3aWR0aDogMTAwcHg7XG5cdFx0XHRoZWlnaHQ6IDEwMHB4O1x0XHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0LmludHJvLm5ld3Nyb3csXG5cdC5pbnRyby5ldmVudHJvdyB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHRcdFxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XHRcdFx0XG5cdFx0aGVpZ2h0OiAxMTBweDtcdFxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cblx0XHRhe1xuXHRcdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRcdHdpZHRoOiAxOTBweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cblx0XHRoM3tcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1x0XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1x0XHRcdFx0XG5cdFx0fVxuXG5cdFx0cHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmRhdGV7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDIuNWVtO1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdFx0LmxlZXNtZWVyLm1vYntcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMWVtO1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cblx0fVxuXG59XG5cbi8qIHNpbmdsZSBhcnRpY2xlIGVuIGV2ZW50ICovXG4uc2luZ2xlIGFydGljbGUge1xuXG5cdGNsZWFyOiBsZWZ0O1xuXG5cdC8qIHZvbGdvcmRlIGJsb2trZW4gYW5kZXJzIG9wIG1vYmllbCAqL1xuXHQubW9iaWxlLWluZm97XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0XHRoMXtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXG5cdFx0LmJsb2NrLmV2ZW50LW1ldGFkYXRhe1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0Lm1vYmlsZS1pbmZve1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHRcdFx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC5lbnRyeS1jb250ZW50e1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDI0MHB4O1xuXG5cdFx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdFx0XHRtaW4taGVpZ2h0OiA3MDBweDsgLyogaXZtIHZlZWwgbWV0YWRhdGEgKi9cdFxuXHRcdFx0cGFkZGluZy1ib3R0b206IDQwcHg7IC8qIHNvY2lhbCBzaGFyZSBidXR0b25zICovXG5cdFx0fVx0XHRcdFxuXG5cdFx0cHtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHR9XHRcblxuXHRcdGgyLGgzLGg0e1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1x0XG5cdFx0XHRtYXJnaW4tdG9wOjA7XHRcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XHRcblx0XHR9XHRcblxuXHRcdGgyK3AsIGgzK3AsIGg0K3Age1xuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMjJweDtcblxuXHRcdFx0cCxoMixoMyxoNHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwXG5cdFx0XHR9XG5cdFx0fVx0XG5cblx0XHRcblxuXHRcdC8qIGJpaiBldmVudHMgc3RhYXQgZXIgZWVuIGxpbmsgbmFhciBoZXQgb3ZlcnppY2h0IG9uZGVyIGRlIGZvdG8gKi9cblx0XHQudGh1bWItbGlua3tcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMjQwcHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHRcdFx0XG5cdFx0XHRcblx0XHRcdC5mZWF0dXJlZC1pbWFnZS1jYXB0aW9ue1xuXHRcdFx0XHRtYXgtd2lkdGg6IDQ2MHB4O1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcdFx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHRcdFx0XHRcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcdFxuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDA7XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdC5wb3N0LXRodW1ibmFpbHtcblx0XHRcdFx0d2lkdGg6IDQ2MHB4O1x0XHRcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1x0XHRcdFx0XHRcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRhLnRlcnVne1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdFx0d2lkdGg6IDIyMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1x0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpY2h0Z3JpanM7XHRcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRjb2xvcjokZG9ua2VyYmxhdXc7XHRcblx0XHRcdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdHBhZGRpbmc6IGVtKDcpIGVtKDExKTtcdFx0XHRcdFxuXG5cdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcigkZ2VlbCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cdFxuXHRcdFx0fVx0XG5cdFx0fVx0XHRcblx0XHRcblx0fVxuXG59XG5cblxuI21haW4gLnN1cHN5c3RpYy1zb2NpYWwtc2hhcmluZ3tcblx0aGVpZ2h0OjQwcHg7XHRcblx0cGFkZGluZzowO1x0XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogMDtcdFxuXG5cdGF7XG5cdFx0d2lkdGg6IDM5cHg7XG5cdFx0aGVpZ2h0OiAzOXB4O1xuXHRcdG1hcmdpbjowIDAgMCAxMHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6I2Y5ZjlmOTtcblx0XHRjb2xvcjokZG9ua2VyYmxhdXc7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Jjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmV7XG5cdFx0XHRjb2xvcjojZmZmO1x0XHRcdFx0XHRcblx0XHR9XG5cblx0XHRpe1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjlweDtcblx0XHRcdGxlZnQ6N3B4O1xuXHRcdFx0Zm9udC1zaXplOiAxOXB4IWltcG9ydGFudDtcdFx0XHRcdFx0XG5cdFx0fVxuXHR9XHRcblx0YS5zb2NpYWwtc2hhcmluZy1idXR0b24uc2hhcmVyLWZsYXQuZmFjZWJvb2s6Zm9jdXMge1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MyAhaW1wb3J0YW50O1xuXHQgICAgb3V0bGluZTogMnB4IHNvbGlkICRkb25rZXJibGF1dztcbiAgICBcdG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuXHR9XG5cdGEuc29jaWFsLXNoYXJpbmctYnV0dG9uLnNoYXJlci1mbGF0LnR3aXR0ZXI6Zm9jdXMge1xuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1YWNlZSAhaW1wb3J0YW50O1xuXHQgICAgb3V0bGluZTogMnB4IHNvbGlkICRkb25rZXJibGF1dztcbiAgICBcdG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuXHR9XG59XG5cblxuLyogbmlldXdzb3ZlcnppY2h0IGVuIHpvZWtyZXN1bHRhdGVuIG9wIG1vYmllbCAtIGFsbGUgaXRlbXMga2xlaW4gYmVoYWx2ZSBkZSBlZXJzdGUgKi9cblxuQGluY2x1ZGUgYnAobW9iaWxlKXtcblxuXHQucGFnZS10ZW1wbGF0ZS1uZXdzLXBhZ2UgLm5ld3NvdmVydmlldyxcblx0LnNlYXJjaC1yZXN1bHRzIHNlY3Rpb24uc2VhcmNoLXJlc3VsdHN7XG5cdFx0XG5cblx0XHQgLyogZWVyc3RlIGJlcmljaHQgdGh1bWIgZW4gaW50cm8gKi9cblx0XHQgPiBkaXY6bnRoLWNoaWxkKDEpe1x0XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZsb2F0OiBub25lO1xuXG5cdFx0IFx0aW1nIHtcblx0XHQgXHRcdGhlaWdodDogYXV0bztcblx0XHQgXHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0IFx0fVxuXHRcdCB9XG5cdFx0ID4gZGl2Om50aC1jaGlsZCgyKXtcdFxuXHQgXHQgICAgXG5cdCBcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHQgICAgd2lkdGg6IDEwMCU7XHRcdCAgIFxuXHRcdCAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdCAgICBtYXJnaW4tbGVmdDogMDtcblx0XHQgICAgcGFkZGluZy10b3A6IDA7XG5cblx0XHQgICAgYXtcblx0XHQgICAgXHR3aWR0aDogMTAwJTtcblx0XHQgICAgXHRoZWlnaHQ6IGF1dG87XG5cdFx0ICAgIH1cblxuXHRcdCAgICBwe1xuXHRcdCAgICBcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICB9XG5cdFx0ICAgIC5kYXRlIHtcblx0XHQgICAgXHRkaXNwbGF5OiBub25lO1xuXHRcdCAgICB9XG5cdFx0ICAgIC5sZWVzbWVlcntcblx0XHQgICAgXHRkaXNwbGF5OiBibG9jaztcblx0XHQgICAgfVxuXHRcdCAgICAubGVlc21lZXIubW9ie1xuXHRcdCAgICBcdGRpc3BsYXk6IG5vbmU7XG5cdFx0ICAgIH1cblx0XHR9XG5cdFx0IFx0XG5cdFx0IFxuXG5cdFx0LnRodW1ie1x0XHRcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOjEwMHB4O1xuXHRcdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG5cblx0XHRcdGltZ3tcblx0XHRcdFx0d2lkdGg6IDEwMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwMHB4O1x0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmludHJvIHtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1x0XHRcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XHRcdFx0XG5cdFx0XHRoZWlnaHQ6IDExMHB4O1x0XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0XHRwYWRkaW5nLXRvcDogMTBweDtcblxuXHRcdFx0YXtcblx0XHRcdFx0aGVpZ2h0OiAxMDBweDtcdFx0XHRcdFxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR9XG5cblx0XHRcdGgze1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdH1cblxuXHRcdFx0cHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmRhdGV7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAyLjVlbTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdH1cblx0XHRcdC5sZWVzbWVlci5tb2J7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAxZW07XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cblx0XHR9XHRcdFx0XHRcblxuXHR9XG5cbn1cblxuLyogbGFhZCBtZWVyIHBvc3RzIGJ1dHRvbiAqL1xuLmFsbS1sb2FkLW1vcmUtYnRuLmRnZ3tcblx0d2lkdGg6MjIwcHg7XG5cdGhlaWdodDogNDBweDtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcblx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG5cdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG5cblx0Jjpob3ZlciwgJjpmb2N1c3tcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmOWY5Zjk7XG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAkZG9ua2VyYmxhdXc7XG5cdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0fVxuXG5cdCY6YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKCRkb25rZXJibGF1dyk7XG5cdH1cbn1cbi5hbG0tbG9hZC1tb3JlLWJ0bi5kZ2cuZG9uZXtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5hbG0tYnRuLXdyYXAgLmFsbS1sb2FkLW1vcmUtYnRuLmxvYWRpbmc6OmJlZm9yZXtcblx0YmFja2dyb3VuZDpub25lOyAvKiBsb2FkZXIgZ2lmICovXG59XG5cblxuLyogZGVhZnVsdCBwYWdlICovXG4ucGFnZS10ZW1wbGF0ZS1kZWZhdWx0IGFydGljbGUge1xuXG5cdGNsZWFyOiBsZWZ0O1x0XG5cblx0aDF7XG5cdFx0bWFyZ2luOiAwIDAgNXB4IDA7XG5cdH1cblxuXHQuZW50cnktY29udGVudHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZy1sZWZ0OiAyNDBweDtcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHRcdFx0XHRcdFx0XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdFx0XHRtaW4taGVpZ2h0OiAzMDBweDsgXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDsgLyogc29jaWFsIHNoYXJlIGJ1dHRvbnMgKi9cblx0XHR9XHRcblxuXHRcdHB7XG5cdFx0XHRtYXJnaW4tdG9wOjA7XG5cblx0XHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XHRcdFxuXHRcdFxuXHRcdC8qIGZlYXR1cmVkIGltYWdlIHN0YWF0IGJvdmVuYWFuICovXG5cdFx0LnBvc3QtdGh1bWJuYWlse1xuXHRcdFx0d2lkdGg6IDQ2MHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0yNDBweDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcdFxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvKiBpbWcgaW4gY29udGVudCAqL1xuXHRcdHAgaW1ne1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0yNDBweDtcblx0XHRcdHBhZGRpbmc6IDAgMCAyMHB4IDA7XG5cblx0XHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XHRcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVx0XG5cdFx0XG5cdFx0XHRcblx0fVxufVxuXG4vKiBvdmVyemljaHQgcGFydG5lcnMgKi9cbi5wYWdlLXRlbXBsYXRlLXBhcnRuZXItcGFnZSB7XG5cblx0aDF7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXG5cdHNlY3Rpb24ucGFydG5lcnN7XG5cdFx0bWFyZ2luLXRvcDogNDBweDtcblxuXHRcdC50aHVtYntcdFx0XHRcdFx0XHRcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRcdG1hcmdpbjoyMHB4IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmludHJve1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMzM4M2I7XG5cblx0XHRcdGgzIGEsIGgzIGE6dmlzaXRlZHtcblx0XHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHRcdH1cblx0XHR9XG5cdH1cdFx0XG59XG5cblxuZm9vdGVyLnNpdGUtZm9vdGVyIHtcblx0YmFja2dyb3VuZDogI2VlZWVlZTtcdFx0XHRcblx0cG9zaXRpb246IHJlbGF0aXZlO1x0XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRwYWRkaW5nOjAgMTBweDtcdFx0XG5cdFx0Ym9yZGVyLXRvcDoyMHB4IHNvbGlkICRkb25rZXJibGF1dztcblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgZm9vdGVyLXdoaXRlLXNxdWFyZS1zbWFsbDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicChkZXNrdG9wKXtcdFx0XHRcblx0XHRib3JkZXItdG9wOjYwcHggc29saWQgJGRvbmtlcmJsYXV3O1x0XHRcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0XHRwYWRkaW5nLXRvcDowO1xuXHRcdHBhZGRpbmctbGVmdDpjYWxjKCAoMTAwdncgLSA5NjBweCkgLyAyICk7XG5cdFx0cGFkZGluZy1yaWdodDpjYWxjKCAoMTAwdncgLSA5NjBweCkgLyAyICk7XG5cblx0XHQmOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGZvb3Rlci13aGl0ZS1zcXVhcmU7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnAoYmlnZGVza3RvcCl7XG5cdFx0cGFkZGluZzogMCAyNTBweDtcblx0XHRtaW4taGVpZ2h0OiA0MDBweDtcblx0fVxuXHRcblxuXHRzZWN0aW9ue1xuXHRcdHBhZGRpbmc6NDBweCAwO1xuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcdFxuXHRcdFx0cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMjBweDtcdFx0XHRcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHRcdFx0XHRcblxuXHRcdFx0aDN7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHRcdH1cdFx0XG5cdFx0fVxuXHR9XG5cblx0c2VjdGlvbi5sb2dve1xuXHRcdGJhY2tncm91bmQ6IHVybChpbWcvbG9nby1mb290ZXIuc3ZnKSAwIDQwcHggbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTI5cHggMTE4cHg7XHRcblxuXHR9XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRzZWN0aW9uLmxvZ297XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoaW1nL2xvZ28tZm9vdGVyLnN2ZykgMCAxMHB4IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogODFweCA3NHB4O1x0XG5cdFx0XHR3aWR0aDogODFweDtcblx0XHRcdGhlaWdodDogMTAwcHg7XG5cdFx0XHRwYWRkaW5nOjA7XHRcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1x0XHRcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDoxMHB4O1xuXHRcdFx0bGVmdDoxMHB4O1x0XG5cdFx0fVx0XG5cblx0fVxuXG5cdC5zb2NpYWx7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1x0XG5cblx0XHRhe1xuXHRcdFx0ZmxleDogMCAxIGF1dG87XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0XHR3aWR0aDogNDBweDtcblx0XHRcdGhlaWdodDogNDBweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1x0XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHRcdFx0XHRcdFxuXG5cdFx0XHQmLmZie1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2ZhY2Vib29rX2J1dHRvbi5zdmcpO1xuXHRcdFx0fVxuXHRcdFx0Ji50d3tcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9Ud2l0dGVyX2J1dHRvbi5zdmcpO1xuXHRcdFx0fVxuXHRcdFx0Ji55dHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy95b3V0dWJlX2J1dHRvbi5zdmcpO1xuXHRcdFx0fVxuXHRcdH1cdFxuXHR9XG5cblx0LnRleHR3aWRnZXQsIC50ZXh0d2lkZ2V0IHB7XG5cdFx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblxuXHRcdGEsIGE6aG92ZXIsIGE6dmlzaXRlZHtcblx0XHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0fVxuXHR9XG59XG5cblxuIiwidWwsIG9sIHtcblx0bWFyZ2luOiAwIDAgMS41ZW0gM2VtO1xufVxuXG51bCB7XG5cdGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5cbm9sIHtcblx0bGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxubGkgPiB1bCxcbmxpID4gb2wge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbmR0IHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRkIHtcblx0bWFyZ2luOiAwIDEuNWVtIDEuNWVtO1xufVxuIiwidGFibGUge1xuXHRtYXJnaW46IDAgMCAxLjVlbTtcblx0d2lkdGg6IDEwMCU7XG59XG4iLCJcbi5mZWF0dXJlZCB7XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHQudGh1bWIubWFpbiB7XG5cdFx0XHRpbWd7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmludHJvLm1haW4ge1xuXHRcdFx0XHRcblx0XHRwYWRkaW5nOiAyMXB4IDMwcHg7XHRcdFxuXHRcdG1hcmdpbi10b3A6LTIwcHg7XG5cdFx0XG5cdFx0cHtcblx0XHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdH1cdFxuXG5cdFx0aDN7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDY7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicChtb2JpbGUpe1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdFx0XHRwYWRkaW5nOjEwcHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtNzBweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRtYXgtd2lkdGg6IDQzZW07XG5cblx0XHRcdGgze1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdH1cblxuXHRcdFx0cHtcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmludHJvLmV2ZW50e1xuXG5cdFx0aDMgc3Bhbntcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cdFx0XG5cblx0fVxuXG5cdC8qIGZlYXR1cmVkIGV2ZW50IG9uIG1vYmlsZSAqL1xuXG5cdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0XHQudGh1bWIuZXZlbnR7XG5cblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblxuXHRcdFx0aW1ne1xuXHRcdFx0XHR3aWR0aDogMTAwcHg7XG5cdFx0XHRcdGhlaWdodDogMTAwcHg7XHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaW50cm8uZXZlbnR7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGhlaWdodDogMTAwcHg7XG5cdFx0XHQvKndpZHRoOiAxOTBweDsqL1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDExMHB4KTtcdFxuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblxuXHRcdFx0aDN7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0LyogbWVkaXVtIG5ld3MgYmxvY2sgKi9cblx0LnRodW1iLnNlY29uZC1uZXdze1xuXHRcdG1hcmdpbi10b3A6MjBweDtcblx0fVxuXG5cdC5pbnRyby5zZWNvbmQtbmV3c3tcdFx0XG5cdFx0bWFyZ2luLXRvcDoyMHB4O1x0XHRcblxuXHRcdGF7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXG5cdFx0aDN7XG5cdFx0XHRmb250LWZhbWlseTogT3N3YWxkO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgyMSk7XG5cdFx0XHRjb2xvcjojMDAwO1xuXHRcdFx0bWFyZ2luOjA7XG5cblx0XHRcdHNwYW57XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cdFxuXG5cdFx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRcdGgze1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdH1cblx0XHR9XHRcblxuXHR9XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0XHQudGh1bWIuc2Vjb25kLW5ld3MgaW1ne1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWF4LXdpZHRoOiA0NjBweDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHR9XG5cdH1cbn1cblxuLyogSUUgZmFsbGJhY2sgKi9cblxuQGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cblx0Lm5vLWNzc2dyaWQgLmhvbWUge1xuXG5cdFx0LmludHJvOm5vdCgubWFpbil7XG5cdFx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdFx0d2lkdGg6IDIyMHB4O1xuXHRcdFx0bWFyZ2luOjIwcHggMDtcblx0XHR9XG5cdFx0LnRodW1iLm1haW57XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHhcblx0XHR9XG5cdFx0LnRodW1iLnNlY29uZC1uZXdze1xuXHRcdFx0bWF4LXdpZHRoOiA0NjBweDtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHR9XG5cdFx0LmJsb2NrLnByb2dyYW0tbGlua3tcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0fVxuXHR9XG59XG5cbiIsIi8qIGFsbCBjc3MgZ3JpZCBzcGVjaWZpY2F0aW9ucywgb25seSBmb3IgZGVza3RvcCBmcm9tIDk2MHB4IHdpZHRoICAqL1xuXG4vKiB0YXJnZXQgSUUxMSB3aXRoIC5uby1jc3NncmlkIGNsYXNzLCBvciBwcm9ncmVzc2l2ZSB0YXJnZXQgbmV3IGJyb3dzZXJzIHdpdGggLmNzc2dyaWQgY2xhc3MgKi9cblxuQGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cblx0LyogYWxnZW1lbmUgb25kZXJkZWxlbi9ibG9ra2VuICovXG5cblx0LmJsb2NrLnByb2dyYW0tbGlua3tcblx0XHRncmlkLWNvbHVtbi1zdGFydDogNDtcblx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTtcblx0XHRncmlkLXJvdy1zdGFydDogMTtcblx0XHRncmlkLXJvdy1lbmQ6IHNwYW4gMTtcdFxuXHR9XG5cblx0LmNzc2dyaWQge1xuXHRcdC5zaXRlLWZvb3RlciB7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdFx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0XHQgIFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAyMjBweDtcblx0XHR9XG5cdH1cblx0XG5cdC8qIGZhbGxiYWNrIGZvciBJRSAqL1xuXHQuc2l0ZS1mb290ZXJ7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRzZWN0aW9ue1xuXHRcdFx0ZmxleDowIDEgMjUlO1xuXHRcdH1cblx0fVx0XG5cblx0LyogaG9tZXBhZ2UgKi9cblxuXHQuc2l0ZS1tYWluIHNlY3Rpb24uZmVhdHVyZWR7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHQgIFx0Z3JpZC1hdXRvLXJvd3M6IDIyMHB4O1xuXHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcblx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7XHQgIFx0XG5cdH1cblxuXHQuc2l0ZS1tYWluIHNlY3Rpb24ubmV3c3tcdFxuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdCAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuXHQgICAgZ3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdCAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcblx0ICAgICAgXCJuYiBudDEgbnQyIG50M1wiXG5cdCAgICAgIFwiLiAgbmkxIG5pMiBuaTNcIlxuXHQgICAgICBcIi4gIGV0MSBldDIgcGIgXCJcblx0ICAgICAgXCIuICBlaTEgZWkyIC4gIFwiO1x0XG5cdFx0QGluY2x1ZGUgZ3JpZC1yZXNldDsgIFx0XG5cdH1cblxuXHQuaG9tZSB7XG5cblx0XHQvKiBmZWF0dXJlZCBncmlkICovXG5cblx0XHQuZmVhdHVyZWQgLnRodW1iLm1haW57XHRcdFxuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMztcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAxO1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDM7XHRcdFx0XG5cdFx0fVxuXHRcdC5mZWF0dXJlZCAuaW50cm8ubWFpbntcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDI7XHRcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAzO1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDE7XHRcdFx0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1x0XG5cdFx0fVxuXHRcdC5mZWF0dXJlZCAudGh1bWIuZXZlbnR7XHRcdFxuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDQ7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTtcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAyO1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDE7XHRcdFx0XG5cdFx0fVxuXHRcdC5mZWF0dXJlZCAuaW50cm8uZXZlbnR7XG5cdFx0XHRncmlkLWNvbHVtbi1zdGFydDogNDtcblx0XHRcdGdyaWQtY29sdW1uLWVuZDogc3BhbiAxO1x0XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMztcblx0XHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1x0XG5cdFx0fVxuXHRcdC5mZWF0dXJlZCAudGh1bWIuc2Vjb25kLW5ld3N7XHRcdFxuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDI7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjtcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiA0O1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDI7XHRcdFx0XHRcblx0XHR9XG5cdFx0LmZlYXR1cmVkIC5pbnRyby5zZWNvbmQtbmV3c3tcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiA0O1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDE7XHRcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiA0O1xuXHRcdFx0Z3JpZC1yb3ctZW5kOiBzcGFuIDI7XHRcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHRcblx0XHR9XG5cblx0XHQvKiBuZXdzIGdyaWQgKi9cblxuXHRcdC5ibG9jay5uZXdzLWxpbmt7XG5cdFx0XHRncmlkLWFyZWE6IG5iO1xuXHRcdH1cblx0XHRcblx0XHQvKiBzdGFydCB3aXRoIG5ldyBncmlkIFxuXHRcdG50aC1jaGlsZCBjb3VudHMgYWxsIHNpYmxpbmcgZGl2cywgc28gdGh1bWJzIGFuZCBpbnRybydzICovXHRcblxuXHRcdC5uZXdze1xuXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoMil7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOm50MTtcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0PiBkaXY6bnRoLWNoaWxkKDMpe1x0XG5cdFx0XHRcdGdyaWQtYXJlYTpuaTE7XHRcblx0XHRcdH1cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg0KXtcdFxuXHRcdFx0XHRncmlkLWFyZWE6bnQyO1x0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoNSl7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOm5pMjtcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg2KXtcdFxuXHRcdFx0XHRncmlkLWFyZWE6bnQzO1x0XHRcblx0XHRcdH1cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg3KXtcblx0XHRcdFx0Z3JpZC1hcmVhOm5pMztcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHQudGh1bWIuZXZlbnRyb3d7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOmV0MTtcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQuaW50cm8uZXZlbnRyb3d7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOmVpMTtcdFxuXHRcdFx0fVxuXHRcdFx0LyogbmV4dCBzaWJsaW5nICovXG5cdFx0XHQudGh1bWIuZXZlbnRyb3cgfiAudGh1bWIuZXZlbnRyb3d7XHRcblx0XHRcdFx0Z3JpZC1hcmVhOmV0MjtcdFx0XHRcdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0LmludHJvLmV2ZW50cm93IH4gLmludHJvLmV2ZW50cm93e1x0XG5cdFx0XHRcdGdyaWQtYXJlYTplaTI7XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdC5ibG9jay5wcm9ncmFtLW92ZXJ2aWV3e1xuXHRcdFx0XHRncmlkLWFyZWE6cGI7XG5cdFx0XHR9XHRcdFx0XHRcdFx0XG5cblx0XHR9XHRcblx0fVxuXHRcblx0LyogSUUgZml4ICovXG5cdC5uby1jc3NncmlkIC5ob21lIC5uZXdzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQuYmxvY2sucHJvZ3JhbS1vdmVydmlld3tcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMjYwcHg7XG5cdFx0XHRyaWdodDogMTBweDtcblx0XHR9XG5cdH1cblx0XG5cblx0LyogcHJvZ3JhbW1hb3ZlcnppY2h0c3BhZ2luYSAqL1xuXG5cdC5wYWdlLXRlbXBsYXRlLXByb2dyYW0tcGFnZXtcblxuXHRcdHNlY3Rpb24ucHJvZ3JhbXtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0XHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHRcdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcdFx0ICBcdFx0ICBcdFxuXHRcdCAgXHRncmlkLXRlbXBsYXRlLWFyZWFzOiBcblx0XHQgICAgICBcImludHJvIGludHJvIGxvYyBwYlwiXG5cdFx0ICAgICAgXCJmMSBmMiBmMyByYlwiO1x0IFxuXHRcdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXG5cblx0XHQgIFx0LmludHJve1xuXHRcdCAgXHRcdGdyaWQtYXJlYTogaW50cm87XHRcdFxuXHRcdCAgXHR9XG5cdFx0ICBcdC5sb2NhdGlvbnN7XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiBsb2M7XHRcblx0XHQgIFx0fVxuXHRcdCAgXHQuYmxvY2sucHJvZ3JhbXtcblx0XHQgIFx0XHRncmlkLWFyZWE6IHBiO1xuXHRcdCAgXHR9XG5cdFx0ICBcdC5maWx0ZXIuY2F0e1xuXHRcdCAgXHRcdGdyaWQtYXJlYTogZjE7XG5cdFx0ICBcdH1cblx0XHQgIFx0LmZpbHRlci50aW1le1xuXHRcdCAgXHRcdGdyaWQtYXJlYTogZjI7XG5cdFx0ICBcdH1cblx0XHQgIFx0LmZpbHRlci5sb2NhdGlvbntcblx0XHQgIFx0XHRncmlkLWFyZWE6IGYzO1xuXHRcdCAgXHR9XG5cdFx0ICBcdC5maWx0ZXIubG9jYXRpb24ubW9udGh7XG5cdFx0ICBcdFx0Z3JpZC1hcmVhOiBmMjtcblx0XHQgIFx0fVx0XG5cdFx0ICBcdC5yZXNldHtcblx0XHQgIFx0XHRncmlkLWFyZWE6IHJiO1xuXHRcdCAgXHR9ICBcdFxuXHRcdH1cblxuXHRcdHNlY3Rpb24ucHJvZ3JhbS1yZXN1bHRze1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHRcdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdFx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHRcdCAgXHRncmlkLWF1dG8tcm93czogMjIwcHg7XG5cdFx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXG5cdFx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcblx0XHR9XG5cdH1cblx0XG5cdC8qIGZhbGxiYWNrIGZvciBJRSAqL1xuXHQubm8tY3NzZ3JpZCAucGFnZS10ZW1wbGF0ZS1wcm9ncmFtLXBhZ2Ugc2VjdGlvbi5wcm9ncmFtLXJlc3VsdHN7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblxuXHRcdD4gZGl2IHtcblx0XHRcdGZsZXg6IDAgMSAxODBweDtcdFx0XHRcdFxuXHRcdFx0bWFyZ2luOiAwIDIwcHggMjBweCAwO1x0XHRcdFx0XHRcdFxuXHRcdH1cblxuXHRcdD4gZGl2Om50aC1jaGlsZCg0bis0KXtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0fVxuXG5cdC8qIG5pZXV3cyBvdmVyemljaHRzcGFnaW5hICovXG5cdFxuXG5cdC5jc3NncmlkIC5wYWdlLXRlbXBsYXRlLW5ld3MtcGFnZXtcblxuXHRcdC8qcHJvZ3JhbW1hYmxva2plIGJ1aXRlbiBoZXQgZ3JpZCAqL1xuXHRcdC5ibG9jay5wcm9ncmFtLWxpbmt7XHRcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDowO1xuXHRcdFx0cmlnaHQ6IDA7XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcblxuXHRcdC5uZXdzb3ZlcnZpZXd7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdFx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0XHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdFx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0XHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcdCAgXHRcblx0XHQgIFx0QGluY2x1ZGUgZ3JpZC1yZXNldDsgXG5cdFx0ICBcdGdyaWQtYXV0by1mbG93OiBjb2x1bW47IFx0XHQgICBcblxuXHRcdFx0LyogMWUgbmlldXdzaXRlbSB0aHVtYiAqL1xuXHRcdCAgICA+IGRpdjpudGgtY2hpbGQoOG4rMSl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAyO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8qIDFlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bisyKXtcdFxuXHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMjtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDI7XHRcdFx0XG5cdFx0XHRcdHdpZHRoOiAyMjBweDsgLyogd2l0cnVpbXRlIHJlY2h0ZXJrYW50ICovXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8qIDJlIG5pZXV3c2l0ZW0gdGh1bWIgKi9cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg4biszKXtcdFxuXHRcdFx0XHRncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8qIDJlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis0KXtcdFxuXHRcdFx0XHRncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8qIDNlIG5pZXV3c2l0ZW0gdGh1bWIgKi9cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis1KXtcdFxuXHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdC8qIDNlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis2KXtcdFxuXHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcblx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiA0ZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNyl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQvKiA0ZSBuaWV1d3NpdGVtIGludHJvICovXG5cdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rOCl7XHRcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XHRcblx0XHRcdFxuXHRcdFx0LmFsbS1idG4td3JhcHtcblx0XHRcdFx0ZGlzcGxheTogY29udGVudHM7XG5cdFx0XHR9XG5cblx0XHRcdCNhamF4LWxvYWQtbW9yZXtcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDQ7XG5cdFx0XHRcdGdyaWQtcm93OiBhdXRvO1xuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0XHR9XG5cblx0XHRcdCNhamF4LWxvYWQtbW9yZS5sb2FkZWR7XG5cdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiA0O1xuXHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gODtcblx0XHRcdFx0d2lkdGg6IDk0MHB4O1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XHRcblx0XHRcdH1cdFx0XHRcdFxuXG5cdFx0XHQuYWxtLWxpc3Rpbmd7XG5cdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDIyMHB4KTsgIFx0XG5cdFx0XHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHRcdFx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHRcdFx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0XHRcdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFx0ICBcdFxuXHRcdFx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7IFxuXHRcdFx0ICBcdGdyaWQtYXV0by1mbG93OiBjb2x1bW47IFx0XHRcdCAgXHRcblxuXHRcdFx0ICBcdC8qIDFlIG5pZXV3c2l0ZW0gdGh1bWIgKi9cblx0XHRcdCAgICA+IGRpdjpudGgtY2hpbGQoOG4rMSl7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMjtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogMWUgbmlldXdzaXRlbSBpbnRybyAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMil7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMjtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMjtcdFx0XHRcblx0XHRcdFx0XHR3aWR0aDogMjIwcHg7IC8qIHdpdHJ1aW10ZSByZWNodGVya2FudCAqL1x0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogMmUgbmlldXdzaXRlbSB0aHVtYiAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rMyl7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIDJlIG5pZXV3c2l0ZW0gaW50cm8gKi9cblx0XHRcdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzQpe1x0XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHQvKiAzZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis1KXtcdFxuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1xuXHRcdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogM2UgbmlldXdzaXRlbSBpbnRybyAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNil7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHQvKiA0ZSBuaWV1d3NpdGVtIHRodW1iICovXG5cdFx0XHRcdD4gZGl2Om50aC1jaGlsZCg4bis3KXtcdFxuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1xuXHRcdFx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LyogNGUgbmlldXdzaXRlbSBpbnRybyAqL1xuXHRcdFx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rOCl7XHRcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogNCAvIHNwYW4gMTtcblx0XHRcdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHR9XHRcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdH1cdFx0XG5cdFxuXG5cdC8qIGZhbGxiYWNrIGZvciBJRSAqL1xuXHQubm8tY3NzZ3JpZCAucGFnZS10ZW1wbGF0ZS1uZXdzLXBhZ2Uge1x0XG5cblx0XHQubW9iaWxlLWluZm97XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZsb2F0OnJpZ2h0O1xuXHRcdH1cdFxuXG5cdFx0LmhpZGUtbW9iaWxle1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQubmV3c292ZXJ2aWV3IHtcdFx0XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcdFx0XHRcblx0XHRcdGhlaWdodDogY2FsYyg0ICogNDYwcHgpO1xuXHRcdFx0d2lkdGg6Y2FsYygxMDAlIC0gMjIwcHgpO1xuXG5cdFx0XHQ+IGRpdiB7XG5cdFx0XHRcdGZsZXg6IDAgMSAyMjBweDtcdFx0XHRcdFx0XG5cdFx0XHRcdHdpZHRoOiAyMjBweDtcdFxuXHRcdFx0XHRoZWlnaHQ6IDIyMHB4O1x0XHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQuaW50cm8ge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdFx0fVx0XHRcdFx0XG5cdFx0fVxuXG5cdH1cblxuXHQvKiB6b2VrcmVzdWx0YXRlbiBwYWdpbmEgKi9cblxuXHQuY3NzZ3JpZCBzZWN0aW9uLnNlYXJjaC1yZXN1bHRze1xuXG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHQgIFx0Z3JpZC1hdXRvLXJvd3M6IDIyMHB4O1xuXHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcdCAgXHRcblx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcblx0ICBcdGdyaWQtYXV0by1mbG93OiBjb2x1bW47ICAgXG5cblx0XHQvKiBhbGxlIGl0ZW1zIGhldHplbGZkZSAqL1xuXHRcdD4gZGl2Om50aC1jaGlsZCg4bisxKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4bisyKXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzMpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcblx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4bis0KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoOG4rNSl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1yb3c6IGF1dG8gLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4bis2KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDhuKzcpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogNCAvIHNwYW4gMTtcblx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg4bis4KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XG5cdFx0XHRncmlkLXJvdzogYXV0byAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHRcblxuXHR9XG5cblx0LyogZmFsbGJhY2sgZm9yIElFICovXG5cdC5uby1jc3NncmlkIC5zZWFyY2gtcmVzdWx0cyBzZWN0aW9uLnNlYXJjaC1yZXN1bHRzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRoZWlnaHQ6IGNhbGMoMiAqIDQ2MHB4KTtcblx0XHR3aWR0aDoxMDAlO1x0XHRcblxuXHRcdD4gZGl2IHtcblx0XHRcdGZsZXg6IDAgMSAyMjBweDtcdFx0XHRcdFxuXHRcdFx0d2lkdGg6IDIyMHB4O1x0XG5cdFx0XHRoZWlnaHQ6IDIyMHB4O1x0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdC5pbnRybyB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cdFx0XHRcdFxuXHR9XG5cdFxuXHRcdFx0IFxuXG5cdC8qIG5pZXV3cyBkZXRhaWxwYWdpbmEgKi9cblxuXHQuc2l0ZS1tYWluIHNlY3Rpb24ubmV3c2RldGFpbCBhcnRpY2xle1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuXHQgIFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IGF1dG87ICBcdFxuXHRcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcdFxuXHR9XG5cblx0LnNpbmdsZSBhcnRpY2xle1xuXG5cdFx0aGVhZGVye1x0XHRcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDI7XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMTtcblx0XHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XHRcdFxuXHRcdH1cdFxuXHRcdC5lbnRyeS1jb250ZW50e1xuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMztcdFxuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDI7XG5cdFx0fVxuXHRcdC5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMjtcblx0XHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XG5cdFx0fVxuXG5cdH1cblxuXHQuc2luZ2xlIHNlY3Rpb24ubmV3c3tcblx0XHRkaXNwbGF5OiBncmlkO1xuXHQgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcblx0ICAgIGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHQgIFx0Z3JpZC1hdXRvLXJvd3M6IDIyMHB4O1xuXHQgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXG5cdCAgICAgIFwibmIgbnQxIG50MiBudDNcIlxuXHQgICAgICBcIi4gIG5pMSBuaTIgbmkzXCI7XHRcblx0XHRAaW5jbHVkZSBncmlkLXJlc2V0O1xuXG5cblx0ICBcdC5ibG9jay5uZXdzLWxpbmt7XG5cdFx0XHRncmlkLWFyZWE6IG5iO1xuXHRcdH1cblxuXHRcdD4gZGl2Om50aC1jaGlsZCgyKXtcdFxuXHRcdFx0Z3JpZC1hcmVhOm50MTtcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoMyl7XHRcblx0XHRcdGdyaWQtYXJlYTpuaTE7XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDQpe1x0XG5cdFx0XHRncmlkLWFyZWE6bnQyO1x0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCg1KXtcdFxuXHRcdFx0Z3JpZC1hcmVhOm5pMjtcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDYpe1x0XG5cdFx0XHRncmlkLWFyZWE6bnQzO1x0XHRcblx0XHR9XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDcpe1xuXHRcdFx0Z3JpZC1hcmVhOm5pMztcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblxuXG5cdH1cblxuXHQvKiBwcm9ncmFtbWEgZGV0YWlsIHBhZ2luYSAqL1xuXG5cdC5zaW5nbGUtZGdnX2V2ZW50IGFydGljbGV7XG5cdFx0XG5cdFx0LmJsb2NrLmV2ZW50LW1ldGFkYXRhe1xuXHRcdFx0Z3JpZC1yb3c6IDIgLyBzcGFuIDE7XHRcblx0XHRcdGdyaWQtY29sdW1uIDogNCAvIHNwYW4gMTtcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1x0XHRcblx0XHR9XG5cblx0fVxuXHQvKiBJRSBmYWxsYmFjayAqL1xuXHQubm8tY3NzZ3JpZCAuc2luZ2xlLWRnZ19ldmVudCBhcnRpY2xlIC5ibG9jay5ldmVudC1tZXRhZGF0YXtcblx0XHRtYXJnaW4tbGVmdDoyMHB4O1xuXHR9XG5cblx0Lyogc3RhbmRhYXJkIGRldGFpbHBhZ2luYSAqL1xuXG5cdC5zaXRlLW1haW4gc2VjdGlvbi5wYWdlZGV0YWlsIGFydGljbGV7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyAgXHRcblx0ICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcblx0ICBcdGdyaWQtcm93LWdhcDoyMHB4O1xuXHQgIFx0Z3JpZC1hdXRvLXJvd3M6IGF1dG87XG5cdCAgXHRncmlkLWNvbHVtbi1zdGFydDogYXV0bzsgIFx0XG5cdFx0QGluY2x1ZGUgZ3JpZC1yZXNldDsgIFx0XG5cdH1cblxuXHQucGFnZS10ZW1wbGF0ZS1kZWZhdWx0IGFydGljbGUge1xuXG5cdFx0aGVhZGVye1x0XHRcblx0XHRcdGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZW5kOiBzcGFuIDI7XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMTtcblx0XHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XHRcdFxuXHRcdH1cdFxuXHRcdC5lbnRyeS1jb250ZW50e1xuXHRcdFx0Z3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG5cdFx0XHRncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMztcdFxuXHRcdFx0Z3JpZC1yb3ctc3RhcnQ6IDI7XG5cdFx0fVxuXHRcdC5ibG9jay5wcm9ncmFtLWxpbmt7XG5cdFx0XHRncmlkLXJvdy1zdGFydDogMjtcblx0XHRcdGdyaWQtcm93LWVuZDogc3BhbiAxO1x0XG5cdFx0fVxuXG5cdH1cblxuXHQvKiBwYXJ0bmVyIHBhZ2luYSAqL1xuXHRcblx0LnBhZ2UtdGVtcGxhdGUtcGFydG5lci1wYWdlIHNlY3Rpb24ucGFydG5lcm92ZXJ2aWV3e1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgIFx0XG5cdCAgXHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdCAgXHRncmlkLXJvdy1nYXA6MjBweDtcblx0ICBcdGdyaWQtYXV0by1yb3dzOiAyMjBweDtcblx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXHQgIFx0XG5cdCAgXHRAaW5jbHVkZSBncmlkLXJlc2V0OyAgXG5cdCAgXHRncmlkLWF1dG8tZmxvdzogY29sdW1uOyBcdFxuXG5cdCAgXHQuaW50cm8ge1xuXHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDI7XG5cdFx0XHRncmlkLXJvdzogMSAvIHNwYW4gMTtcblx0XHR9XG5cdFx0LmJsb2NrLnByb2dyYW0tbGlua3tcblx0XHRcdGdyaWQtcm93LXN0YXJ0OiAxIC8gc3BhbiAxO1xuXHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XHRcblx0XHR9XHQgICBcblx0fVxuXHQuY3NzZ3JpZCAucGFnZS10ZW1wbGF0ZS1wYXJ0bmVyLXBhZ2Ugc2VjdGlvbi5wYXJ0bmVyc3tcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICBcdFxuXHQgIFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHQgIFx0Z3JpZC1yb3ctZ2FwOjIwcHg7XG5cdCAgXHRncmlkLWF1dG8tcm93czogYXV0bztcblx0ICBcdGdyaWQtY29sdW1uLXN0YXJ0OiBhdXRvOyAgXHRcblx0ICBcdGdyaWQtYXV0by1mbG93OiBjb2x1bW47ICAgXHRcdCAgXHRcblx0ICBcdEBpbmNsdWRlIGdyaWQtcmVzZXQ7ICBcdCAgXG5cblx0ICBcdC5pbnRyb3tcblx0ICBcdFx0aGVpZ2h0OiAxMjBweDtcblx0ICBcdH1cdFx0XHQgICBcblxuXHRcdC8qIGhlcmhhbGVuZCBwYXRyb29uIHZhbiAxMiBvbmRlcmRlbGVuLCA2IHBhcnRuZXIgcG9zdHMgKi9cdFx0XG5cdFx0PmRpdntcblx0XHRcdGdyaWQtcm93OiBhdXRvIC8gc3BhbiAxO1x0XG5cdFx0fVxuXHRcdC8qIDFlIHBhcnRuZXIgdGh1bWIsIDIga29sb21tZW4gYnJlZWQgKi9cblx0ICAgID4gZGl2Om50aC1jaGlsZCgxMm4rMSl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1x0XHRcdFx0XG5cdFx0XHRtYXJnaW4tbGVmdDogMjQwcHg7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdC8qIDFlIHBhcnRuZXIgaW50cm8gKi9cblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzIpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcdFx0XHRcdFxuXHRcdFx0bWFyZ2luLWxlZnQ6IDI0MHB4O1x0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rMyl7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XHRcblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzQpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFx0XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybis1KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDQgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rNil7XHRcblx0XHRcdGdyaWQtY29sdW1uOiA0IC8gc3BhbiAxO1x0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHQ+IGRpdjpudGgtY2hpbGQoMTJuKzcpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFx0XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybis4KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybis5KXtcdFxuXHRcdFx0Z3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rMTApe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XHRcdFxuXHRcdD4gZGl2Om50aC1jaGlsZCgxMm4rMTEpe1x0XG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIHNwYW4gMTtcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFx0XG5cdFx0PiBkaXY6bnRoLWNoaWxkKDEybisxMil7XHRcblx0XHRcdGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cdFx0XHRcblx0fVx0XG5cblx0LyogSUUgZmFsbGJhY2sgKi9cblx0Lm5vLWNzc2dyaWQgLnBhZ2UtdGVtcGxhdGUtcGFydG5lci1wYWdlIHNlY3Rpb24ucGFydG5lcnN7XHRcdFxuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0aGVpZ2h0OiA5ODBweDtcdFx0XHRcdFxuXG5cdFx0PiBkaXYge1xuXHRcdFx0ZmxleDogMCAxIDIyMHB4O1x0XHRcdFx0XG5cdFx0XHR3aWR0aDogMjIwcHg7XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVx0XG5cdFx0LnRodW1iIHtcblx0XHRcdGhlaWdodDogMjIwcHg7XG5cdFx0fVxuXHRcdC5pbnRybyB7XG5cdFx0XHRoZWlnaHQ6IDEyMHB4O1xuXHRcdFx0bWF4LWhlaWdodDogMTIwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cdFx0XHRcdFxuXHR9XHRcblx0XG5cbn1cblxuXG4iLCJcbi8qIGdla2xldXJkZSBibG9ramVzIG1ldCBrb3J0ZSBpbmZvIGRvb3IgZGUgZ2VoZWxlIHNpdGUgKi9cblxuLmJsb2Nre1xuXG5cdGhlaWdodDogMjIwcHg7XG5cdHdpZHRoOiAyMjBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBpdm0gZ2VrbGV1cmRlIGhvZWtibG9ramVzICovXG5cblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0ZGl2IHtcblx0XHRmb250LWZhbWlseTogT3N3YWxkO1xuXHRcdGZvbnQtc2l6ZTogZW0oMjQpO1x0XG5cdH1cbn1cblxuQGluY2x1ZGUgYnAobW9iaWxlKXtcblx0LmJsb2Nre1xuXHRcdGhlaWdodDogODBweDtcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMXB4KTtcblx0XHRtYXJnaW46MTBweCAwO1xuXHR9XG59XG5cbi8qIElFIGZhbGxiYWNrICovXG4ubm8tY3NzZ3JpZCB7XG5cdC5zaW5nbGUgLmJsb2NrLnByb2dyYW0tbGlua3tcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0fVxufVxuXG4vKiByb29kIGJsb2tqZSBib3ZlbmFhbiAqL1xuLmJsb2NrLnByb2dyYW0tbGlua3tcblx0YmFja2dyb3VuZC1jb2xvcjogJHJvb2Q7XHRcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9Mb2dvX01HR19XaXRad2FydC5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDc2cHggNjJweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMjRweCAyNnB4O1x0XG5cblx0YXtcdFx0XG5cdFx0cGFkZGluZzplbSgyNCk7XG5cblx0XHRwIHsgXG5cdFx0XHR3aWR0aDogOTVweDtcblx0XHRcdG1hcmdpbi1sZWZ0Ojg0cHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjk7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDAuNnB4O1xuXHRcdH1cblxuXHRcdGRpdntcdFx0XHRcdFx0XG5cdFx0XHRjb2xvcjogI2ZmZjtcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdHBhZGRpbmctdG9wOjEwcHg7XG5cdFx0fVxuXHR9XG5cdCY6YWZ0ZXJ7XG5cdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKHdoaXRlKTtcblx0fVx0XG59XG5cbkBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0LmJsb2NrLnByb2dyYW0tbGlua3tcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbW9iaWxlYmx1ZTtcdFxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvTG9nb19NR0dfV2l0WndhcnQuc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDU5cHggNTBweDtcdFxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDI0cHggMTVweDtcdFxuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRhe1xuXHRcdFx0cGFkZGluZzplbSgxNSk7XHRcdFx0XG5cblx0XHRcdHB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdHdpZHRoOiAyMDBweDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHRcdGRpdntcdFx0XHRcdFx0XG5cdFx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogODNweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG4vKiBvcCBwcm9ncmFtbWFvdmVyemljaHQgKi9cbi5ibG9jay5wcm9ncmFte1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG9ua2VyYmxhdXc7XHRcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9Mb2dvX01HR19XaXRSb29kLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogNzZweCA2MnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxOXB4IDI2cHg7XHRcblxuXHRwIHsgXG5cdFx0d2lkdGg6IDk1cHg7XG5cdFx0bWFyZ2luLWxlZnQ6MTEwcHg7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRsaW5lLWhlaWdodDogMS4yOTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjZweDtcblx0fVxuXG5cdGRpdntcdFx0XHRcdFx0XG5cdFx0Y29sb3I6ICNmZmY7XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0bWFyZ2luLXRvcDo1MHB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdGZvbnQtc2l6ZTogZW0oMTUpO1xuXHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1zbWFsbDtcblx0XHR9XG5cdH1cblxuXHQmOmFmdGVye1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XG5cdH1cdFxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpe1xuXG5cdC5ibG9jay5wcm9ncmFte1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRtb2JpbGVibHVlO1x0XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9Mb2dvX01HR19XaXRSb29kLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiA1OXB4IDUwcHg7XHRcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNHB4IDE1cHg7XHRcdFx0XHRcblxuXHRcdHB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0d2lkdGg6IDIxMHB4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTAzcHg7XG5cdFx0XHRwYWRkaW5nLXRvcDogMTFweDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHR9XG5cblx0XHRkaXZ7XHRcdFx0XHRcdFxuXHRcdFx0cGFkZGluZy10b3A6MDtcblx0XHRcdHBhZGRpbmctbGVmdDogODNweDtcblx0XHRcdG1hcmdpbi10b3A6IC0xMHB4O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxMyk7XG5cdFx0XHRmb250LWZhbWlseTogTW9udHNlcnJhdDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXG5cdFx0XHQudmFuYWZ0aWpke1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1tb2JpbGU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHR9XG5cbn1cblxuXG5cblxuLmJsb2NrLnByb2dyYW0tb3ZlcnZpZXd7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkb25rZXJibGF1dztcdFxuXG5cdGF7XG5cdFx0cGFkZGluZzplbSgyMCk7XG5cdH1cblxuXHRkaXYge1xuXHRcdGNvbG9yOiNmZmY7XG5cdFx0cGFkZGluZy10b3A6IGVtKDQ0KTtcblx0fVxuXG5cdCY6YmVmb3Jle1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XHRcdFxuXHR9XG59XG5cbkBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFxuXHQuYmxvY2sucHJvZ3JhbS1vdmVydmlld3tcblxuXHRcdGRpdntcblx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0fVxuXHRcdFxuXHR9XG5cbn1cblxuLmJsb2NrLm5ld3MtbGlua3tcdFxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ2VlbDtcblx0Y29sb3I6ICNmZmY7XG5cblx0YXtcblx0XHRwYWRkaW5nOmVtKDIwKTtcblx0fVxuXG5cdGRpdiB7XG5cdFx0Y29sb3I6IzAwMDtcblx0XHRwYWRkaW5nLXRvcDogZW0oNDQpO1xuXHR9XG5cblx0JjpiZWZvcmV7XG5cdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKHdoaXRlKTtcdFx0XG5cdH1cblx0XG59XG5cbkBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cblx0LmJsb2NrLm5ld3MtbGluayB7XG5cdFx0bWFyZ2luOjEwcHggMDtcblxuXHRcblx0XHRkaXZ7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR9XG5cdH1cbn1cblxuLmJsb2NrLm5ld3MtbW9yZXtcdFxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcm9vZDtcdFx0XG5cdHBhZGRpbmc6ZW0oMjApO1x0XG5cblx0QGluY2x1ZGUgYnAobW9iaWxlKXtcblx0XHRtYXJnaW4tdG9wOi0xMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblxuXHRkaXYge1xuXHRcdGNvbG9yOiNmZmY7XG5cdFx0cGFkZGluZy10b3A6IGVtKDQ0KTtcblxuXHRcdEBpbmNsdWRlIGJwKG1vYmlsZSl7XG5cdFx0XHRwYWRkaW5nLXRvcDowO1xuXHRcdH1cblx0fVxuXG5cdCY6YmVmb3Jle1xuXHRcdEBpbmNsdWRlIHRvcC1sZWZ0LWNvcm5lcih3aGl0ZSk7XHRcdFxuXHR9XG5cdFxufVxuXG4vKiBwcm9ncmFtbWEgZGV0YWlsIGluZm8gb3AgbW9iaWVsICovXG5cbi5zaW5nbGUgYXJ0aWNsZSAuZW50cnktY29udGVudCAubW9iaWxlLWluZm8ge1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXRvcDogMTBweDtcdFxuXG5cdGRpdntcblx0XHRmb250LXNpemU6IGVtKDE2KTsgLyogcmVzZXQgaXZtIGFuZGVyZSBkaXZzIGluIGJsb2NrcyAqL1xuXHR9XG5cblx0LmluZm8ge1xuXHRcdHBhZGRpbmc6MDtcdFxuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFxuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIoJGRvbmtlcmJsYXV3KTtcdFx0XG5cdFx0fVxuXG5cdFx0cHtcblx0XHRcdGNvbG9yOiRkb25rZXJibGF1dztcdFx0XG5cdFx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjdweDsgIFx0XHRcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XHRcblx0XHRcdG1hcmdpbi1ib3R0b206IDEycHg7XHRcblx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcdFxuXHRcdH1cdFxuXG5cdFx0cDpmaXJzdC1vZi10eXBle1xuXHRcdFx0dG9wOiAtNXB4O1x0XHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHR9XG5cdFx0cDpub3QoOmZpcnN0LW9mLXR5cGUpOmJlZm9yZXtcblx0XHRcdEBpbmNsdWRlIGJvdHRvbS1ib3JkZXItc21hbGwtYmx1ZTtcdFx0XHRcblx0XHR9XHRcdFxuXHRcdFx0XHRcblx0fVxuXG5cdGEuYWFubWVsZGVue1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjoxMHB4IDAgMjBweCAwO1xuXHRcdGhlaWdodDogMzJweDtcdFxuXHRcdG1heC13aWR0aDogMzAwcHg7XG5cdFx0cGFkZGluZzogNXB4IDMwcHg7XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y29sb3I6ICRkb25rZXJibGF1dztcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTMzLCAxODEsIDIxNywgMC40KTs7XG5cdFx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcdFxuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKHdoaXRlKTtcblx0XHR9XG5cdH1cblxufVxuXG4vKiBwcm9ncmFtbWEgZGV0YWlsIHBhZ2luYSBibG9jayBtZXRhZGF0YSovXG5cbi5ibG9jay5ldmVudC1tZXRhZGF0YXtcdFx0XG5cblx0cG9zaXRpb246IHJlbGF0aXZlO1x0XG5cblx0ZGl2e1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpOyAvKiByZXNldCBpdm0gYW5kZXJlIGRpdnMgaW4gYmxvY2tzICovXG5cdH1cblxuXHQuaW5mb3tcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGRvbmtlcmJsYXV3O1xuXHRcdHBhZGRpbmc6IGVtKDIzKSBlbSgyMCk7XHRcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRAaW5jbHVkZSB0b3AtbGVmdC1jb3JuZXIod2hpdGUpO1x0XHRcblx0XHR9XG5cblx0XHRwe1xuXHRcdFx0Y29sb3I6I2ZmZjtcdFx0XG5cdFx0XHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1x0XG5cdFx0XHRmb250LXNpemU6IGVtKDE1KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjhweDsgIFx0XHRcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAuNWVtO1x0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdH1cdFxuXHRcdHA6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdG1hcmdpbi10b3A6IDA7XHRcdFx0XHRcdFx0XHRcdFxuXHRcdH1cblx0XHRwOm5vdCg6Zmlyc3Qtb2YtdHlwZSk6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgYm90dG9tLWJvcmRlci1zbWFsbDtcdFx0XHRcblx0XHR9XG5cdFx0cDpsYXN0LW9mLXR5cGV7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cdFxuXHR9XHRcdFxuXG5cdGRpdi5sb2NhdGllX2ltZ3tcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1x0XG5cdH1cblx0XG5cblx0YS5hYW5tZWxkZW57XG5cdFx0aGVpZ2h0OiA0MHB4O1x0XG5cdFx0cGFkZGluZzogZW0oNykgZW0oMTEpO1x0XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGNvbG9yOiAkZG9ua2VyYmxhdXc7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRnZWVsO1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XHRcblxuXHRcdCY6YmVmb3Jle1xuXHRcdFx0QGluY2x1ZGUgdG9wLWxlZnQtY29ybmVyKHdoaXRlKTtcblx0XHR9XG5cdH1cblx0XG59XG5cbi50aWpkZW4gc3Bhbixcbi5sb2NhdGllcyBzcGFue1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIkBpbXBvcnQgXCJidXR0b25zXCI7XG5cbkBpbXBvcnQgXCJmaWVsZHNcIjtcbiIsImJ1dHRvbixcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0Ym9yZGVyOiAxcHggc29saWQ7XG5cdGJvcmRlci1jb2xvcjogJGNvbG9yX19ib3JkZXItYnV0dG9uO1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtYnV0dG9uO1xuXHRjb2xvcjogcmdiYSgwLCAwLCAwLCAuOCk7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjc1KTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdHBhZGRpbmc6IC42ZW0gMWVtIC40ZW07XG5cblx0Jjpob3ZlciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3JfX2JvcmRlci1idXR0b24taG92ZXI7XG5cdH1cblxuXHQmOmFjdGl2ZSxcblx0Jjpmb2N1cyB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3JfX2JvcmRlci1idXR0b24tZm9jdXM7XG5cdH1cbn1cbiIsImlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1pbnB1dDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yX19ib3JkZXItaW5wdXQ7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0cGFkZGluZzogM3B4O1xuXG5cdCY6Zm9jdXMge1xuXHRcdGNvbG9yOiAkY29sb3JfX3RleHQtaW5wdXQtZm9jdXM7XG5cdH1cbn1cblxuc2VsZWN0IHtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yX19ib3JkZXItaW5wdXQ7XG59XG5cbnRleHRhcmVhIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibGlua3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgTWVudXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtZW51c1wiO1xuIiwiYSB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbms7XG5cblx0Jjp2aXNpdGVkIHtcblx0XHRjb2xvcjogJGNvbG9yX19saW5rLXZpc2l0ZWQ7XG5cdH1cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogMnB4IHNvbGlkICRsaWNodGJsYXV3O1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAtMnB4O1x0XHRcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0b3V0bGluZTogMDtcblx0fVxufVxuIiwiLm1haW4tbmF2aWdhdGlvbiB7XHRcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHRcblx0XG4gICAgQGluY2x1ZGUgYnAoZGVza3RvcCl7XG4gICAgXHR3aWR0aDogY2FsYygxMDAlIC0gMzAwcHgpO1xuXHRcdGZsb2F0OiBsZWZ0O1x0XG4gICAgfVx0XG5cblx0dWwge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1x0XG5cdFx0Y2xlYXI6IGJvdGg7XG5cblx0XHRsaSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDMuNTtcblx0XHRcdHBhZGRpbmc6IDAgMTVweDtcdFx0XG5cdFx0fVx0XG5cblx0XHR1bCB7XG5cdFx0XHRib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDEwMCU7XG5cdFx0XHRsZWZ0OiAtOTk5ZW07XG5cdFx0XHR6LWluZGV4OiA5OTk5OTtcblxuXHRcdFx0dWwge1xuXHRcdFx0XHRsZWZ0OiAtOTk5ZW07XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdH1cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXG5cdFx0XHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBidWxsZXQtYmxvY2soJGxpY2h0YmxhdXcpO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXJ7XG5cdFx0XHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnVsbGV0LWJsb2NrKCRyb29kKTtcblx0XHRcdFx0XHRcdH1cdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0Jjpob3ZlciA+IHVsLFxuXHRcdFx0XHQmLmZvY3VzID4gdWwge1xuXHRcdFx0XHRcdGxlZnQ6IDEwMCU7XG5cdFx0XHRcdH1cdFx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHRhIHtcblx0XHRcdFx0d2lkdGg6IDIwMHB4O1x0XHRcdFx0XG5cdFx0XHR9XHRcdFx0XG5cdFx0XHRcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHRsaTpob3ZlciA+IHVsLFxuXHRcdGxpLmZvY3VzID4gdWwsXG5cdFx0bGk6Zm9jdXMgPiB1bCxcblx0XHRsaTpmb2N1cy13aXRoaW4gPiB1bCB7XG5cdFx0XHRsZWZ0OiBhdXRvO1x0XHRcdFx0XHRcdFx0XHRcdFx0XG5cdFx0fVxuXHRcdFxuXHR9XG5cdFxuXHRAaW5jbHVkZSBicChkZXNrdG9wKXtcblx0XHQubWVudSA+IGxpOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbik6aG92ZXJ7XHRcdFxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBtZW51LWJvdHRvbS1ib3JkZXItc21hbGw7XG5cdFx0XHR9XHRcdFx0XHRcblx0XHR9XG5cdH1cblx0XG5cdFxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6JGRvbmtlcmJsYXV3O1xuXHRcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG5cdFx0cGFkZGluZzouNGVtO1x0XHRcblx0fVxuXG5cblx0Lm1lbnUgPiAuY3VycmVudF9wYWdlX2l0ZW0gPiBhLFxuXHQubWVudSA+IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG5cdC5tZW51ID4gLmN1cnJlbnRfcGFnZV9hbmNlc3RvciA+IGEsXG5cdC5tZW51ID4gLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEge1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJwKGRlc2t0b3Ape1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBtZW51LWJvdHRvbS1ib3JkZXItc21hbGw7XG5cdFx0XHR9XHRcblx0XHR9XHRcblx0fVxufVxuXG4vKiBmb3IgRWRnZSBhbmQgSUUgKi9cbi5uby1mb2N1c3dpdGhpbiAubWFpbi1uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyID4gdWwsXG4ubm8tZm9jdXN3aXRoaW4gLm1haW4tbmF2aWdhdGlvbiB1bCBsaTpmb2N1cyA+IHVsLFxuLm5vLWZvY3Vzd2l0aGluIC5tYWluLW5hdmlnYXRpb24gdWwgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IHVsICB7XG4gIGxlZnQ6IGF1dG8haW1wb3J0YW50OyBcbn1cblxuXG5AaW5jbHVkZSBicChkZXNrdG9wKXtcdFxuXG5cdG5hdltyb2xlPVwic2VhcmNoXCJde1x0XG5cdFx0d2lkdGg6IDUwcHg7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1x0XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHRcblxuXHRcdC8qIHNlYXJjaCBpY29uICovXG5cdFx0YnV0dG9uLnNlYXJjaC10b2dnbGUge1x0XHRcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvbG9lcC5zdmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1x0XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiA3NXB4O1x0XHRcblx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcblx0XHR9XG5cdH1cblxufVxuLyogU21hbGwgbWVudS4gKi9cbi5tZW51LXRvZ2dsZSxcbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCB1bCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQuc2l0ZS1oZWFkZXJ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Lm1lbnUtdG9nZ2xle1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjMwcHg7XG5cdFx0XHRyaWdodDogMTBweDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjdweCAxOHB4O1xuXHRcdFx0d2lkdGg6IDI3cHg7XG5cdFx0XHRoZWlnaHQ6IDE4cHg7XHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0Lm1vYmlsZS1zZWFyY2gtYWN0aXZlIC5zaXRlLWhlYWRlcntcdFx0XG5cblx0XHQubWVudS10b2dnbGV7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybChpbWcvY2xvc2UtYnV0dG9uLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblxuXHRcdH1cblxuXHRcdG5hdltyb2xlPVwic2VhcmNoXCJde1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOjcwcHg7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMzNzczYTA7XHRcdFxuXHRcdFx0aGVpZ2h0OiA0MHB4O1x0XG5cblx0XHRcdC5zZWFyY2gtZmllbGR7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHR3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0Y29sb3I6d2hpdGU7XG5cdFx0XHRcdHBhZGRpbmc6IDdweCA0MHB4IDBweCA0MHB4O1xuXG5cdFx0XHRcdCY6OnBsYWNlaG9sZGVyLCBcblx0ICAgIFx0XHQmOnBsYWNlaG9sZGVyLXNob3due1xuXHRcdCAgICBcdFx0Y29sb3I6d2hpdGU7XG5cdFx0ICAgIFx0XHRvcGFjaXR5OiAxO1xuXHRcdCAgICBcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XHRcdFx0XHRcdFxuXHRcdCAgICBcdH0gICBcblx0XHRcdH1cdFx0ICAgIFx0XHRcblx0XHQgICAgXHQgXHRcblx0XHRcdC5zZWFyY2gtc3VibWl0e1xuXHRcdFx0XHR3aWR0aDogNDBweDtcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvbG9lcC13aXQuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IDE4cHg7XG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRcdGJvcmRlcjpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWR7XG5cdFx0bWFyZ2luLXRvcDogNDVweDtcdFx0XG5cdFx0XG5cdFx0bGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGF7XG5cdFx0XHRkaXNwbGF5OiBub25lOyAvKiBvbmx5IHNob3cgY2hpbGRyZW4gKi9cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRmbG9hdDpub25lO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdHVsLnN1Yi1tZW51e1xuXHRcdFx0XHRmbG9hdDpub25lO1x0XHRcdFx0XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHRsaXtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdFx0bWFyZ2luOjA7XHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGxpe1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdFx0XHRwYWRkaW5nOjA7XHRcdFx0XHRcblxuXHRcdFx0XHRhe1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjc1O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCA0MHB4O1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvKiBvcCBtb2JpZWwgbGlqa3QgYWxsZXMgb3AgaGV0emVsZmRlIG5pdmVhdSB0ZSBzdGFhbiwgY2xhc3MgdG9ldm9lZ2VuIGluIHdwIG1lbnUgKi9cblxuXHRcdGxpLmV2ZW4ge1xuXHRcdFx0IGJhY2tncm91bmQtY29sb3I6ICNEQUU5RjQ7XHRcdCBcdFx0IFxuXHRcdH1cblx0XG5cdH1cdFxufVxuXG5cbi8qIHZpc2libGUgb24gbW9iaWxlIGFuZCB3aGVuIHNlYXJjaCBpcyBhY3RpdmUgKi9cbmJ1dHRvbi5tZW51LXRvZ2dsZXtcblx0YmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoaW1nL21lbnUtdG9nZ2xlLnN2ZykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMjFweCAxNHB4O1xuXHR3aWR0aDogMjFweDtcblx0aGVpZ2h0OiAxNHB4O1x0XG5cdGJvcmRlcjpub25lO1xuXHRib3JkZXItcmFkaXVzOiAwO1x0XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQGluY2x1ZGUgYnAoZGVza3RvcCl7XG5cdC5tZW51LXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG5AaW5jbHVkZSBicChtb2JpbGUpIHtcblxuXHQvKiBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHQgb25seSBtYWluIG5hdiB0b2dnbGUgaXMgdmlzaWJsZSAqL1xuXHQuc2VhcmNoLXRvZ2dsZXtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdFxuXHQvKiBzZWFyY2ggYWN0aXZhdGVkIHRvZ2V0aGVyIHdpdGggdGhlIG1haW4gbmF2ICovXG5cdC5tb2JpbGUtc2VhcmNoLWFjdGl2ZSB7XG5cdFx0LnNlYXJjaC1maWVsZCxcblx0XHQuc2VhcmNoLXN1Ym1pdHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4vKiBtYWluIG5hdmlnYXRpb24gaXMgYWxzbyBjb2xsYXBzZWQgaWYgc2VhcmNoIGlzIGFjdGl2ZSAqL1xuXG4vKiBzZWFyY2ggc3VibWl0IGJ1dHRvbiBieSBkZWZhdWx0IGhpZGRlbiAqL1xuLnNlYXJjaC1maWVsZCwuc2VhcmNoLXN1Ym1pdHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi8qIHdoZW4gc2VhcmNoIGljb24gaXMgY2xpY2tlZCwgc2VhcmNoIGlucHV0IGFuZCBzdWJtaXQgaXMgdmlzaWJsZSAqL1xuI3BhZ2Uuc2VhcmNoLWFjdGl2ZXtcblxuXHQubWVudS10b2dnbGUsXG5cdC5zZWFyY2gtZmllbGQsXG5cdC5zZWFyY2gtc3VibWl0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5tYWluLW5hdmlnYXRpb257XG5cdFx0bWFyZ2luLXRvcDogMjVweDtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsLFxuXHQuc2VhcmNoLXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdG5hdltyb2xlPVwic2VhcmNoXCJde1xuXHRcdHdpZHRoOiA2NTBweDtcdFx0XG5cdH1cblx0XG5cdC8qIG1lbnUgdG9nZ2xlIGljb24gKi9cblx0YnV0dG9uLm1lbnUtdG9nZ2xle1x0XHRcblx0XHRmbG9hdDogbGVmdDtcdFxuXHRcdG1hcmdpbi10b3A6MzRweDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQuc2VhcmNoLWZvcm17XHRcblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcdFx0XG5cblx0XHRAaW5jbHVkZSBicChkZXNrdG9wKSB7XG5cdFx0ICAgIHdpZHRoOiA2NTBweDtcblx0XHQgICAgXG5cdFx0ICAgbGFiZWwgaW5wdXR7XG5cdFx0ICAgIFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHQgICAgXHRcblx0XHQgICAgXHRwYWRkaW5nOiA1cHg7XG5cblx0XHQgICAgXHQmLnNlYXJjaC1maWVsZHtcblx0XHQgICAgXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBcdFx0d2lkdGg6NjUwcHg7XG5cdFx0ICAgIFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0ICAgIFx0XHRwYWRkaW5nOjVweCAxMHB4O1xuXHRcdCAgICBcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdCAgICBcdFx0Ym9yZGVyOm5vbmU7XG5cdFx0ICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEzMywgMTgxLCAyMTcsIDAuMyk7XG5cdFx0ICAgIFx0fVx0XHRcblxuXHRcdCAgICBcdCY6OnBsYWNlaG9sZGVyLCBcblx0XHQgICAgXHQmOnBsYWNlaG9sZGVyLXNob3due1xuXHRcdCAgICBcdFx0Y29sb3I6JGRvbmtlcmJsYXV3O1xuXHRcdCAgICBcdFx0b3BhY2l0eTogMTtcblx0XHQgICAgXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1x0XHRcdFx0XHRcblx0XHQgICAgXHR9ICAgXG5cdFx0ICAgIFx0XG5cdFx0ICAgIH1cblxuXHRcdCAgICBpbnB1dC5zZWFyY2gtc3VibWl0e1xuXHQgICAgXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChpbWcvbG9lcC5zdmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1x0XG5cdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDE4cHg7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuXHRcdFx0XHRib3JkZXI6bm9uZTtcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOjVweDtcblx0XHRcdFx0cmlnaHQ6IDVweDtcblx0ICAgIFx0fVxuXHRcdH1cblx0fVxuXG59XG5cbi8qIHdoZW4gb24gdGhlIHNlYXJjaCByZXN1bHRzIHBhZ2UsIGVsZW1lbnRzIG5vdCB2aXNpYmxlIGFueW1vcmUgaW4gdGhlIGhlYWRlciwgb25seSB0aGUgcGFnZSBjb250ZW50ICovXG5ib2R5LnNlYXJjaHtcblx0LnBhZ2UtY29udGVudCB7XG5cdFx0LnNlYXJjaC1maWVsZCxcblx0XHQuc2VhcmNoLXN1Ym1pdHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4uY29tbWVudC1uYXZpZ2F0aW9uLFxuLnBvc3RzLW5hdmlnYXRpb24sXG4ucG9zdC1uYXZpZ2F0aW9uIHtcblxuXHQuc2l0ZS1tYWluICYge1xuXHRcdG1hcmdpbjogMCAwIDEuNWVtO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQubmF2LXByZXZpb3VzIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG5cblx0Lm5hdi1uZXh0IHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2lkdGg6IDUwJTtcblx0fVxufVxuIiwiLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG5cblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuXHRcdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0XHRjbGlwLXBhdGg6IG5vbmU7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1zY3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDAuODc1KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdFx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRvcDogNXB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cblx0fVxufVxuXG4vKiBEbyBub3Qgc2hvdyB0aGUgb3V0bGluZSBvbiB0aGUgc2tpcCBsaW5rIHRhcmdldC4gKi9cbiNjb250ZW50W3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuXHRvdXRsaW5lOiAwO1xufVxuXG5cbi5za2lwLWxpbms6Zm9jdXN7XG5cdGZvbnQtZmFtaWx5OiBSb2JvdG87XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRjb2xvcjokZG9ua2VyYmxhdXc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0b3V0bGluZToycHggc29saWQgJGRvbmtlcmJsYXV3O1xuXHRib3JkZXI6bm9uZTtcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogbm9uZTtcblx0cGFkZGluZzouNWVtO1xuXHRtYXJnaW46MWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiIsIi5hbGlnbmxlZnQge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4uYWxpZ25yaWdodCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG5cdGNsZWFyOiBib3RoO1xuXHRAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4iLCIuY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YmVmb3JlLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtY29udGVudDpiZWZvcmUsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmJlZm9yZSxcbi5zaXRlLWZvb3RlcjphZnRlciB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcblx0QGluY2x1ZGUgY2xlYXJmaXgtYWZ0ZXI7XG59XG4iLCIud2lkZ2V0IHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cblx0LyogTWFrZSBzdXJlIHNlbGVjdCBlbGVtZW50cyBmaXQgaW4gd2lkZ2V0cy4gKi9cblx0c2VsZWN0IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cbn1cbiIsIi8vIEBpbXBvcnQgXCIuLi9sYXlvdXQvY29udGVudC1zaWRlYmFyXCI7XG4vLyBAaW1wb3J0IFwiLi4vbGF5b3V0L3NpZGViYXItY29udGVudFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBQb3N0cyBhbmQgcGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJwcmltYXJ5L3Bvc3RzLWFuZC1wYWdlc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInByaW1hcnkvY29tbWVudHNcIjtcbiIsIi5zdGlja3kge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmhlbnRyeSB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG4udXBkYXRlZDpub3QoLnB1Ymxpc2hlZCkge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZS1jb250ZW50LFxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSB7XG5cdG1hcmdpbjogMS41ZW0gMCAwO1x0XG59XG5cbi5wYWdlLWxpbmtzIHtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuIiwiLmNvbW1lbnQtY29udGVudCBhIHtcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xufVxuLmJ5cG9zdGF1dGhvciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLyogR2xvYmFsbHkgaGlkZGVuIGVsZW1lbnRzIHdoZW4gSW5maW5pdGUgU2Nyb2xsIGlzIHN1cHBvcnRlZCBhbmQgaW4gdXNlLiAqL1xuLmluZmluaXRlLXNjcm9sbCAucG9zdHMtbmF2aWdhdGlvbiwgLyogT2xkZXIgLyBOZXdlciBQb3N0cyBOYXZpZ2F0aW9uIChhbHdheXMgaGlkZGVuKSAqL1xuLmluZmluaXRlLXNjcm9sbC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIgeyAvKiBUaGVtZSBGb290ZXIgKHdoZW4gc2V0IHRvIHNjcm9sbGluZykgKi9cblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogV2hlbiBJbmZpbml0ZSBTY3JvbGwgaGFzIHJlYWNoZWQgaXRzIGVuZCB3ZSBuZWVkIHRvIHJlLWRpc3BsYXkgZWxlbWVudHMgdGhhdCB3ZXJlIGhpZGRlbiAodmlhIC5uZXZlcmVuZGluZykgYmVmb3JlLiAqL1xuLmluZmluaXR5LWVuZC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi5wYWdlLWNvbnRlbnQgLndwLXNtaWxleSxcbi5lbnRyeS1jb250ZW50IC53cC1zbWlsZXksXG4uY29tbWVudC1jb250ZW50IC53cC1zbWlsZXkge1xuXHRib3JkZXI6IG5vbmU7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdG1hcmdpbi10b3A6IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qIE1ha2Ugc3VyZSBlbWJlZHMgYW5kIGlmcmFtZXMgZml0IHRoZWlyIGNvbnRhaW5lcnMuICovXG5lbWJlZCxcbmlmcmFtZSxcbm9iamVjdCB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogTWFrZSBzdXJlIGxvZ28gbGluayB3cmFwcyBhcm91bmQgbG9nbyBpbWFnZS4gKi9cbi5jdXN0b20tbG9nby1saW5rIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDYXB0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImNhcHRpb25zXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIEdhbGxlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImdhbGxlcmllc1wiO1xuIiwiLndwLWNhcHRpb24ge1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXG5cdGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuXHRcdEBpbmNsdWRlIGNlbnRlci1ibG9jaztcblx0fVxuXG5cdC53cC1jYXB0aW9uLXRleHQge1xuXHRcdG1hcmdpbjogMC44MDc1ZW0gMDtcblx0fVxufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLmdhbGxlcnkge1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLmdhbGxlcnktaXRlbSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHR3aWR0aDogMTAwJTtcblxuXHQvLyBMb29wcyB0byBlbnVtZXJhdGUgdGhlIGNsYXNzZXMgZm9yIGdhbGxlcnkgY29sdW1ucy5cblx0QGZvciAkaSBmcm9tIDIgdGhyb3VnaCA5IHtcblx0XHQuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9ICYge1xuXHRcdFx0bWF4LXdpZHRoOiBtYXAtZ2V0KCAkY29sdW1ucywgJGkgKTtcblx0XHR9XG5cdH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW9CRTtBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0VBcUJnRTtBRXRCekMsOERBQThEO0FBQy9ELHlCQUF5QjtBQUMvQiw0QkFBNEI7QUFDM0IseUNBQXlDO0FBQzFDLG9DQUFvQztBQ25CcEQ7Ozs7Ozs7O0VBUUU7QUdnQkYsaUVBQWlFO0FBT2pFLHlDQUF5QztBQWtDekMsaURBQWlEO0FBY2pELHdCQUF3QjtBQW9CeEIsK0JBQStCO0FBVS9CLFlBQVk7QUFXWixtQkFBbUI7QUFvQm5CLHdDQUF3QztBQVV4Qyx1Q0FBdUM7QUFXdkMsOEJBQThCO0FBVzlCLGdDQUFnQztB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 */