/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */

/*
Document
========
*/

/**
Use a better box model (opinionated).
*/

*,
::before,
::after {
	box-sizing: border-box;
}

html {
	/* Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) */
	font-family:
		system-ui,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
	line-height: 1.15; /* 1. Correct the line height in all browsers. */
	-webkit-text-size-adjust: 100%; /* 2. Prevent adjustments of font size after orientation changes in iOS. */
	tab-size: 4; /* 3. Use a more readable tab size (opinionated). */
}

/*
Sections
========
*/

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

/*
Text-level semantics
====================
*/

/**
Add the correct font weight in Chrome and Safari.
*/

b,
strong {
	font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Consolas,
		'Liberation Mono',
		Menlo,
		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;
}

/*
Tabular data
============
*/

/**
Correct table border color inheritance in Chrome and Safari. (https://issues.chromium.org/issues/40615503, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/

table {
	border-color: currentcolor;
}

/*
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 */
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/

legend {
	padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
	vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-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.
*/

::-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 Chrome and Safari.
*/

summary {
	display: list-item;
}

/* https://unpkg.com/tailwindcss@3.4.17/src/css/preflight.css */

:root {
  interpolate-size: allow-keywords;
}

html {
  line-height: 1.5;
}

img {
  display: block;
}

b,
strong {
  font-weight: 500;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

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

figure {
  margin: 0;
}

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

a {
  color: inherit;
}

address,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-style: inherit;
  font-weight: inherit;
  font-size: inherit;
}

button,
input,
select,
textarea {
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

svg {
  fill-rule: evenodd;
}

/* Variables */

:root {
  --color-red: #e20613;
  --color-black: #000000;
  --color-white: #ffffff;
  --color-yellow: #ffff1c;

  --color-mouse-grey: #666666;
  --color-fog-grey: #dddddd;

  --color-focus: #0875e2;
  --color-label: #4d4d4d;

  --color-error: #bb0d3b;
  --color-error-light: #fcf2f5;

  --color-success: #167441;
  --color-success-light: #e7f1eb;

  --color-info: #1b4baf;
  --color-info-light: #ecf0f9;

  --color-bright-grey: #f6f6f6;

  --color-cold-grey-primary: #718597;
  --color-cold-grey-primary-light: #d4dae0;

  --color-cold-grey-secondary: #eaedf0;
  --color-cold-grey-secondary-light: #f6f6f6;

  --icon-checked: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");

  --shadow-default: 0 4px 8px rgb(0 0 0 / 10%);

  --spacing-xxs: 0.25rem;
  --spacing-xs: 0.5rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 0.75rem;
  --spacing-lg: 1rem;
  --spacing-xl: 1.25rem;
  --spacing-2xl: 1.5rem;
  --spacing-3xl: 2rem;
  --spacing-4xl: 2.5rem;
  --spacing-5xl: 3.5rem;

  --font-size-h1: 2.5rem;
  --font-size-h2: 1.875rem;
  --font-size-h3: 1.4375rem;
  --font-size-h4: 1rem;
  --font-size-h5: 1rem;
  --font-size-h6: 0.875rem;

  --line-height-h1: 3.125rem;
  --line-height-h2: 2.375rem;
  --line-height-h3: 1.75rem;
  --line-height-h4: 1.5rem;
  --line-height-h5: 1.5rem;
  --line-height-h6: 1.125rem;

  --gutter: 1rem;
  --margin: 1rem;

  --admin-bar-height: 0;
  --site-header-height: 4rem;

  @media (min-width: 768px) {
    --spacing-xxs: 0.25rem;
    --spacing-xs: 0.5rem;
    --spacing-sm: 0.75rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.25rem;
    --spacing-xl: 1.5rem;
    --spacing-2xl: 2rem;
    --spacing-3xl: 2.5rem;
    --spacing-4xl: 3.5rem;
    --spacing-5xl: 4rem;

    --font-size-h1: 3.375rem;
    --font-size-h2: 2.5rem;
    --font-size-h3: 1.875rem;
    --font-size-h4: 1.4375rem;
    --font-size-h5: 1rem;
    --font-size-h6: 0.875rem;

    --line-height-h1: 4.25rem;
    --line-height-h2: 3.125rem;
    --line-height-h3: 2.375rem;
    --line-height-h4: 1.75rem;
    --line-height-h5: 1.5rem;
    --line-height-h6: 1.125rem;

    --gutter: 1.5rem;
    --margin: 1.5rem;
  }
}

body.admin-bar {
  --admin-bar-height: 32px;

  @media screen and (max-width: 782px) {
    --admin-bar-height: 46px;
  }
}

/* Fonts */

@font-face {
  font-style: normal;
  font-weight: 400;
  src:
    url("../fonts/15ac8e7f-c1e4-49e2-a4c5-70c5010a412b.woff2") format("woff2"),
    url("../fonts/94f8db11-dda6-4917-bed9-c63403125d25.woff") format("woff");
  font-family: "DIN Pro";
  font-display: swap;
}

@font-face {
  font-style: italic;
  font-weight: 400;
  src:
    url("../fonts/5cf6c537-f9b0-43d7-a616-baefe83631fd.woff2") format("woff2"),
    url("../fonts/08d459fd-6494-4179-ad86-5e145c42f3d0.woff") format("woff");
  font-family: "DIN Pro";
  font-display: swap;
}

@font-face {
  font-style: normal;
  font-weight: 500;
  src:
    url("../fonts/f63c956b-fd2e-4487-822e-f54970607191.woff2") format("woff2"),
    url("../fonts/6246b724-84e1-4987-bfb2-c4edea716d4a.woff") format("woff");
  font-family: "DIN Pro";
  font-display: swap;
}

@font-face {
  font-style: italic;
  font-weight: 500;
  src:
    url("../fonts/47df315c-3bd5-4013-8712-b945163fc746.woff2") format("woff2"),
    url("../fonts/83f6cc6a-e53c-4e57-85d4-1d9c292f4176.woff") format("woff");
  font-family: "DIN Pro";
  font-display: swap;
}

@font-face {
  font-style: normal;
  font-weight: 700;
  src:
    url("../fonts/010a8a45-b837-443a-a642-4a5131349ffd.woff2") format("woff2"),
    url("../fonts/4452d3a9-f715-4379-bb9b-7845de847c23.woff") format("woff");
  font-family: "DIN Pro";
  font-display: swap;
}

/* Global */

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--site-header-height);
  font-family: "DIN Pro", sans-serif;
}

html:has(#wpadminbar) {
  scroll-padding-top: calc(var(--site-header-height) + 32px);
}

a {
  text-decoration: none;

  &:hover {
    text-decoration: underline;
  }
}

.link svg {
  width: 1.25rem;
  height: 1.25rem;
  stroke: currentColor;
  fill: currentColor;
}

.link:has(svg) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--spacing-xs);
}

.caps-warning {
  display: none;
}

/* Forms */

input:is(
    [type="text"],
    [type="email"],
    [type="password"],
    [type="number"],
    [type="tel"],
    [type="url"],
    [type="search"]
  ),
select {
  border: 1px solid var(--color-mouse-grey);
  border-radius: 0.25rem;
  background-color: var(--color-white);
  padding: 1.5rem 1rem 0.5rem;
  width: 100%;

  &:focus {
    outline: 4px solid var(--color-focus);
    outline-width: 1px;
    outline-offset: 4px;
  }
}

button,
input:is([type="button"], [type="submit"]),
.button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-xs);
  transition-duration: 0.15s;
  transition-property: background-color, border-color, color;
  transition-timing-function: ease-in-out;
  cursor: pointer;
  border: 1px solid var(--color-black);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-white);
  padding: 0.625rem 1.25rem;
  line-height: 1.25;

  &.button-primary {
    background-color: var(--color-black);
    color: var(--color-white);
  }

  &:hover {
    border-color: var(--color-fog-grey);
    background-color: var(--color-bright-grey);
    color: var(--color-black);
    text-decoration: none;
  }

  &[disabled] {
    cursor: default;
    border-color: var(--color-fog-grey);
    background-color: var(--color-bright-grey);
    color: var(--color-mouse-grey);
  }

  svg {
    width: 1.25rem;
    height: 1.25rem;
    stroke: currentColor;
    fill: currentColor;
  }
}

input:is([type="checkbox"], [type="radio"]),
input:is([type="checkbox"], [type="radio"]) + label {
  cursor: pointer;
}

input:is([type="checkbox"]) {
  appearance: none;
  border: 1px solid var(--color-mouse-grey);
  border-radius: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;

  &:checked {
    border-color: var(--color-black);
    background-image: var(--icon-checked);
    background-color: var(--color-black);
  }
}

select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-position: right 1.5rem center;
  background-size: 1rem 0.75rem;
  background-repeat: no-repeat;
  padding-right: 0.75rem 4.5rem 0.75rem 1rem;
}

.green-audio-player {
  box-shadow: none;
  width: 100%;
  min-width: auto;

  .controls {
    font-family: inherit;
  }

  .play-pause-btn__icon,
  .volume__speaker,
  .volume .volume__button.open .volume__speaker {
    fill: var(--color-red);
  }

  .slider .gap-progress,
  .slider .gap-progress .pin {
    background-color: var(--color-red);
  }

  .volume .volume__controls {
    border-radius: 16px;
    background-color: var(--color-mouse-grey);
  }

  .volume .volume__controls.top,
  .volume .volume__controls.bottom {
    bottom: 30px;
    left: -7px;
  }
}

:root {
  --plyr-color-main: var(--color-red);
}

.plyr {
  width: 100%;
}

figure {
  position: relative;
}

figure > figcaption {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0.5;
  z-index: 1;
  background-color: var(--color-black);
  color: var(--color-white);
  font-size: 0.75rem;
}

figure > figcaption > * {
  display: block;
  padding: var(--spacing-xxs) var(--spacing-xs);
}

img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.container {
  margin: 0 auto;
  padding-inline: var(--margin);
  width: 100%;
  max-width: 1168px;
}

.full-width {
  padding-inline: var(--margin);
}

.section {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2xl);
}

.section__header h2 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.link-btn {
  display: block;
}

.accent {
  background-color: var(--color-red);
  padding-inline: var(--spacing-xxs);
  color: var(--color-white);
}

label:has(+ input[type="text"]) {
  position: absolute;
  transform-origin: top left;
  z-index: 10;
  transition: all 125ms ease-in-out;
  border: 1px solid transparent;
  padding: 1rem;
  overflow: hidden;
  pointer-events: none;
  color: var(--color-label);
  text-overflow: ellipsis;
  white-space: nowrap;
}

label:has(+ input:focus, + input:valid[required]) {
  transform: scale(0.8) translateY(-0.5rem) translateX(0.2rem);
  color: var(--color-label);
}

.content {
  h1 {
    font-size: var(--font-size-h2);
    line-height: var(--line-height-h2);
  }

  h2 {
    font-size: var(--font-size-h3);
    line-height: var(--line-height-h3);
  }

  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  h4,
  h5,
  h6 {
    font-weight: 500;
    font-size: var(--font-size-h5);
    line-height: var(--line-height-h5);
  }

  a {
    text-decoration: underline;
  }

  a:hover {
    text-decoration: none;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  ol,
  ul {
    margin-bottom: var(--spacing-md);
  }

  ol,
  ul {
    padding-left: var(--spacing-2xl);
  }

  ol {
    list-style: decimal;
  }

  ul {
    list-style: disc;
  }

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

  blockquote {
    margin: 0;
    border-left: 4px solid #00bfff;
    padding: 1em 1.5em;
    font-size: 1.05em;
    line-height: 1.7;
  }

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

  .alignright {
    float: right;
    margin-left: var(--spacing-md);
  }

  .alignleft {
    float: left;
    margin-right: var(--spacing-md);
  }

  :last-child {
    margin-bottom: 0;
  }
}

.pagination {
  display: flex;
  justify-content: center;
  gap: var(--spacing-xs);
  width: 100%;

  .page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--color-mouse-grey);
    border-radius: calc(infinity * 1px);
    padding: 0;
    aspect-ratio: 1;
    width: 2rem;
  }

  .page-numbers > svg {
    width: 1rem;
    height: 1rem;
    stroke: var(--color-mouse-grey);
    stroke-width: 2px;
  }

  .page-numbers.prev > svg {
    transform: translateX(-1px) rotate(90deg);
  }

  .page-numbers.next > svg {
    transform: translateX(1px) rotate(-90deg);
  }

  .page-numbers.prev > svg,
  .page-numbers.next > svg {
    padding: 0.125rem;
  }

  .page-numbers:is(:hover, .current) {
    border-color: var(--color-fog-grey);
    background-color: var(--color-bright-grey);
    color: var(--color-black);
    text-decoration: none;
  }
}

.breadcrumbs ul {
  --row-spacing: 0;
  --col-spacing: var(--spacing-xs);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: var(--row-spacing) var(--col-spacing);
}

.breadcrumbs li {
  display: flex;
  align-items: center;
  gap: var(--row-spacing) var(--col-spacing);
}

#back-to-top {
  --size: 3rem;
  --offset: var(--spacing-lg);

  display: block;
  position: fixed;
  right: calc((var(--size) + var(--offset)) * -1);
  bottom: var(--spacing-lg);
  transition: right 0.2s ease-in-out;
  background-color: var(--color-black);
  padding: var(--spacing-sm);
  width: 3rem;
  height: 3rem;
}

#back-to-top svg {
  transform: rotate(180deg);
  width: 100%;
  height: 100%;
  fill: var(--color-white);
}

#back-to-top.visible {
  right: var(--offset);
}

@media (min-width: 768px) {
  .content {
    h3 {
      font-weight: 300;
    }
  }

  .breadcrumbs ul {
    flex-direction: row;
    flex-wrap: nowrap;
  }

  .breadcrumbs li + li::before {
    display: block;
    background-image: url('data:image/svg+xml,<svg fill="none" height="512" viewBox="0 0 24 24" width="512" xmlns="http://www.w3.org/2000/svg"><path d="m13.7071 19.7071c-.3905.3905-1.0237.3905-1.4142 0s-.3905-1.0237 0-1.4142l5.2928-5.2929h-13.5857c-.55229 0-1-.4477-1-1s.44771-1 1-1h13.5857l-5.2928-5.2929c-.3905-.39052-.3905-1.02369 0-1.41421s1.0237-.39052 1.4142.00001l6.9999 7c.3906.3905.3906 1.0237 0 1.4142z" fill="rgb(0,0,0)" stroke="rgb(0,0,0)"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    width: 1.25rem;
    height: 1.25rem;
    content: "";
  }
}

.site-header {
  --transition-duration: 0.2s;
  --burger-bar-height: 2px;

  display: flex;
  position: fixed;
  top: var(--admin-bar-height);
  left: 0;
  justify-content: space-between;
  align-items: center;
  z-index: 1000;
  backdrop-filter: blur(10px);
  transition: height var(--transition-duration) ease-in-out;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
  background-color: hsla(0, 0%, 100%, 0.75);
  padding: 0;

  width: 100%;
  height: var(--site-header-height);
  font-weight: 400;
  font-size: 1.25rem;

  &:hover {
    background-color: var(--color-white);
  }

  a {
    text-decoration-thickness: 4px;
    text-decoration-skip-ink: none;
    text-underline-offset: 8px;
  }

  .sub-menu a {
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
  }

  & > div {
    display: flex;
    align-items: center;
    height: 100%;
  }

  .custom-logo-link {
    display: flex;
    align-items: center;
    gap: var(--spacing-xl);
    transition: height var(--transition-duration) ease-in-out;
    height: 100%;
    font-weight: 500;
  }

  .custom-logo-link:hover {
    text-decoration-line: none;
  }

  .custom-logo-text {
    display: none;
    white-space: nowrap;
  }

  .custom-logo-image {
    width: auto;
    height: 100%;
    object-fit: contain;
  }

  &:has(.site-header__menu-toggle-icon input:checked) {
    transition: background-color var(--transition-duration) ease-in-out;
    background-color: var(--color-white);
  }

  nav {
    position: absolute;
    top: 100%;
    left: 0;
    gap: var(--spacing-2xl);
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid var(--color-fog-grey);
    width: 100%;
    height: 0;
    overflow: hidden;
  }

  .button {
    font-size: 1rem;
  }

  .menu {
    gap: var(--spacing-md);
    list-style: none;
  }

  .menu-item {
    border-top: 1px solid var(--color-fog-grey);
    background-color: var(--color-white);
  }

  .menu-item a {
    display: flex;
    align-items: center;
    gap: var(--spacing-xs);
    padding: var(--spacing-sm) var(--margin);
  }

  .menu-item-has-children a {
    align-items: flex-end;
  }

  .menu-item a:hover {
    background-color: var(--color-bright-grey);
    text-decoration-line: none;
  }

  .menu-item a > svg {
    display: none;
    width: 1.5rem;
    height: 1.5rem;
  }

  .menu-item-has-children a > svg {
    margin-bottom: 0.3125rem;
    width: 0.625rem;
    height: 0.625rem;
  }

  .sub-menu {
    font-size: 1rem;
  }
  .sub-menu .menu-item {
    padding-left: var(--spacing-md);
  }
}

.site-header__logo {
  padding: var(--spacing-sm) var(--margin);
}

.site-header__menu-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 5rem;
  height: 100%;
}

.site-header__menu-toggle-icon {
  position: relative;
  width: 2rem;
  height: 1.25rem;
}

.site-header__menu-toggle-icon::before,
.site-header__menu-toggle-icon::after,
.site-header__menu-toggle-icon input,
.site-header__menu-toggle-icon input:checked {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-style: none;
  border-radius: calc(infinity * 1px);
  background-image: none;
  background-color: var(--color-black);
  width: 100%;
  height: var(--burger-bar-height);
  pointer-events: none;
  content: "";
}

.site-header__menu-toggle-icon::before {
  top: calc(var(--burger-bar-height) / 2);
}

.site-header__menu-toggle-icon::after {
  top: calc(100% - var(--burger-bar-height) / 2);
}

.site-header__menu-toggle-icon input:checked,
.site-header__menu-toggle-icon:has(input:checked)::before,
.site-header__menu-toggle-icon:has(input:checked)::after {
  transition: all var(--transition-duration) ease-in-out;
}

.site-header__menu-toggle-icon input:checked {
  opacity: 0;
  width: 0;
}

.site-header__menu-toggle-icon:has(input:checked)::before {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.site-header__menu-toggle-icon:has(input:checked)::after {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.site-header__menu:has(.site-header__menu-toggle-icon input:checked) nav {
  transition: height var(--transition-duration) ease-in-out;
  height: auto;
}

@media (min-width: 512px) {
  .site-header .custom-logo-text {
    display: block;
  }
}

@media (min-width: 1024px) {
  .site-header .menu-item > a:hover,
  .site-header .menu-item.current-menu-item > a,
  .site-header .menu-item.current-page-ancestor > a,
  body.single-news
    .site-header
    .menu-item-type-post_type_archive.menu-item-object-news
    > a,
  body.single-event
    .site-header
    .menu-item-type-post_type_archive.menu-item-object-event
    > a {
    background-color: transparent;
    text-decoration-line: underline;
  }

  .site-header {
    padding: var(--spacing-sm) var(--margin);

    nav {
      display: flex;
      position: static;
      transition: none;
      box-shadow: none;
      border-style: none;
      height: auto;
      overflow: visible;
    }

    nav > div {
      display: flex;
      align-items: center;
    }

    .menu {
      display: flex;
    }

    .menu-item {
      position: relative;
      border-style: none;
      background-color: transparent;
    }

    .menu-item a {
      padding: 0;
    }

    .menu-item a > span {
      display: none;
    }

    .menu-item a > svg {
      display: block;
    }

    .sub-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: calc(var(--spacing-md) * -1);
      padding-top: var(--spacing-md);
      width: max-content;
    }

    .sub-menu .menu-item {
      background-color: var(--color-white);
      padding: 0 var(--spacing-md) var(--spacing-xs);
    }

    .sub-menu .menu-item:last-child {
      padding-bottom: var(--spacing-sm);
    }

    .menu-item:last-child .sub-menu {
      right: calc(var(--spacing-md) * -1);
      left: auto;
      text-align: right;
    }

    .menu-item:last-child .sub-menu a {
      display: flex;
      justify-content: flex-end;
    }

    .menu-item:hover .sub-menu,
    .menu-item:focus-within .sub-menu {
      display: block;
    }
  }

  .site-header__logo {
    padding: 0;
  }

  .site-header__menu-toggle {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  body.admin-bar .site-header {
    position: absolute;
  }
}

.site-hero {
  --page-size: 1;
  position: relative;

  margin-top: var(--site-header-height);
  background-color: var(--color-bright-grey);
}

.site-hero__slides {
  gap: 0;
}

.site-hero__slide {
  min-height: 20rem;
}

.site-hero__slide-content {
  display: flex;
  position: relative;
  flex-direction: column;
  height: 100%;
}

a.site-hero__slide-content:hover {
  text-decoration: none;
}

a.site-hero__slide-content:hover .site-hero__text--title {
  text-decoration: underline;
}

.site-hero__image {
  position: absolute;
  inset: 0;
}

.site-hero__image .image {
  width: 100%;
  height: 100%;
}

.site-hero__image img {
  object-fit: cover;
}

.site-hero__body {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 1;
  padding-block: var(--margin);
}

.site-hero__text-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-xs);
}

.site-hero__text {
  display: block;
  background-color: var(--color-white);
  padding-inline: var(--spacing-sm);
}

.site-hero__text--headline {
  padding-block: var(--spacing-xxs);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.site-hero__text--headline .breadcrumbs {
  padding-block: var(--spacing-xxs);
  font-size: 1rem;
}

.site-hero__text--title {
  padding-block: var(--spacing-xxs);
  max-width: 40rem;
  font-weight: 500;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

.site-hero__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xl);
}

.site-hero__meta {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}

.site-hero__meta-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--spacing-xs);
}

.site-hero__meta-item svg {
  width: 1.5rem;
  height: 1.5rem;
}

.site-hero__meta-item time {
  white-space: nowrap;
}

.site-hero__meta-item--fees .has-discount .site-hero__meta-value--fees {
  color: var(--color-mouse-grey);
  text-decoration: line-through;
}

.site-hero__meta-item--fees
  .has-discount
  .site-hero__meta-value--discounted-fees {
  font-weight: 500;
}

.site-hero__meta-item--fees
  .has-discount
  .site-hero__meta-value--discount-code {
  margin-left: var(--spacing-sm);
  outline: 2px solid var(--color-red);
  background-color: var(--color-red);
  padding-inline: var(--spacing-sm);
  color: var(--color-white);
}

.site-hero__meta-item--fees
  .has-discount
  .site-hero__meta-value--discount-code
  i {
  font-style: normal;
  font-family: monospace;
}

.site-hero .carousel__controls {
  position: absolute;
  right: 0;
  bottom: 0;
  border: none;
  padding: var(--spacing-xl) var(--spacing-2xl);
}

.site-hero .carousel__indicators button {
  border-color: var(--color-red);
  background-color: var(--color-red);
}

.site-hero .carousel__indicators button.active {
  border-color: var(--color-white);
  background-color: var(--color-white);
}

.site-hero .carousel__prev,
.site-hero .carousel__next {
  display: none;
}

@media (min-width: 768px) {
  .site-hero__slide.has-image {
    height: 60dvh;
  }
}

.quick-links {
  background-color: var(--color-bright-grey);
}

.quick-links ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-xs) var(--spacing-2xl);
  padding-block: var(--spacing-xl);
}

.site-main {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
  margin-block: var(--spacing-4xl);
}

.section__header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xl);
}

.section__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
}

.sidebar {
  display: flex;
  flex-direction: column;
  gap: var(--gutter);
}

.site-footer {
  background-color: var(--color-bright-grey);
  padding-block: var(--spacing-4xl);
}

.site-footer__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3xl);
}

.site-footer__content > * {
  flex: 1;
}

.site-footer__info {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xl);
}

.site-footer__logo {
  max-width: 10rem;
}

.site-footer__name {
  font-weight: 500;
}

.site-footer__email {
  display: flex;
}

.site-footer .menu {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.site-footer .menu > li > a {
  font-weight: 500;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.site-footer__menu a > svg {
  display: none;
}

@media (min-width: 480px) {
  .site-footer__content {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .site-footer .menu > li > a {
    font-weight: initial;
  }
}

@media (min-width: 1024px) {
  .site-footer__menu {
    flex: 2;
  }

  .site-footer__menu .menu {
    display: block;
    column-count: 2;
  }

  .site-footer__menu .menu > li {
    break-inside: avoid;
    margin-bottom: var(--spacing-md);
  }
}

.archive {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
}

.archive__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
}

.archive__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gutter);
}

.archive__image {
  flex: 1;
  background: var(--color-bright-grey);
  aspect-ratio: 16 / 9;
}

.archive__image > a {
  display: block;
  width: 100%;
  height: 100%;
}

.archive__image figure {
  width: 100%;
  height: 100%;
}

.archive__content {
  display: flex;
  flex: 2;
  flex-direction: column;
  gap: var(--spacing-xl);
}

.archive__content h2 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

.archive__meta-item {
  display: flex;
  gap: 0 var(--spacing-xs);
}

.archive__meta-item svg {
  width: 1.5rem;
  height: 1.5rem;
}

.archive__pagination {
  display: flex;
  justify-content: center;
  gap: var(--spacing-xs);
}

.archive__item--news {
  .archive__headline {
    display: none;
  }

  .archive__meta-item {
    flex-direction: column;
    flex-wrap: wrap;
  }

  .archive__meta svg {
    display: none;
  }
}

.archive__item--event {
  border-left: 0.5rem solid var(--color-red);
  background-color: var(--color-bright-grey);
  padding: var(--spacing-xl);

  .archive__image {
    display: none;
  }

  .archive__meta {
    display: flex;
    flex-direction: column;
    order: 1;
    gap: var(--spacing-sm) var(--spacing-lg);
  }

  .archive__meta-item > strong {
    display: none;
  }

  .archive__meta-item > span {
    flex: 1;
  }

  .archive__meta-item--categories {
    display: none;
  }
}

@media (min-width: 768px) {
  .archive__item {
    flex-direction: row;
  }

  .archive__content {
    gap: var(--spacing-md);
  }

  .archive__content h2 {
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .archive__item--news {
    .archive__meta-item {
      flex-direction: row;
    }
  }

  .archive__item--event {
    .archive__item {
      padding: var(--spacing-lg) var(--spacing-3xl);
    }

    .archive__meta {
      flex-direction: row;
    }
  }
}

.filters {
  display: flex;
  flex-direction: column;
}

.filters__header {
  display: none;
  background-color: var(--color-mouse-grey);
  padding: var(--spacing-xs) var(--spacing-2xl);
  color: var(--color-white);
}

.filters__heading {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.filters__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xxs);
}

.filters__label {
  font-weight: 500;
}

div + .filters__label {
  margin-top: var(--spacing-xs);
}

.filters__items ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-xs) var(--spacing-md);
}

.filters__item {
  --background-color: var(--color-bright-grey);
  align-items: center;
  gap: var(--spacing-xs);
  cursor: pointer;
  border: 3px solid var(--background-color);
  border-radius: calc(infinity * 1px);
  background-color: var(--background-color);
  line-height: 1;
  white-space: nowrap;
}

.filters__item,
.filters__item a {
  display: flex;
  padding: var(--spacing-xxs) var(--spacing-sm);
}

.filters__item:has(a) {
  padding: 0;
}

.filters__item a:hover {
  text-decoration: none;
}

.filters__item.active {
  border-color: var(--color-red);
}

.filters__item-icon {
  display: flex;
  width: 1.25rem;
  height: 1.25rem;
}

.filters__item-icon filter {
  height: 100%;
}

@media (min-width: 768px) {
  .filters__body {
    display: grid;
    grid-template-columns: max-content 1fr;
    align-items: center;
    gap: var(--spacing-sm) var(--spacing-2xl);
  }
}

.post {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
}

.post__body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2xl);
}

.post__main {
  display: flex;
  flex: 2;
  flex-direction: column;
  gap: var(--spacing-2xl);
}

.post__excerpt {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.post__gallery .carousel__slide figure {
  background-color: var(--color-bright-grey);
  aspect-ratio: 4 / 3;
}

.post__sidebar {
  flex: 1;
}

.post__blocks {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xl);
}

@media (min-width: 768px) {
  .post__body {
    flex-direction: row;
    gap: var(--gutter);
  }
}

.search-form__input {
  --button-width: 4rem;

  position: relative;
}

.search-form__input > input {
  padding-right: var(--button-width);
}

.search-form__input > button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  padding: 0;
  width: var(--button-width);
  height: 100%;
}

.search-form__input > button:hover {
  background-color: transparent;
}

.block--accordion {
  --transition-duration: 0.2s;
  --item-border: 1px solid var(--color-fog-grey);

  .block__item {
    border-bottom: var(--item-border);
  }

  .block__item:first-child {
    border-top: var(--item-border);
  }

  details {
    transition: background-color var(--transition-duration) ease-in-out;
  }

  details::details-content {
    transition:
      content-visibility var(--transition-duration) allow-discrete,
      block-size var(--transition-duration) ease-in-out;
    block-size: 0;
    overflow: hidden;
  }

  details[open] {
    background-color: var(--color-bright-grey);
  }

  details[open]::details-content {
    block-size: auto;
  }

  summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: var(--spacing-md);
    font-weight: 500;
  }

  summary::marker {
    display: none;
    content: "";
  }

  summary > svg {
    transition: transform var(--transition-duration) ease-in-out;
    margin-right: 0.5em;
    width: 1rem;
    height: 1rem;
  }

  details[open] > summary > svg {
    transform: rotate(180deg);
  }

  .block__content {
    padding: 0 var(--spacing-md) var(--spacing-md);
  }
}

.block--audio {
  .block__body {
    display: flex;
    flex-direction: column;
    background-color: var(--color-bright-grey);
  }

  .block__image figure {
    height: 100%;
  }

  .block__image img {
    object-fit: cover;
  }

  .block__main > div {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-5xl);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }
}

@media (min-width: 768px) {
  .block--audio {
    .block__body {
      flex-direction: row;
    }

    .block__body > div {
      flex: 1;
    }

    .block__main > div {
      padding: var(--spacing-3xl);
    }

    h2,
    h3 {
      font-weight: 300;
    }

    &.block--image-right .block__body {
      flex-direction: row-reverse;
    }
  }
}

.block--buttons {
  .block__body {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
    gap: var(--margin);
  }

  .block__body:has(> :only-child) {
    grid-template-columns: 1fr;
  }

  .block__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
    background-color: var(--color-bright-grey);
    padding: var(--spacing-xl);
    height: 100%;
  }

  .block__text {
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
    text-wrap: balance;
  }
}

@media (min-width: 576px) {
  .block--buttons {
    .block__body:has(> :only-child) {
      grid-template-columns: repeat(2, 1fr);
    }
  }
}

@media (min-width: 768px) {
  .block--button {
    .block__content {
      padding: var(--spacing-lg) var(--spacing-3xl);
    }
  }
}

.block--downloads {
  .block__main {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
    border-top: 0.5rem solid var(--color-mouse-grey);
    background-color: var(--color-bright-grey);
    padding: var(--spacing-xl);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__content {
    display: flex;
    overflow: hidden;
  }

  .block__content > ul {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
    width: 100%;
  }

  .block__content .link > svg {
    flex-shrink: 0;
  }

  .block__content .link > span {
    display: block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@media (min-width: 768px) {
  .block--downloads {
    .block__main {
      flex-direction: row;
      gap: var(--spacing-4xl);
      padding: var(--spacing-lg) var(--spacing-3xl);
    }

    h2,
    h3 {
      font-weight: 300;
    }
  }
}

.block--featured-content {
  tr.hidden {
    display: none;
  }

  &.show-all tr.hidden {
    display: flex;
  }

  &.show-all .block__actions {
    display: none;
  }

  .table__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-2xl);
  }

  .table .table__cell-content {
    display: block;
  }

  .accent {
    margin-right: var(--spacing-xs);
    text-transform: uppercase;
  }
}

@media (min-width: 768px) {
  .block--featured-content {
    &.show-all tr.hidden {
      display: table-row;
    }

    td:has(.table__cell--scope),
    td:has(.table__cell--date) {
      width: 0;
    }

    .table__cell--scope,
    .table__cell--date {
      white-space: nowrap;
    }
  }
}

.block--info-box {
  .block__main {
    display: flex;
    flex-direction: column;
    border-left: 0.5rem solid var(--color-mouse-grey);
    background-color: var(--color-bright-grey);
  }

  .block__image figure {
    aspect-ratio: 4 / 3;
    width: 100%;
    height: 100%;
  }

  .block__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
    padding: var(--spacing-xl);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__link {
    display: flex;
  }
}

@media (min-width: 768px) {
  .block--info-box {
    .block__main {
      flex-direction: row;
    }

    .block__image {
      width: 100%;
      max-width: 11.25rem;
    }

    .block__content {
      padding: var(--spacing-lg) var(--spacing-3xl);
    }

    h2,
    h3 {
      font-weight: 300;
    }
  }
}

.block--intro {
  .block__body {
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
  }

  .block__main {
    flex: 2;
  }

  .block__sidebar {
    flex: 1;
  }
}

@media (min-width: 768px) {
  .block--intro {
    .block__body {
      flex-direction: row;
    }
  }
}

.block--list {
  --border-width: 0.5rem;

  .block__list {
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
  }

  .block__item {
    display: flex;
    flex-direction: column;
    border-left: var(--border-width) solid var(--color-mouse-grey);
    background-color: var(--color-bright-grey);
  }

  .block__image figure {
    width: 100%;
    height: 100%;
  }

  .block__image img {
    aspect-ratio: 4 / 3;
  }

  .block__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
    padding: var(--spacing-xl);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__links {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--spacing-sm);
  }

  .block__link {
    display: flex;
  }

  .block__link a {
    width: 100%;
  }
}

.block--list[data-layout="column"] {
  .block__item {
    border-top: var(--border-width) solid var(--color-mouse-grey);
    border-left: none;
  }
}

@media (min-width: 768px) {
  .block--list {
    .block__item {
      flex-direction: row;
    }

    .block__content {
      padding: var(--spacing-lg) var(--spacing-3xl);
    }

    h2,
    h3 {
      font-weight: 300;
    }
  }

  .block--list[data-layout="column"] {
    .block__list {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(24rem, 1fr));
    }

    .block__list:has(> :only-child) {
      grid-template-columns: repeat(2, 1fr);
    }

    .block__item {
      flex-direction: column;
    }

    .block__image {
      max-width: none;
    }

    .block__image figure {
      aspect-ratio: 16 / 9;
    }
  }

  .block--list[data-layout="row"] {
    .block__image figure {
      width: 11.25rem;
    }

    .block__links {
      align-items: flex-start;
    }
  }
}

.block--logo-grid {
  --border-color: var(--color-mouse-grey);

  .block__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
    border-top: 1px solid var(--border-color);
  }

  .block__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-md);
    border-bottom: 1px solid var(--border-color);
    background-color: var(--color-bright-grey);
    padding: var(--spacing-2xl);
    text-align: center;
  }

  .block__logo {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
  }

  .block__logo figure {
    aspect-ratio: 1;
    max-height: 12rem;
  }

  .block__logo img {
    object-fit: contain;
  }
}

.block--model-grid {
  .block__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
    gap: var(--gutter);
    border-top: 1px solid var(--border-color);
  }

  .block__item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--color-bright-grey);
  }

  .block__link {
    display: block;
  }

  .block__image {
    display: flex;
    padding: var(--spacing-2xl);
  }

  .block__image figure {
    width: 100%;
  }

  .block__image img {
    aspect-ratio: 2 / 1;
    object-fit: contain;
  }

  .block__news {
    background-color: var(--color-fog-grey);
    padding: var(--spacing-xs) var(--spacing-xl);
    text-align: center;
  }
}

@media (min-width: 768px) {
  .block--model-grid {
    .block__image {
      padding: var(--spacing-xl);
    }
  }
}

.block--recent-articles {
  tr.hidden {
    display: none;
  }

  &.show-all tr.hidden {
    display: flex;
  }

  &.show-all .block__actions {
    display: none;
  }

  .table__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-2xl);
  }

  .table .table__cell-content {
    display: block;
  }

  .accent {
    margin-right: var(--spacing-xs);
    text-transform: uppercase;
  }
}

@media (min-width: 768px) {
  .block--recent-articles {
    &.show-all tr.hidden {
      display: table-row;
    }

    td:has(.table__cell--scope),
    td:has(.table__cell--date) {
      width: 0;
    }

    .table__cell--scope,
    .table__cell--date {
      white-space: nowrap;
    }
  }
}

.block--slider {
  .block__body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2xl);
  }

  .block__slider {
    position: relative;
  }

  .carousel {
    --page-size: 1;
  }

  .block__slide {
    display: flex;
    flex-direction: column;
    background-color: var(--color-bright-grey);
  }

  .block__image figure {
    height: 100%;
  }

  .block__image img {
    object-fit: cover;
  }

  .block__main > div {
    display: flex;
    flex-direction: column;
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-5xl);
  }

  .block__main > div > *:not(:last-child) {
    margin-bottom: var(--spacing-lg);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__main > div > .block__subheading {
    margin-bottom: var(--spacing-xs);
    font-weight: 500;
    font-size: var(--font-size-md);
  }

  .block__links {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
  }

  .block__links .block__link {
    display: flex;
    justify-content: flex-start;
  }

  .block__nav {
    display: flex;
    position: absolute;
    right: 0;
    bottom: 0;
    justify-content: flex-end;
    width: 50%;
  }

  .carousel__controls {
    border: none;
    padding: var(--spacing-lg) var(--spacing-xl);
  }

  .block__link {
    display: flex;
    justify-content: center;
  }
}

.block--slider-video {
  .block__slide > .block__video {
    flex: 2;
  }

  .block__video {
    display: flex;
    align-items: center;
  }

  .block__video iframe {
    display: block;
    border: none;
    aspect-ratio: 16 / 9;
    width: 100%;
  }

  .block__nav {
    width: 33.333%;
  }
}

@media (min-width: 768px) {
  .block--slider {
    .block__slide {
      flex-direction: row;
    }

    .block__main > div {
      padding: var(--spacing-3xl);
    }

    .block__body:has(.block__nav) .block__main > div {
      padding: var(--spacing-3xl) var(--spacing-3xl) var(--spacing-5xl);
    }

    .block__slide > div {
      flex: 1;
    }

    h2,
    h3 {
      font-weight: 300;
    }

    &.block--image-right .block__slide {
      flex-direction: row-reverse;
    }

    &.block--image-right .block__nav {
      right: auto;
      left: 0;
    }
  }
}

.block--teaser {
  .block__body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2xl);
  }

  .block__list {
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
  }

  .block__item {
    position: relative;
    border-bottom: 8px solid var(--color-mouse-grey);
    background: var(--color-bright-grey);
  }

  .block__badge {
    position: absolute;
    background-color: var(--color-black);
    padding: var(--spacing-xxs) var(--spacing-sm);
    color: var(--color-white);
  }

  .block__image {
    background-color: var(--color-fog-grey);
    aspect-ratio: 16/9;
  }

  .block__image a {
    display: block;
    width: 100%;
    height: 100%;
  }

  .block__image figure {
    width: 100%;
    height: 100%;
  }

  .block__meta {
    padding: var(--spacing-xl);
  }

  .block__heading {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__link {
    display: flex;
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .block--teaser {
    .block__list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);

      width: 100%;
      overflow: hidden;
    }

    .block__meta {
      padding: var(--spacing-lg) var(--spacing-xl);
    }
  }
}

.block--tools-table {
  --gutter: var(--spacing-md);
  --row-separator: 1px solid var(--color-fog-grey);
  --transition-duration: 0.2s;

  .table {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-3xl);
  }

  .table__main {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .table__header {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  table {
    border-bottom: var(--row-separator);
    border-collapse: collapse;
    width: 100%;
  }

  thead {
    display: none;
  }

  th,
  td {
    padding: 0;
  }

  th {
    font-weight: 500;
  }

  .table__row--content td {
    padding: 0;
  }

  th.sortable .table__header-label {
    cursor: pointer;
    text-decoration: underline;
  }

  th.sortable .table__header-label:hover {
    text-decoration: none;
  }

  .table__header-label {
    display: inline-block;
    position: relative;
  }

  .table__header-label::after {
    display: block;
    position: absolute;
    top: 50%;
    left: calc(100% + var(--spacing-xs));
    transform: translateY(-50%);
    font-size: var(--font-size-h6);
    line-height: var(--line-height-h6);
  }

  th.sort-asc .table__header-label::after {
    content: "▼";
  }

  th.sort-desc .table__header-label::after {
    content: "▲";
  }

  .table__row {
    display: flex;
    position: relative;
    flex-direction: column;
  }

  .table__row--data {
    padding: var(--spacing-sm) 0;
  }

  .table__row--data,
  .table__row--empty {
    border-top: var(--row-separator);
  }

  .table__cell {
    display: flex;
    gap: var(--spacing-xs);
    padding-block: 0.125rem;
  }

  .table__cell-legend {
    font-weight: 500;
  }

  .table__cell-content {
    display: flex;
    gap: var(--spacing-xs);
  }

  .table__cell-icon img {
    object-fit: contain;
  }

  .table__cell--open {
    position: absolute;
    right: 0;
    bottom: var(--spacing-sm);
  }

  .table__content {
    transition: height var(--transition-duration) ease-in-out;
    height: 0;
    overflow: hidden;
  }

  tr.visible .table__content {
    height: auto;
  }

  tr:has(+ tr .table__content) {
    cursor: pointer;
  }
}

.block--tools-table {
  .filters__items--base_models .filters__item-icon + .filters__item-label {
    display: none;
  }

  .filters__items--base_models .filters__item-icon {
    width: auto;
  }

  .table__cell-icon + .table__cell-label {
    display: none;
  }

  .table__cell--base_models {
    .table__cell-icon {
      display: flex;
      width: 1.5rem;
      height: 1.5rem;
    }
  }

  .table__cell--application,
  .table__cell--license {
    .table__cell-icon {
      display: block;
      border: 2px solid var(--color-mouse-grey);
      border-radius: calc(infinity * 1px);
      padding: 0.25rem;
      width: 1.625rem;
      height: 1.625rem;
    }
  }

  .table__cell--open {
    display: none;
    justify-content: center;

    .table__cell-icon {
      display: flex;
      transition: transform var(--transition-duration) ease-in-out;
      width: 1rem;
      height: 1rem;
    }
  }

  tr:has(+ tr .table__content) .table__cell--open {
    display: flex;
  }

  tr:has(+ tr.visible) .table__cell--open .table__cell-icon {
    transform: rotate(180deg);
  }

  .table__content-items {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
    padding-block: var(--spacing-md);
  }

  .table__content-item--news ul {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
  }

  .table__news-date {
    font-weight: 500;
  }

  .table__content-item--url {
    display: flex;
    justify-content: flex-end;
  }
}

@media (min-width: 768px) {
  .block--tools-table {
    thead {
      display: revert;
    }

    th,
    td {
      padding: var(--spacing-xs) var(--gutter) var(--spacing-xs) 0;
      text-align: left;
    }

    th:last-child,
    td:last-child {
      padding-right: 0;
    }

    .table__row {
      display: revert;
    }

    .table__cell {
      padding: 0;
    }

    .table__cell-legend {
      display: none;
    }
  }
}

.block--video {
  .block__body {
    display: flex;
    flex-direction: column;
    background-color: var(--color-bright-grey);
  }

  .block__body > .block__video {
    flex: 2;
  }

  .block__main > div {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-5xl);
  }

  h2,
  h3 {
    font-weight: 500;
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
  }

  .block__video {
    display: flex;
    align-items: center;
  }

  .block__video iframe {
    display: block;
    border: none;
    aspect-ratio: 16 / 9;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .block--video {
    .block__body {
      flex-direction: row;
    }

    .block__body > div {
      flex: 1;
    }

    .block__main > div {
      padding: var(--spacing-3xl);
    }

    h2,
    h3 {
      font-weight: 300;
    }

    &.block--video-right .block__body {
      flex-direction: row-reverse;
    }
  }
}

.widget {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
  background-color: var(--color-bright-grey);
  padding: var(--spacing-xl);
}

.widget h3 {
  font-weight: 500;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

@media (min-width: 768px) {
  .widget {
    padding: var(--spacing-lg) var(--spacing-3xl);
  }
}

.widget--contact {
  .widget__body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
  }

  .widget__item--heading {
    font-weight: 500;
  }

  .widget__item--image {
    max-width: 5rem;
  }
}

.widget--cta {
  .widget__body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .widget__image img {
    margin: 0 auto;
    max-width: 20rem;
  }
}

.widget--training-meta {
  h4 {
    font-weight: 500;
  }

  .widget__body {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl);
  }

  .widget__item {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
  }

  .widget__item--location .widget__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .widget__item--registration .widget__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .button.button-primary {
    border-color: var(--color-red);
    background-color: var(--color-red);
  }

  .button.button-primary:hover {
    background-color: var(--color-bright-grey);
    color: var(--color-red);
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9tb2Rlcm4tbm9ybWFsaXplL21vZGVybi1ub3JtYWxpemUuY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9yZXNldC5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9iYXNlLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3ZlbmRvci9ncmVlbi1hdWRpby5wY3NzIiwiLi4vLi4vc3JjL2Nzcy92ZW5kb3IvcGx5ci5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jhc2UucGNzcyIsIi4uLy4uL3NyYy9jc3MvbWl4aW5zL2xhYmVsLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvaGVhZGVyLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvaGVyby5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL3F1aWNrLWxpbmtzLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvbWFpbi5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL3NlY3Rpb24ucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS9zaWRlYmFyLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvZm9vdGVyLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYXJjaGl2ZS5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2ZpbHRlcnMucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS9wb3N0LnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvc2VhcmNoLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL2FjY29yZGlvbi5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jsb2Nrcy9hdWRpby5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jsb2Nrcy9idXR0b25zLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL2Rvd25sb2Fkcy5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jsb2Nrcy9mZWF0dXJlZC1jb250ZW50LnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL2luZm8tYm94LnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL2ludHJvLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL2xpc3QucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS9ibG9ja3MvbG9nby1ncmlkLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL21vZGVsLWdyaWQucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS9ibG9ja3MvcmVjZW50LWFydGljbGVzLnBjc3MiLCIuLi8uLi9zcmMvY3NzL3NpdGUvYmxvY2tzL3NsaWRlci5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jsb2Nrcy90ZWFzZXIucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS9ibG9ja3MvdG9vbC10YWJsZS5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL2Jsb2Nrcy92aWRlby5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL3dpZGdldHMucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS93aWRnZXRzL2NvbnRhY3QucGNzcyIsIi4uLy4uL3NyYy9jc3Mvc2l0ZS93aWRnZXRzL2N0YS5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9zaXRlL3dpZGdldHMvdHJhaW5pbmctbWV0YS5wY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhGQUE4Rjs7QUFFOUY7OztDQUdDOztBQUVEOztDQUVDOztBQUVEOzs7Q0FHQyxzQkFBc0I7QUFDdkI7O0FBRUE7Q0FDQyxzSEFBc0g7Q0FDdEg7Ozs7Ozs7O2tCQVFpQjtDQUNqQixpQkFBaUIsRUFBRSxnREFBZ0Q7Q0FDbkUsOEJBQThCLEVBQUUsMEVBQTBFO0NBQzFHLFdBQVcsRUFBRSxtREFBbUQ7QUFDakU7O0FBRUE7OztDQUdDOztBQUVEO0NBQ0MsU0FBUyxFQUFFLHVDQUF1QztBQUNuRDs7QUFFQTs7O0NBR0M7O0FBRUQ7O0NBRUM7O0FBRUQ7O0NBRUMsbUJBQW1CO0FBQ3BCOztBQUVBOzs7Q0FHQzs7QUFFRDs7OztDQUlDOzs7Ozs7V0FNVSxFQUFFLE1BQU07Q0FDbEIsY0FBYyxFQUFFLE1BQU07QUFDdkI7O0FBRUE7O0NBRUM7O0FBRUQ7Q0FDQyxjQUFjO0FBQ2Y7O0FBRUE7O0NBRUM7O0FBRUQ7O0NBRUMsY0FBYztDQUNkLGNBQWM7Q0FDZCxrQkFBa0I7Q0FDbEIsd0JBQXdCO0FBQ3pCOztBQUVBO0NBQ0MsZUFBZTtBQUNoQjs7QUFFQTtDQUNDLFdBQVc7QUFDWjs7QUFFQTs7O0NBR0M7O0FBRUQ7O0NBRUM7O0FBRUQ7Q0FDQywwQkFBMEI7QUFDM0I7O0FBRUE7OztDQUdDOztBQUVEOzs7Q0FHQzs7QUFFRDs7Ozs7Q0FLQyxvQkFBb0IsRUFBRSxNQUFNO0NBQzVCLGVBQWUsRUFBRSxNQUFNO0NBQ3ZCLGlCQUFpQixFQUFFLE1BQU07Q0FDekIsU0FBUyxFQUFFLE1BQU07QUFDbEI7O0FBRUE7O0NBRUM7O0FBRUQ7Ozs7Q0FJQywwQkFBMEI7QUFDM0I7O0FBRUE7O0NBRUM7O0FBRUQ7Q0FDQyxVQUFVO0FBQ1g7O0FBRUE7O0NBRUM7O0FBRUQ7Q0FDQyx3QkFBd0I7QUFDekI7O0FBRUE7O0NBRUM7O0FBRUQ7O0NBRUMsWUFBWTtBQUNiOztBQUVBOzs7Q0FHQzs7QUFFRDtDQUNDLDZCQUE2QixFQUFFLE1BQU07Q0FDckMsb0JBQW9CLEVBQUUsTUFBTTtBQUM3Qjs7QUFFQTs7Q0FFQzs7QUFFRDtDQUNDLHdCQUF3QjtBQUN6Qjs7QUFFQTs7O0NBR0M7O0FBRUQ7Q0FDQywwQkFBMEIsRUFBRSxNQUFNO0NBQ2xDLGFBQWEsRUFBRSxNQUFNO0FBQ3RCOztBQUVBOzs7Q0FHQzs7QUFFRDs7Q0FFQzs7QUFFRDtDQUNDLGtCQUFrQjtBQUNuQjs7QUNsTkEsK0RBQStEOztBQUUvRDtFQUNFLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsZ0JBQWdCO0FBQ2xCOztBQUVBOzs7Ozs7O0VBT0UsU0FBUztBQUNYOztBQUVBOztFQUVFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsU0FBUztBQUNYOztBQUVBO0VBQ0UsZUFBZTtFQUNmLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7Ozs7Ozs7RUFPRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGtCQUFrQjtBQUNwQjs7QUFFQTs7OztFQUlFLG9CQUFvQjtBQUN0Qjs7QUFFQTs7Ozs7O0VBTUUsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQy9FQSxjQUFjOztBQUVkO0VBQ0Usb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0QixzQkFBc0I7RUFDdEIsdUJBQXVCOztFQUV2QiwyQkFBMkI7RUFDM0IseUJBQXlCOztFQUV6QixzQkFBc0I7RUFDdEIsc0JBQXNCOztFQUV0QixzQkFBc0I7RUFDdEIsNEJBQTRCOztFQUU1Qix3QkFBd0I7RUFDeEIsOEJBQThCOztFQUU5QixxQkFBcUI7RUFDckIsMkJBQTJCOztFQUUzQiw0QkFBNEI7O0VBRTVCLGtDQUFrQztFQUNsQyx3Q0FBd0M7O0VBRXhDLG9DQUFvQztFQUNwQywwQ0FBMEM7O0VBRTFDLDZPQUE2Tzs7RUFFN08sNENBQTRDOztFQUU1QyxzQkFBc0I7RUFDdEIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixxQkFBcUI7O0VBRXJCLHNCQUFzQjtFQUN0Qix3QkFBd0I7RUFDeEIseUJBQXlCO0VBQ3pCLG9CQUFvQjtFQUNwQixvQkFBb0I7RUFDcEIsd0JBQXdCOztFQUV4QiwwQkFBMEI7RUFDMUIsMEJBQTBCO0VBQzFCLHlCQUF5QjtFQUN6Qix3QkFBd0I7RUFDeEIsd0JBQXdCO0VBQ3hCLDBCQUEwQjs7RUFFMUIsY0FBYztFQUNkLGNBQWM7O0VBRWQscUJBQXFCO0VBQ3JCLDBCQUEwQjs7RUFFMUI7SUFDRSxzQkFBc0I7SUFDdEIsb0JBQW9CO0lBQ3BCLHFCQUFxQjtJQUNyQixrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIscUJBQXFCO0lBQ3JCLHFCQUFxQjtJQUNyQixtQkFBbUI7O0lBRW5CLHdCQUF3QjtJQUN4QixzQkFBc0I7SUFDdEIsd0JBQXdCO0lBQ3hCLHlCQUF5QjtJQUN6QixvQkFBb0I7SUFDcEIsd0JBQXdCOztJQUV4Qix5QkFBeUI7SUFDekIsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQix5QkFBeUI7SUFDekIsd0JBQXdCO0lBQ3hCLDBCQUEwQjs7SUFFMUIsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtFQUNsQjtBQUNGOztBQUVBO0VBQ0Usd0JBQXdCOztFQUV4QjtJQUNFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBLFVBQVU7O0FBRVY7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCOzs0RUFFMEU7RUFDMUUsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEI7OzRFQUUwRTtFQUMxRSxzQkFBc0I7RUFDdEIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQjs7NEVBRTBFO0VBQzFFLHNCQUFzQjtFQUN0QixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCOzs0RUFFMEU7RUFDMUUsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEI7OzRFQUUwRTtFQUMxRSxzQkFBc0I7RUFDdEIsa0JBQWtCO0FBQ3BCOztBQUVBLFdBQVc7O0FBRVg7RUFDRSx1QkFBdUI7RUFDdkIsNkNBQTZDO0VBQzdDLGtDQUFrQztBQUNwQzs7QUFFQTtFQUNFLDBEQUEwRDtBQUM1RDs7QUFFQTtFQUNFLHFCQUFxQjs7RUFFckI7SUFDRSwwQkFBMEI7RUFDNUI7QUFDRjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGFBQWE7RUFDYiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQSxVQUFVOztBQUVWOzs7Ozs7Ozs7O0VBVUUseUNBQXlDO0VBQ3pDLHNCQUFzQjtFQUN0QixvQ0FBb0M7RUFDcEMsMkJBQTJCO0VBQzNCLFdBQVc7O0VBRVg7SUFDRSxxQ0FBcUM7SUFDckMsa0JBQWtCO0lBQ2xCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBOzs7RUFHRSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsMEJBQTBCO0VBQzFCLDBEQUEwRDtFQUMxRCx1Q0FBdUM7RUFDdkMsZUFBZTtFQUNmLG9DQUFvQztFQUNwQyxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLHlCQUF5QjtFQUN6QixpQkFBaUI7O0VBRWpCO0lBQ0Usb0NBQW9DO0lBQ3BDLHlCQUF5QjtFQUMzQjs7RUFFQTtJQUNFLG1DQUFtQztJQUNuQywwQ0FBMEM7SUFDMUMseUJBQXlCO0lBQ3pCLHFCQUFxQjtFQUN2Qjs7RUFFQTtJQUNFLGVBQWU7SUFDZixtQ0FBbUM7SUFDbkMsMENBQTBDO0lBQzFDLDhCQUE4QjtFQUNoQzs7RUFFQTtJQUNFLGNBQWM7SUFDZCxlQUFlO0lBQ2Ysb0JBQW9CO0lBQ3BCLGtCQUFrQjtFQUNwQjtBQUNGOztBQUVBOztFQUVFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIseUNBQXlDO0VBQ3pDLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2QsZUFBZTs7RUFFZjtJQUNFLGdDQUFnQztJQUNoQyxxQ0FBcUM7SUFDckMsb0NBQW9DO0VBQ3RDO0FBQ0Y7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsaVBBQWlQO0VBQ2pQLHdDQUF3QztFQUN4Qyw2QkFBNkI7RUFDN0IsNEJBQTRCO0VBQzVCLDBDQUEwQztBQUM1Qzs7QUNwU0E7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7O0VBRWY7SUFDRSxvQkFBb0I7RUFDdEI7O0VBRUE7OztJQUdFLHNCQUFzQjtFQUN4Qjs7RUFFQTs7SUFFRSxrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxtQkFBbUI7SUFDbkIseUNBQXlDO0VBQzNDOztFQUVBOztJQUVFLFlBQVk7SUFDWixVQUFVO0VBQ1o7QUFDRjs7QUM5QkE7RUFDRSxtQ0FBbUM7QUFDckM7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FDTkE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixZQUFZO0VBQ1osVUFBVTtFQUNWLG9DQUFvQztFQUNwQyx5QkFBeUI7RUFDekIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsY0FBYztFQUNkLDZDQUE2QztBQUMvQzs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsY0FBYztFQUNkLDZCQUE2QjtFQUM3QixXQUFXO0VBQ1gsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGtDQUFrQztFQUNsQyxrQ0FBa0M7RUFDbEMseUJBQXlCO0FBQzNCOztBQUVBO0VDekRFLGtCQUFrQjtFQUNsQiwwQkFBMEI7RUFDMUIsV0FBVztFQUNYLGlDQUFpQztFQUNqQyw2QkFBNkI7RUFDN0IsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIseUJBQWE7RUFDYix1QkFBdUI7RUFDdkIsbUJBQW1CO0FEaURyQjs7QUFFQTtFQy9DRSw0REFBNEQ7RUFDNUQseUJBQWE7QURnRGY7O0FBRUE7RUFDRTtJQUNFLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSw4QkFBOEI7SUFDOUIsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7OztJQUdFLGdCQUFnQjtJQUNoQiw4QkFBOEI7SUFDOUIsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UscUJBQXFCO0VBQ3ZCOztFQUVBOzs7Ozs7Ozs7SUFTRSxnQ0FBZ0M7RUFDbEM7O0VBRUE7O0lBRUUsZ0NBQWdDO0VBQ2xDOztFQUVBO0lBQ0UsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxlQUFlO0VBQ2pCOztFQUVBO0lBQ0UsU0FBUztJQUNULDhCQUE4QjtJQUM5QixrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UsWUFBWTtJQUNaLDhCQUE4QjtFQUNoQzs7RUFFQTtJQUNFLFdBQVc7SUFDWCwrQkFBK0I7RUFDakM7O0VBRUE7SUFDRSxnQkFBZ0I7RUFDbEI7QUFDRjs7QUFFQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLFdBQVc7O0VBRVg7SUFDRSxhQUFhO0lBQ2IsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtJQUNuQix5Q0FBeUM7SUFDekMsbUNBQW1DO0lBQ25DLFVBQVU7SUFDVixlQUFlO0lBQ2YsV0FBVztFQUNiOztFQUVBO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWiwrQkFBK0I7SUFDL0IsaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UseUNBQXlDO0VBQzNDOztFQUVBO0lBQ0UseUNBQXlDO0VBQzNDOztFQUVBOztJQUVFLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLG1DQUFtQztJQUNuQywwQ0FBMEM7SUFDMUMseUJBQXlCO0lBQ3pCLHFCQUFxQjtFQUN2QjtBQUNGOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdDQUFnQztFQUNoQyxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZiwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLFlBQVk7RUFDWiwyQkFBMkI7O0VBRTNCLGNBQWM7RUFDZCxlQUFlO0VBQ2YsK0NBQStDO0VBQy9DLHlCQUF5QjtFQUN6QixrQ0FBa0M7RUFDbEMsb0NBQW9DO0VBQ3BDLDBCQUEwQjtFQUMxQixXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLFdBQVc7RUFDWCxZQUFZO0VBQ1osd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0U7SUFDRTtNQUNFLGdCQUFnQjtJQUNsQjtFQUNGOztFQUVBO0lBQ0UsbUJBQW1CO0lBQ25CLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGNBQWM7SUFDZCx5Y0FBeWM7SUFDemMsd0JBQXdCO0lBQ3hCLDRCQUE0QjtJQUM1QixjQUFjO0lBQ2QsZUFBZTtJQUNmLFdBQVc7RUFDYjtBQUNGOztBRTFRQTtFQUNFLDJCQUEyQjtFQUMzQix3QkFBd0I7O0VBRXhCLGFBQWE7RUFDYixlQUFlO0VBQ2YsNEJBQTRCO0VBQzVCLE9BQU87RUFDUCw4QkFBOEI7RUFDOUIsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYiwyQkFBMkI7RUFDM0IseURBQXlEO0VBQ3pELDBDQUEwQztFQUMxQyx5Q0FBeUM7RUFDekMsVUFBVTs7RUFFVixXQUFXO0VBQ1gsaUNBQWlDO0VBQ2pDLGdCQUFnQjtFQUNoQixrQkFBa0I7O0VBRWxCO0lBQ0Usb0NBQW9DO0VBQ3RDOztFQUVBO0lBQ0UsOEJBQThCO0lBQzlCLDhCQUE4QjtJQUM5QiwwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSw4QkFBOEI7SUFDOUIsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0Qix5REFBeUQ7SUFDekQsWUFBWTtJQUNaLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLDBCQUEwQjtFQUM1Qjs7RUFFQTtJQUNFLGFBQWE7SUFDYixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsWUFBWTtJQUNaLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLG1FQUFtRTtJQUNuRSxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsU0FBUztJQUNULE9BQU87SUFDUCx1QkFBdUI7SUFDdkIsMENBQTBDO0lBQzFDLDhDQUE4QztJQUM5QyxXQUFXO0lBQ1gsU0FBUztJQUNULGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGVBQWU7RUFDakI7O0VBRUE7SUFDRSxzQkFBc0I7SUFDdEIsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsMkNBQTJDO0lBQzNDLG9DQUFvQztFQUN0Qzs7RUFFQTtJQUNFLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsc0JBQXNCO0lBQ3RCLHdDQUF3QztFQUMxQzs7RUFFQTtJQUNFLHFCQUFxQjtFQUN2Qjs7RUFFQTtJQUNFLDBDQUEwQztJQUMxQywwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsYUFBYTtJQUNiLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSx3QkFBd0I7SUFDeEIsZUFBZTtJQUNmLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGVBQWU7RUFDakI7RUFDQTtJQUNFLCtCQUErQjtFQUNqQztBQUNGOztBQUVBO0VBQ0Usd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7Ozs7RUFJRSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsZ0NBQWdDO0VBQ2hDLGtCQUFrQjtFQUNsQixtQ0FBbUM7RUFDbkMsc0JBQXNCO0VBQ3RCLG9DQUFvQztFQUNwQyxXQUFXO0VBQ1gsZ0NBQWdDO0VBQ2hDLG9CQUFvQjtFQUNwQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSx1Q0FBdUM7QUFDekM7O0FBRUE7RUFDRSw4Q0FBOEM7QUFDaEQ7O0FBRUE7OztFQUdFLHNEQUFzRDtBQUN4RDs7QUFFQTtFQUNFLFVBQVU7RUFDVixRQUFRO0FBQ1Y7O0FBRUE7RUFDRSxRQUFRO0VBQ1IsOENBQThDO0FBQ2hEOztBQUNBO0VBQ0UsUUFBUTtFQUNSLCtDQUErQztBQUNqRDs7QUFFQTtFQUNFLHlEQUF5RDtFQUN6RCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRTtJQUNFLGNBQWM7RUFDaEI7QUFDRjs7QUFFQTtFQUNFOzs7Ozs7Ozs7OztJQVdFLDZCQUE2QjtJQUM3QiwrQkFBK0I7RUFDakM7O0VBRUE7SUFDRSx3Q0FBd0M7O0lBRXhDO01BQ0UsYUFBYTtNQUNiLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLGtCQUFrQjtNQUNsQixZQUFZO01BQ1osaUJBQWlCO0lBQ25COztJQUVBO01BQ0UsYUFBYTtNQUNiLG1CQUFtQjtJQUNyQjs7SUFFQTtNQUNFLGFBQWE7SUFDZjs7SUFFQTtNQUNFLGtCQUFrQjtNQUNsQixrQkFBa0I7TUFDbEIsNkJBQTZCO0lBQy9COztJQUVBO01BQ0UsVUFBVTtJQUNaOztJQUVBO01BQ0UsYUFBYTtJQUNmOztJQUVBO01BQ0UsY0FBYztJQUNoQjs7SUFFQTtNQUNFLGFBQWE7TUFDYixrQkFBa0I7TUFDbEIsU0FBUztNQUNULGtDQUFrQztNQUNsQyw4QkFBOEI7TUFDOUIsa0JBQWtCO0lBQ3BCOztJQUVBO01BQ0Usb0NBQW9DO01BQ3BDLDhDQUE4QztJQUNoRDs7SUFFQTtNQUNFLGlDQUFpQztJQUNuQzs7SUFFQTtNQUNFLG1DQUFtQztNQUNuQyxVQUFVO01BQ1YsaUJBQWlCO0lBQ25COztJQUVBO01BQ0UsYUFBYTtNQUNiLHlCQUF5QjtJQUMzQjs7SUFFQTs7TUFFRSxjQUFjO0lBQ2hCO0VBQ0Y7O0VBRUE7SUFDRSxVQUFVO0VBQ1o7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7QUFDRjs7QUFFQTtFQUNFO0lBQ0Usa0JBQWtCO0VBQ3BCO0FBQ0Y7O0FDM1RBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjs7RUFFbEIscUNBQXFDO0VBQ3JDLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLE1BQU07QUFDUjs7QUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0FBQ1Y7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsYUFBYTtFQUNiLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIseUJBQXlCO0VBQ3pCLFVBQVU7RUFDViw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2Qsb0NBQW9DO0VBQ3BDLGlDQUFpQztBQUNuQzs7QUFFQTtFQUNFLGlDQUFpQztFQUNqQyw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsaUNBQWlDO0VBQ2pDLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLDZCQUE2QjtBQUMvQjs7QUFFQTs7O0VBR0UsZ0JBQWdCO0FBQ2xCOztBQUVBOzs7RUFHRSw4QkFBOEI7RUFDOUIsbUNBQW1DO0VBQ25DLGtDQUFrQztFQUNsQyxpQ0FBaUM7RUFDakMseUJBQXlCO0FBQzNCOztBQUVBOzs7O0VBSUUsa0JBQWtCO0VBQ2xCLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULFlBQVk7RUFDWiw2Q0FBNkM7QUFDL0M7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLG9DQUFvQztBQUN0Qzs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRTtJQUNFLGFBQWE7RUFDZjtBQUNGOztBQzFLQTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YseUNBQXlDO0VBQ3pDLGdDQUFnQztBQUNsQzs7QUNUQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLGdDQUFnQztBQUNsQzs7QUNMQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FDVkE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLGtCQUFrQjtBQUNwQjs7QUNKQTtFQUNFLDBDQUEwQztFQUMxQyxpQ0FBaUM7QUFDbkM7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLE9BQU87QUFDVDs7QUFFQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsOEJBQThCO0VBQzlCLGtDQUFrQztBQUNwQzs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFO0lBQ0UsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLG9CQUFvQjtFQUN0QjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxPQUFPO0VBQ1Q7O0VBRUE7SUFDRSxjQUFjO0lBQ2QsZUFBZTtFQUNqQjs7RUFFQTtJQUNFLG1CQUFtQjtJQUNuQixnQ0FBZ0M7RUFDbEM7QUFDRjs7QUMzRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsT0FBTztFQUNQLG9DQUFvQztFQUNwQyxvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsT0FBTztFQUNQLHNCQUFzQjtFQUN0QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRTtJQUNFLGFBQWE7RUFDZjs7RUFFQTtJQUNFLHNCQUFzQjtJQUN0QixlQUFlO0VBQ2pCOztFQUVBO0lBQ0UsYUFBYTtFQUNmO0FBQ0Y7O0FBRUE7RUFDRSwwQ0FBMEM7RUFDMUMsMENBQTBDO0VBQzFDLDBCQUEwQjs7RUFFMUI7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLFFBQVE7SUFDUix3Q0FBd0M7RUFDMUM7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxPQUFPO0VBQ1Q7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0Usc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsOEJBQThCO0lBQzlCLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFO01BQ0UsbUJBQW1CO0lBQ3JCO0VBQ0Y7O0VBRUE7SUFDRTtNQUNFLDZDQUE2QztJQUMvQzs7SUFFQTtNQUNFLG1CQUFtQjtJQUNyQjtFQUNGO0FBQ0Y7O0FDeklBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYix5Q0FBeUM7RUFDekMsNkNBQTZDO0VBQzdDLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLDhCQUE4QjtFQUM5QixrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLDZCQUE2QjtBQUMvQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2Ysd0NBQXdDO0FBQzFDOztBQUVBO0VBQ0UsNENBQTRDO0VBQzVDLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLHlDQUF5QztFQUN6QyxtQ0FBbUM7RUFDbkMseUNBQXlDO0VBQ3pDLGNBQWM7RUFDZCxtQkFBbUI7QUFDckI7O0FBRUE7O0VBRUUsYUFBYTtFQUNiLDZDQUE2QztBQUMvQzs7QUFFQTtFQUNFLFVBQVU7QUFDWjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLGFBQWE7RUFDYixjQUFjO0VBQ2QsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLHNDQUFzQztJQUN0QyxtQkFBbUI7SUFDbkIseUNBQXlDO0VBQzNDO0FBQ0Y7O0FDcEZBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYixPQUFPO0VBQ1Asc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLDhCQUE4QjtFQUM5QixrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSwwQ0FBMEM7RUFDMUMsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsT0FBTztBQUNUOztBQUVBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRTtJQUNFLG1CQUFtQjtJQUNuQixrQkFBa0I7RUFDcEI7QUFDRjs7QUM1Q0E7RUFDRSxvQkFBb0I7O0VBRXBCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtDQUFrQztBQUNwQzs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsNkJBQTZCO0VBQzdCLFVBQVU7RUFDViwwQkFBMEI7RUFDMUIsWUFBWTtBQUNkOztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQ3hCQTtFQUNFLDJCQUEyQjtFQUMzQiw4Q0FBOEM7O0VBRTlDO0lBQ0UsaUNBQWlDO0VBQ25DOztFQUVBO0lBQ0UsOEJBQThCO0VBQ2hDOztFQUVBO0lBQ0UsbUVBQW1FO0VBQ3JFOztFQUVBO0lBQ0U7O3VEQUVtRDtJQUNuRCxhQUFhO0lBQ2IsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLDhCQUE4QjtJQUM5QixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLDBCQUEwQjtJQUMxQixnQkFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsV0FBVztFQUNiOztFQUVBO0lBQ0UsNERBQTREO0lBQzVELG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsWUFBWTtFQUNkOztFQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsOENBQThDO0VBQ2hEO0FBQ0Y7O0FDNURBO0VBQ0U7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLDBDQUEwQztFQUM1Qzs7RUFFQTtJQUNFLFlBQVk7RUFDZDs7RUFFQTtJQUNFLGlCQUFpQjtFQUNuQjs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0lBQ3RCLCtEQUErRDtFQUNqRTs7RUFFQTs7SUFFRSxnQkFBZ0I7SUFDaEIsOEJBQThCO0lBQzlCLGtDQUFrQztFQUNwQztBQUNGOztBQUVBO0VBQ0U7SUFDRTtNQUNFLG1CQUFtQjtJQUNyQjs7SUFFQTtNQUNFLE9BQU87SUFDVDs7SUFFQTtNQUNFLDJCQUEyQjtJQUM3Qjs7SUFFQTs7TUFFRSxnQkFBZ0I7SUFDbEI7O0lBRUE7TUFDRSwyQkFBMkI7SUFDN0I7RUFDRjtBQUNGOztBQ3JEQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLDJEQUEyRDtJQUMzRCxrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSwwQkFBMEI7RUFDNUI7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtJQUN0QiwwQ0FBMEM7SUFDMUMsMEJBQTBCO0lBQzFCLFlBQVk7RUFDZDs7RUFFQTtJQUNFLDhCQUE4QjtJQUM5QixrQ0FBa0M7SUFDbEMsa0JBQWtCO0VBQ3BCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFO01BQ0UscUNBQXFDO0lBQ3ZDO0VBQ0Y7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSw2Q0FBNkM7SUFDL0M7RUFDRjtBQUNGOztBQ3pDQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsZ0RBQWdEO0lBQ2hELDBDQUEwQztJQUMxQywwQkFBMEI7RUFDNUI7O0VBRUE7O0lBRUUsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsV0FBVztFQUNiOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFFQTtJQUNFLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLHVCQUF1QjtJQUN2QixtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxtQkFBbUI7TUFDbkIsdUJBQXVCO01BQ3ZCLDZDQUE2QztJQUMvQzs7SUFFQTs7TUFFRSxnQkFBZ0I7SUFDbEI7RUFDRjtBQUNGOztBQ3ZEQTtFQUNFO0lBQ0UsYUFBYTtFQUNmOztFQUVBO0lBQ0UsYUFBYTtFQUNmOztFQUVBO0lBQ0UsYUFBYTtFQUNmOztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFFQTtJQUNFLCtCQUErQjtJQUMvQix5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxrQkFBa0I7SUFDcEI7O0lBRUE7O01BRUUsUUFBUTtJQUNWOztJQUVBOztNQUVFLG1CQUFtQjtJQUNyQjtFQUNGO0FBQ0Y7O0FDOUNBO0VBQ0U7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLGlEQUFpRDtJQUNqRCwwQ0FBMEM7RUFDNUM7O0VBRUE7SUFDRSxtQkFBbUI7SUFDbkIsV0FBVztJQUNYLFlBQVk7RUFDZDs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtFQUM1Qjs7RUFFQTs7SUFFRSxnQkFBZ0I7SUFDaEIsOEJBQThCO0lBQzlCLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLGFBQWE7RUFDZjtBQUNGOztBQUVBO0VBQ0U7SUFDRTtNQUNFLG1CQUFtQjtJQUNyQjs7SUFFQTtNQUNFLFdBQVc7TUFDWCxtQkFBbUI7SUFDckI7O0lBRUE7TUFDRSw2Q0FBNkM7SUFDL0M7O0lBRUE7O01BRUUsZ0JBQWdCO0lBQ2xCO0VBQ0Y7QUFDRjs7QUNyREE7RUFDRTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0UsT0FBTztFQUNUOztFQUVBO0lBQ0UsT0FBTztFQUNUO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFO01BQ0UsbUJBQW1CO0lBQ3JCO0VBQ0Y7QUFDRjs7QUN0QkE7RUFDRSxzQkFBc0I7O0VBRXRCO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLDhEQUE4RDtJQUM5RCwwQ0FBMEM7RUFDNUM7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsWUFBWTtFQUNkOztFQUVBO0lBQ0UsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsMEJBQTBCO0VBQzVCOztFQUVBOztJQUVFLGdCQUFnQjtJQUNoQiw4QkFBOEI7SUFDOUIsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixvQkFBb0I7SUFDcEIsc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsYUFBYTtFQUNmOztFQUVBO0lBQ0UsV0FBVztFQUNiO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLDZEQUE2RDtJQUM3RCxpQkFBaUI7RUFDbkI7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxtQkFBbUI7SUFDckI7O0lBRUE7TUFDRSw2Q0FBNkM7SUFDL0M7O0lBRUE7O01BRUUsZ0JBQWdCO0lBQ2xCO0VBQ0Y7O0VBRUE7SUFDRTtNQUNFLGFBQWE7TUFDYiwyREFBMkQ7SUFDN0Q7O0lBRUE7TUFDRSxxQ0FBcUM7SUFDdkM7O0lBRUE7TUFDRSxzQkFBc0I7SUFDeEI7O0lBRUE7TUFDRSxlQUFlO0lBQ2pCOztJQUVBO01BQ0Usb0JBQW9CO0lBQ3RCO0VBQ0Y7O0VBRUE7SUFDRTtNQUNFLGVBQWU7SUFDakI7O0lBRUE7TUFDRSx1QkFBdUI7SUFDekI7RUFDRjtBQUNGOztBQzlHQTtFQUNFLHVDQUF1Qzs7RUFFdkM7SUFDRSxhQUFhO0lBQ2IsMkRBQTJEO0lBQzNELHlDQUF5QztFQUMzQzs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0Qiw0Q0FBNEM7SUFDNUMsMENBQTBDO0lBQzFDLDJCQUEyQjtJQUMzQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsdUJBQXVCO0lBQ3ZCLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxlQUFlO0lBQ2YsaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UsbUJBQW1CO0VBQ3JCO0FBQ0Y7O0FDbkNBO0VBQ0U7SUFDRSxhQUFhO0lBQ2IsMkRBQTJEO0lBQzNELGtCQUFrQjtJQUNsQix5Q0FBeUM7RUFDM0M7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLDhCQUE4QjtJQUM5QiwwQ0FBMEM7RUFDNUM7O0VBRUE7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUNFLFdBQVc7RUFDYjs7RUFFQTtJQUNFLG1CQUFtQjtJQUNuQixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSx1Q0FBdUM7SUFDdkMsNENBQTRDO0lBQzVDLGtCQUFrQjtFQUNwQjtBQUNGOztBQUVBO0VBQ0U7SUFDRTtNQUNFLDBCQUEwQjtJQUM1QjtFQUNGO0FBQ0Y7O0FDOUNBO0VBQ0U7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLG1CQUFtQjtJQUNuQix1QkFBdUI7RUFDekI7O0VBRUE7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsK0JBQStCO0lBQy9CLHlCQUF5QjtFQUMzQjtBQUNGOztBQUVBO0VBQ0U7SUFDRTtNQUNFLGtCQUFrQjtJQUNwQjs7SUFFQTs7TUFFRSxRQUFRO0lBQ1Y7O0lBRUE7O01BRUUsbUJBQW1CO0lBQ3JCO0VBQ0Y7QUFDRjs7QUM5Q0E7RUFDRTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0Usa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0UsWUFBWTtFQUNkOztFQUVBO0lBQ0UsaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QiwrREFBK0Q7RUFDakU7O0VBRUE7SUFDRSxnQ0FBZ0M7RUFDbEM7O0VBRUE7O0lBRUUsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxnQ0FBZ0M7SUFDaEMsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtFQUNoQzs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLDJCQUEyQjtFQUM3Qjs7RUFFQTtJQUNFLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLFNBQVM7SUFDVCx5QkFBeUI7SUFDekIsVUFBVTtFQUNaOztFQUVBO0lBQ0UsWUFBWTtJQUNaLDRDQUE0QztFQUM5Qzs7RUFFQTtJQUNFLGFBQWE7SUFDYix1QkFBdUI7RUFDekI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsT0FBTztFQUNUOztFQUVBO0lBQ0UsYUFBYTtJQUNiLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLGNBQWM7SUFDZCxZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLFdBQVc7RUFDYjs7RUFFQTtJQUNFLGNBQWM7RUFDaEI7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxtQkFBbUI7SUFDckI7O0lBRUE7TUFDRSwyQkFBMkI7SUFDN0I7O0lBRUE7TUFDRSxpRUFBaUU7SUFDbkU7O0lBRUE7TUFDRSxPQUFPO0lBQ1Q7O0lBRUE7O01BRUUsZ0JBQWdCO0lBQ2xCOztJQUVBO01BQ0UsMkJBQTJCO0lBQzdCOztJQUVBO01BQ0UsV0FBVztNQUNYLE9BQU87SUFDVDtFQUNGO0FBQ0Y7O0FDeklBO0VBQ0U7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0Usa0JBQWtCO0lBQ2xCLGdEQUFnRDtJQUNoRCxvQ0FBb0M7RUFDdEM7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsb0NBQW9DO0lBQ3BDLDZDQUE2QztJQUM3Qyx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSx1Q0FBdUM7SUFDdkMsa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0UsY0FBYztJQUNkLFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsWUFBWTtFQUNkOztFQUVBO0lBQ0UsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxhQUFhO0lBQ2IsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFO01BQ0UsYUFBYTtNQUNiLHFDQUFxQzs7TUFFckMsV0FBVztNQUNYLGdCQUFnQjtJQUNsQjs7SUFFQTtNQUNFLDRDQUE0QztJQUM5QztFQUNGO0FBQ0Y7O0FDeEVBO0VBQ0UsMkJBQTJCO0VBQzNCLGdEQUFnRDtFQUNoRCwyQkFBMkI7O0VBRTNCO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0Qix1QkFBdUI7RUFDekI7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLGdCQUFnQjtJQUNoQiw4QkFBOEI7SUFDOUIsa0NBQWtDO0VBQ3BDOztFQUVBO0lBQ0UsbUNBQW1DO0lBQ25DLHlCQUF5QjtJQUN6QixXQUFXO0VBQ2I7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7O0lBRUUsVUFBVTtFQUNaOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsVUFBVTtFQUNaOztFQUVBO0lBQ0UsZUFBZTtJQUNmLDBCQUEwQjtFQUM1Qjs7RUFFQTtJQUNFLHFCQUFxQjtFQUN2Qjs7RUFFQTtJQUNFLHFCQUFxQjtJQUNyQixrQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixvQ0FBb0M7SUFDcEMsMkJBQTJCO0lBQzNCLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLDRCQUE0QjtFQUM5Qjs7RUFFQTs7SUFFRSxnQ0FBZ0M7RUFDbEM7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHVCQUF1QjtFQUN6Qjs7RUFFQTtJQUNFLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLHlCQUF5QjtFQUMzQjs7RUFFQTtJQUNFLHlEQUF5RDtJQUN6RCxTQUFTO0lBQ1QsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsWUFBWTtFQUNkOztFQUVBO0lBQ0UsZUFBZTtFQUNqQjtBQUNGOztBQUVBO0VBQ0U7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxXQUFXO0VBQ2I7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRTtNQUNFLGFBQWE7TUFDYixhQUFhO01BQ2IsY0FBYztJQUNoQjtFQUNGOztFQUVBOztJQUVFO01BQ0UsY0FBYztNQUNkLHlDQUF5QztNQUN6QyxtQ0FBbUM7TUFDbkMsZ0JBQWdCO01BQ2hCLGVBQWU7TUFDZixnQkFBZ0I7SUFDbEI7RUFDRjs7RUFFQTtJQUNFLGFBQWE7SUFDYix1QkFBdUI7O0lBRXZCO01BQ0UsYUFBYTtNQUNiLDREQUE0RDtNQUM1RCxXQUFXO01BQ1gsWUFBWTtJQUNkO0VBQ0Y7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtJQUN0QixnQ0FBZ0M7RUFDbEM7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGFBQWE7SUFDYix5QkFBeUI7RUFDM0I7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxlQUFlO0lBQ2pCOztJQUVBOztNQUVFLDREQUE0RDtNQUM1RCxnQkFBZ0I7SUFDbEI7O0lBRUE7O01BRUUsZ0JBQWdCO0lBQ2xCOztJQUVBO01BQ0UsZUFBZTtJQUNqQjs7SUFFQTtNQUNFLFVBQVU7SUFDWjs7SUFFQTtNQUNFLGFBQWE7SUFDZjtFQUNGO0FBQ0Y7O0FDOU9BO0VBQ0U7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLDBDQUEwQztFQUM1Qzs7RUFFQTtJQUNFLE9BQU87RUFDVDs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0lBQ3RCLCtEQUErRDtFQUNqRTs7RUFFQTs7SUFFRSxnQkFBZ0I7SUFDaEIsOEJBQThCO0lBQzlCLGtDQUFrQztFQUNwQzs7RUFFQTtJQUNFLGFBQWE7SUFDYixtQkFBbUI7RUFDckI7O0VBRUE7SUFDRSxjQUFjO0lBQ2QsWUFBWTtJQUNaLG9CQUFvQjtJQUNwQixXQUFXO0VBQ2I7QUFDRjs7QUFFQTtFQUNFO0lBQ0U7TUFDRSxtQkFBbUI7SUFDckI7O0lBRUE7TUFDRSxPQUFPO0lBQ1Q7O0lBRUE7TUFDRSwyQkFBMkI7SUFDN0I7O0lBRUE7O01BRUUsZ0JBQWdCO0lBQ2xCOztJQUVBO01BQ0UsMkJBQTJCO0lBQzdCO0VBQ0Y7QUFDRjs7QUM3REE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHNCQUFzQjtFQUN0QiwwQ0FBMEM7RUFDMUMsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLDhCQUE4QjtFQUM5QixrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRTtJQUNFLDZDQUE2QztFQUMvQztBQUNGOztBQ2xCQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxnQkFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxlQUFlO0VBQ2pCO0FBQ0Y7O0FDZEE7RUFDRTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsY0FBYztJQUNkLGdCQUFnQjtFQUNsQjtBQUNGOztBQ1hBO0VBQ0U7SUFDRSxnQkFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsc0JBQXNCO0VBQ3hCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixzQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHNCQUFzQjtFQUN4Qjs7RUFFQTtJQUNFLDhCQUE4QjtJQUM5QixrQ0FBa0M7RUFDcEM7O0VBRUE7SUFDRSwwQ0FBMEM7SUFDMUMsdUJBQXVCO0VBQ3pCO0FBQ0YiLCJmaWxlIjoic2l0ZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbW9kZXJuLW5vcm1hbGl6ZSB2My4wLjEgfCBNSVQgTGljZW5zZSB8IGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZSAqL1xuXG4vKlxuRG9jdW1lbnRcbj09PT09PT09XG4qL1xuXG4vKipcblVzZSBhIGJldHRlciBib3ggbW9kZWwgKG9waW5pb25hdGVkKS5cbiovXG5cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcblx0LyogSW1wcm92ZSBjb25zaXN0ZW5jeSBvZiBkZWZhdWx0IGZvbnRzIGluIGFsbCBicm93c2Vycy4gKGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZS9pc3N1ZXMvMykgKi9cblx0Zm9udC1mYW1pbHk6XG5cdFx0c3lzdGVtLXVpLFxuXHRcdCdTZWdvZSBVSScsXG5cdFx0Um9ib3RvLFxuXHRcdEhlbHZldGljYSxcblx0XHRBcmlhbCxcblx0XHRzYW5zLXNlcmlmLFxuXHRcdCdBcHBsZSBDb2xvciBFbW9qaScsXG5cdFx0J1NlZ29lIFVJIEVtb2ppJztcblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy4gKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy4gKi9cblx0dGFiLXNpemU6IDQ7IC8qIDMuIFVzZSBhIG1vcmUgcmVhZGFibGUgdGFiIHNpemUgKG9waW5pb25hdGVkKS4gKi9cbn1cblxuLypcblNlY3Rpb25zXG49PT09PT09PVxuKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDsgLyogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLiAqL1xufVxuXG4vKlxuVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbj09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4vKipcbkFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbjEuIEltcHJvdmUgY29uc2lzdGVuY3kgb2YgZGVmYXVsdCBmb250cyBpbiBhbGwgYnJvd3NlcnMuIChodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL21vZGVybi1ub3JtYWxpemUvaXNzdWVzLzMpXG4yLiBDb3JyZWN0IHRoZSBvZGQgJ2VtJyBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5jb2RlLFxua2JkLFxuc2FtcCxcbnByZSB7XG5cdGZvbnQtZmFtaWx5OlxuXHRcdHVpLW1vbm9zcGFjZSxcblx0XHRTRk1vbm8tUmVndWxhcixcblx0XHRDb25zb2xhcyxcblx0XHQnTGliZXJhdGlvbiBNb25vJyxcblx0XHRNZW5sbyxcblx0XHRtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG5BZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuUHJldmVudCAnc3ViJyBhbmQgJ3N1cCcgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiovXG5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG5cdGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcblx0dG9wOiAtMC41ZW07XG59XG5cbi8qXG5UYWJ1bGFyIGRhdGFcbj09PT09PT09PT09PVxuKi9cblxuLyoqXG5Db3JyZWN0IHRhYmxlIGJvcmRlciBjb2xvciBpbmhlcml0YW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS4gKGh0dHBzOi8vaXNzdWVzLmNocm9taXVtLm9yZy9pc3N1ZXMvNDA2MTU1MDMsIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUwMTYpXG4qL1xuXG50YWJsZSB7XG5cdGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG4vKlxuRm9ybXNcbj09PT09XG4qL1xuXG4vKipcbjEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbkNvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4qL1xuXG5idXR0b24sXG5bdHlwZT0nYnV0dG9uJ10sXG5bdHlwZT0ncmVzZXQnXSxcblt0eXBlPSdzdWJtaXQnXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcblJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXQgJ2ZpZWxkc2V0JyBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5sZWdlbmQge1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbkFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lIGFuZCBGaXJlZm94LlxuKi9cblxucHJvZ3Jlc3Mge1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbjEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4qL1xuXG5bdHlwZT0nc2VhcmNoJ10ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcblJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4xLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byAnaW5oZXJpdCcgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLypcbkludGVyYWN0aXZlXG49PT09PT09PT09PVxuKi9cblxuLypcbkFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIENocm9tZSBhbmQgU2FmYXJpLlxuKi9cblxuc3VtbWFyeSB7XG5cdGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cbiIsIkBpbXBvcnQgXCJtb2Rlcm4tbm9ybWFsaXplXCI7XG5cbi8qIGh0dHBzOi8vdW5wa2cuY29tL3RhaWx3aW5kY3NzQDMuNC4xNy9zcmMvY3NzL3ByZWZsaWdodC5jc3MgKi9cblxuOnJvb3Qge1xuICBpbnRlcnBvbGF0ZS1zaXplOiBhbGxvdy1rZXl3b3Jkcztcbn1cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCB7XG4gIG1hcmdpbjogMDtcbn1cblxub2wsXG51bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5hZGRyZXNzLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG5cbnN2ZyB7XG4gIGZpbGwtcnVsZTogZXZlbm9kZDtcbn1cbiIsIkBpbXBvcnQgXCIuL3Jlc2V0LnBjc3NcIjtcblxuLyogVmFyaWFibGVzICovXG5cbjpyb290IHtcbiAgLS1jb2xvci1yZWQ6ICNlMjA2MTM7XG4gIC0tY29sb3ItYmxhY2s6ICMwMDAwMDA7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmZmZmY7XG4gIC0tY29sb3IteWVsbG93OiAjZmZmZjFjO1xuXG4gIC0tY29sb3ItbW91c2UtZ3JleTogIzY2NjY2NjtcbiAgLS1jb2xvci1mb2ctZ3JleTogI2RkZGRkZDtcblxuICAtLWNvbG9yLWZvY3VzOiAjMDg3NWUyO1xuICAtLWNvbG9yLWxhYmVsOiAjNGQ0ZDRkO1xuXG4gIC0tY29sb3ItZXJyb3I6ICNiYjBkM2I7XG4gIC0tY29sb3ItZXJyb3ItbGlnaHQ6ICNmY2YyZjU7XG5cbiAgLS1jb2xvci1zdWNjZXNzOiAjMTY3NDQxO1xuICAtLWNvbG9yLXN1Y2Nlc3MtbGlnaHQ6ICNlN2YxZWI7XG5cbiAgLS1jb2xvci1pbmZvOiAjMWI0YmFmO1xuICAtLWNvbG9yLWluZm8tbGlnaHQ6ICNlY2YwZjk7XG5cbiAgLS1jb2xvci1icmlnaHQtZ3JleTogI2Y2ZjZmNjtcblxuICAtLWNvbG9yLWNvbGQtZ3JleS1wcmltYXJ5OiAjNzE4NTk3O1xuICAtLWNvbG9yLWNvbGQtZ3JleS1wcmltYXJ5LWxpZ2h0OiAjZDRkYWUwO1xuXG4gIC0tY29sb3ItY29sZC1ncmV5LXNlY29uZGFyeTogI2VhZWRmMDtcbiAgLS1jb2xvci1jb2xkLWdyZXktc2Vjb25kYXJ5LWxpZ2h0OiAjZjZmNmY2O1xuXG4gIC0taWNvbi1jaGVja2VkOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuXG4gIC0tc2hhZG93LWRlZmF1bHQ6IDAgNHB4IDhweCByZ2IoMCAwIDAgLyAxMCUpO1xuXG4gIC0tc3BhY2luZy14eHM6IDAuMjVyZW07XG4gIC0tc3BhY2luZy14czogMC41cmVtO1xuICAtLXNwYWNpbmctc206IDAuNXJlbTtcbiAgLS1zcGFjaW5nLW1kOiAwLjc1cmVtO1xuICAtLXNwYWNpbmctbGc6IDFyZW07XG4gIC0tc3BhY2luZy14bDogMS4yNXJlbTtcbiAgLS1zcGFjaW5nLTJ4bDogMS41cmVtO1xuICAtLXNwYWNpbmctM3hsOiAycmVtO1xuICAtLXNwYWNpbmctNHhsOiAyLjVyZW07XG4gIC0tc3BhY2luZy01eGw6IDMuNXJlbTtcblxuICAtLWZvbnQtc2l6ZS1oMTogMi41cmVtO1xuICAtLWZvbnQtc2l6ZS1oMjogMS44NzVyZW07XG4gIC0tZm9udC1zaXplLWgzOiAxLjQzNzVyZW07XG4gIC0tZm9udC1zaXplLWg0OiAxcmVtO1xuICAtLWZvbnQtc2l6ZS1oNTogMXJlbTtcbiAgLS1mb250LXNpemUtaDY6IDAuODc1cmVtO1xuXG4gIC0tbGluZS1oZWlnaHQtaDE6IDMuMTI1cmVtO1xuICAtLWxpbmUtaGVpZ2h0LWgyOiAyLjM3NXJlbTtcbiAgLS1saW5lLWhlaWdodC1oMzogMS43NXJlbTtcbiAgLS1saW5lLWhlaWdodC1oNDogMS41cmVtO1xuICAtLWxpbmUtaGVpZ2h0LWg1OiAxLjVyZW07XG4gIC0tbGluZS1oZWlnaHQtaDY6IDEuMTI1cmVtO1xuXG4gIC0tZ3V0dGVyOiAxcmVtO1xuICAtLW1hcmdpbjogMXJlbTtcblxuICAtLWFkbWluLWJhci1oZWlnaHQ6IDA7XG4gIC0tc2l0ZS1oZWFkZXItaGVpZ2h0OiA0cmVtO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC0tc3BhY2luZy14eHM6IDAuMjVyZW07XG4gICAgLS1zcGFjaW5nLXhzOiAwLjVyZW07XG4gICAgLS1zcGFjaW5nLXNtOiAwLjc1cmVtO1xuICAgIC0tc3BhY2luZy1tZDogMXJlbTtcbiAgICAtLXNwYWNpbmctbGc6IDEuMjVyZW07XG4gICAgLS1zcGFjaW5nLXhsOiAxLjVyZW07XG4gICAgLS1zcGFjaW5nLTJ4bDogMnJlbTtcbiAgICAtLXNwYWNpbmctM3hsOiAyLjVyZW07XG4gICAgLS1zcGFjaW5nLTR4bDogMy41cmVtO1xuICAgIC0tc3BhY2luZy01eGw6IDRyZW07XG5cbiAgICAtLWZvbnQtc2l6ZS1oMTogMy4zNzVyZW07XG4gICAgLS1mb250LXNpemUtaDI6IDIuNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMS44NzVyZW07XG4gICAgLS1mb250LXNpemUtaDQ6IDEuNDM3NXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMC44NzVyZW07XG5cbiAgICAtLWxpbmUtaGVpZ2h0LWgxOiA0LjI1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDI6IDMuMTI1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDM6IDIuMzc1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDQ6IDEuNzVyZW07XG4gICAgLS1saW5lLWhlaWdodC1oNTogMS41cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDY6IDEuMTI1cmVtO1xuXG4gICAgLS1ndXR0ZXI6IDEuNXJlbTtcbiAgICAtLW1hcmdpbjogMS41cmVtO1xuICB9XG59XG5cbmJvZHkuYWRtaW4tYmFyIHtcbiAgLS1hZG1pbi1iYXItaGVpZ2h0OiAzMnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MnB4KSB7XG4gICAgLS1hZG1pbi1iYXItaGVpZ2h0OiA0NnB4O1xuICB9XG59XG5cbi8qIEZvbnRzICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy8xNWFjOGU3Zi1jMWU0LTQ5ZTItYTRjNS03MGM1MDEwYTQxMmIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvOTRmOGRiMTEtZGRhNi00OTE3LWJlZDktYzYzNDAzMTI1ZDI1LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy81Y2Y2YzUzNy1mOWIwLTQzZDctYTYxNi1iYWVmZTgzNjMxZmQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvMDhkNDU5ZmQtNjQ5NC00MTc5LWFkODYtNWUxNDVjNDJmM2QwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy9mNjNjOTU2Yi1mZDJlLTQ0ODctODIyZS1mNTQ5NzA2MDcxOTEud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvNjI0NmI3MjQtODRlMS00OTg3LWJmYjItYzRlZGVhNzE2ZDRhLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy80N2RmMzE1Yy0zYmQ1LTQwMTMtODcxMi1iOTQ1MTYzZmM3NDYud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvODNmNmNjNmEtZTUzYy00ZTU3LTg1ZDQtMWQ5YzI5MmY0MTc2LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy8wMTBhOGE0NS1iODM3LTQ0M2EtYTY0Mi00YTUxMzEzNDlmZmQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvNDQ1MmQzYTktZjcxNS00Mzc5LWJiOWItNzg0NWRlODQ3YzIzLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbi8qIEdsb2JhbCAqL1xuXG5odG1sIHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIHNjcm9sbC1wYWRkaW5nLXRvcDogdmFyKC0tc2l0ZS1oZWFkZXItaGVpZ2h0KTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG5odG1sOmhhcygjd3BhZG1pbmJhcikge1xuICBzY3JvbGwtcGFkZGluZy10b3A6IGNhbGModmFyKC0tc2l0ZS1oZWFkZXItaGVpZ2h0KSArIDMycHgpO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5saW5rIHN2ZyB7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5saW5rOmhhcyhzdmcpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xufVxuXG4uY2Fwcy13YXJuaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogRm9ybXMgKi9cblxuaW5wdXQ6aXMoXG4gICAgW3R5cGU9XCJ0ZXh0XCJdLFxuICAgIFt0eXBlPVwiZW1haWxcIl0sXG4gICAgW3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICBbdHlwZT1cIm51bWJlclwiXSxcbiAgICBbdHlwZT1cInRlbFwiXSxcbiAgICBbdHlwZT1cInVybFwiXSxcbiAgICBbdHlwZT1cInNlYXJjaFwiXVxuICApLFxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgcGFkZGluZzogMS41cmVtIDFyZW0gMC41cmVtO1xuICB3aWR0aDogMTAwJTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMpO1xuICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICB9XG59XG5cbmJ1dHRvbixcbmlucHV0OmlzKFt0eXBlPVwiYnV0dG9uXCJdLCBbdHlwZT1cInN1Ym1pdFwiXSksXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGNvbG9yO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKGluZmluaXR5ICogMXB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcblxuICAmLmJ1dHRvbi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9nLWdyZXkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2ctZ3JleSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxufVxuXG5pbnB1dDppcyhbdHlwZT1cImNoZWNrYm94XCJdLCBbdHlwZT1cInJhZGlvXCJdKSxcbmlucHV0OmlzKFt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl0pICsgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0OmlzKFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG5cbiAgJjpjaGVja2VkIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pY29uLWNoZWNrZWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgfVxufVxuXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEuNXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtIDQuNXJlbSAwLjc1cmVtIDFyZW07XG59XG4iLCIuZ3JlZW4tYXVkaW8tcGxheWVyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogYXV0bztcblxuICAuY29udHJvbHMge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLnBsYXktcGF1c2UtYnRuX19pY29uLFxuICAudm9sdW1lX19zcGVha2VyLFxuICAudm9sdW1lIC52b2x1bWVfX2J1dHRvbi5vcGVuIC52b2x1bWVfX3NwZWFrZXIge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXJlZCk7XG4gIH1cblxuICAuc2xpZGVyIC5nYXAtcHJvZ3Jlc3MsXG4gIC5zbGlkZXIgLmdhcC1wcm9ncmVzcyAucGluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICB9XG5cbiAgLnZvbHVtZSAudm9sdW1lX19jb250cm9scyB7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgfVxuXG4gIC52b2x1bWUgLnZvbHVtZV9fY29udHJvbHMudG9wLFxuICAudm9sdW1lIC52b2x1bWVfX2NvbnRyb2xzLmJvdHRvbSB7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIGxlZnQ6IC03cHg7XG4gIH1cbn1cbiIsIjpyb290IHtcbiAgLS1wbHlyLWNvbG9yLW1haW46IHZhcigtLWNvbG9yLXJlZCk7XG59XG5cbi5wbHlyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCJmaWd1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmZpZ3VyZSA+IGZpZ2NhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbmZpZ3VyZSA+IGZpZ2NhcHRpb24gPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteHhzKSB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLW1hcmdpbik7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDExNjhweDtcbn1cblxuLmZ1bGwtd2lkdGgge1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tbWFyZ2luKTtcbn1cblxuLnNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMnhsKTtcbn1cblxuLnNlY3Rpb25fX2hlYWRlciBoMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgzKTtcbn1cblxuLmxpbmstYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hY2NlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy14eHMpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG5sYWJlbDpoYXMoKyBpbnB1dFt0eXBlPVwidGV4dFwiXSkge1xuICBAbWl4aW4gaW5saW5lLWxhYmVsIHZhcigtLWNvbG9yLWxhYmVsKTtcbn1cblxubGFiZWw6aGFzKCsgaW5wdXQ6Zm9jdXMsICsgaW5wdXQ6dmFsaWRbcmVxdWlyZWRdKSB7XG4gIEBtaXhpbiBpbmxpbmUtbGFiZWwtLWFjdGl2ZSB2YXIoLS1jb2xvci1sYWJlbCk7XG59XG5cbi5jb250ZW50IHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDMpO1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gIH1cblxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwLFxuICBvbCxcbiAgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbWQpO1xuICB9XG5cbiAgb2wsXG4gIHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMnhsKTtcbiAgfVxuXG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMDBiZmZmO1xuICAgIHBhZGRpbmc6IDFlbSAxLjVlbTtcbiAgICBmb250LXNpemU6IDEuMDVlbTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICB9XG5cbiAgLmFsaWduY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgfVxuXG4gIC5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1tZCk7XG4gIH1cblxuICA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICB3aWR0aDogMTAwJTtcblxuICAucGFnZS1udW1iZXJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyhpbmZpbml0eSAqIDFweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgd2lkdGg6IDJyZW07XG4gIH1cblxuICAucGFnZS1udW1iZXJzID4gc3ZnIHtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgfVxuXG4gIC5wYWdlLW51bWJlcnMucHJldiA+IHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSg5MGRlZyk7XG4gIH1cblxuICAucGFnZS1udW1iZXJzLm5leHQgPiBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgtOTBkZWcpO1xuICB9XG5cbiAgLnBhZ2UtbnVtYmVycy5wcmV2ID4gc3ZnLFxuICAucGFnZS1udW1iZXJzLm5leHQgPiBzdmcge1xuICAgIHBhZGRpbmc6IDAuMTI1cmVtO1xuICB9XG5cbiAgLnBhZ2UtbnVtYmVyczppcyg6aG92ZXIsIC5jdXJyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2ctZ3JleSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5icmVhZGNydW1icyB1bCB7XG4gIC0tcm93LXNwYWNpbmc6IDA7XG4gIC0tY29sLXNwYWNpbmc6IHZhcigtLXNwYWNpbmcteHMpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogdmFyKC0tcm93LXNwYWNpbmcpIHZhcigtLWNvbC1zcGFjaW5nKTtcbn1cblxuLmJyZWFkY3J1bWJzIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1yb3ctc3BhY2luZykgdmFyKC0tY29sLXNwYWNpbmcpO1xufVxuXG4jYmFjay10by10b3Age1xuICAtLXNpemU6IDNyZW07XG4gIC0tb2Zmc2V0OiB2YXIoLS1zcGFjaW5nLWxnKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogY2FsYygodmFyKC0tc2l6ZSkgKyB2YXIoLS1vZmZzZXQpKSAqIC0xKTtcbiAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbn1cblxuI2JhY2stdG8tdG9wIHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZpbGw6IHZhcigtLWNvbG9yLXdoaXRlKTtcbn1cblxuI2JhY2stdG8tdG9wLnZpc2libGUge1xuICByaWdodDogdmFyKC0tb2Zmc2V0KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IHtcbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgfVxuXG4gIC5icmVhZGNydW1icyB1bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gIC5icmVhZGNydW1icyBsaSArIGxpOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgZmlsbD1cIm5vbmVcIiBoZWlnaHQ9XCI1MTJcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgd2lkdGg9XCI1MTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZD1cIm0xMy43MDcxIDE5LjcwNzFjLS4zOTA1LjM5MDUtMS4wMjM3LjM5MDUtMS40MTQyIDBzLS4zOTA1LTEuMDIzNyAwLTEuNDE0Mmw1LjI5MjgtNS4yOTI5aC0xMy41ODU3Yy0uNTUyMjkgMC0xLS40NDc3LTEtMXMuNDQ3NzEtMSAxLTFoMTMuNTg1N2wtNS4yOTI4LTUuMjkyOWMtLjM5MDUtLjM5MDUyLS4zOTA1LTEuMDIzNjkgMC0xLjQxNDIxczEuMDIzNy0uMzkwNTIgMS40MTQyLjAwMDAxbDYuOTk5OSA3Yy4zOTA2LjM5MDUuMzkwNiAxLjAyMzcgMCAxLjQxNDJ6XCIgZmlsbD1cInJnYigwLDAsMClcIiBzdHJva2U9XCJyZ2IoMCwwLDApXCIvPjwvc3ZnPicpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCJAZGVmaW5lLW1peGluIGlubGluZS1sYWJlbCAkY29sb3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB6LWluZGV4OiAxMDtcbiAgdHJhbnNpdGlvbjogYWxsIDEyNW1zIGVhc2UtaW4tb3V0O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5AZGVmaW5lLW1peGluIGlubGluZS1sYWJlbC0tYWN0aXZlICRjb2xvciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4ycmVtKTtcbiAgY29sb3I6ICRjb2xvcjtcbn1cbiIsIi5zaXRlLWhlYWRlciB7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgLS1idXJnZXItYmFyLWhlaWdodDogMnB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiB2YXIoLS1hZG1pbi1iYXItaGVpZ2h0KTtcbiAgbGVmdDogMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHRyYW5zaXRpb246IGhlaWdodCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbiAgYm94LXNoYWRvdzogMCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjc1KTtcbiAgcGFkZGluZzogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zaXRlLWhlYWRlci1oZWlnaHQpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogNHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDhweDtcbiAgfVxuXG4gIC5zdWItbWVudSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA0cHg7XG4gIH1cblxuICAmID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmN1c3RvbS1sb2dvLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC5jdXN0b20tbG9nby1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogbm9uZTtcbiAgfVxuXG4gIC5jdXN0b20tbG9nby10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAuY3VzdG9tLWxvZ28taW1hZ2Uge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgJjpoYXMoLnNpdGUtaGVhZGVyX19tZW51LXRvZ2dsZS1pY29uIGlucHV0OmNoZWNrZWQpIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gIG5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeGwpO1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZm9nLWdyZXkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLm1lbnUge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1mb2ctZ3JleSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLm1lbnUtaXRlbSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtKSB2YXIoLS1tYXJnaW4pO1xuICB9XG5cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gYSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG5cbiAgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IG5vbmU7XG4gIH1cblxuICAubWVudS1pdGVtIGEgPiBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEgPiBzdmcge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgICB3aWR0aDogMC42MjVyZW07XG4gICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgfVxuXG4gIC5zdWItbWVudSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5zdWItbWVudSAubWVudS1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbWQpO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20pIHZhcigtLW1hcmdpbik7XG59XG5cbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2l0ZS1oZWFkZXJfX21lbnUtdG9nZ2xlLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG59XG5cbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbjo6YmVmb3JlLFxuLnNpdGUtaGVhZGVyX19tZW51LXRvZ2dsZS1pY29uOjphZnRlcixcbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbiBpbnB1dCxcbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbiBpbnB1dDpjaGVja2VkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyhpbmZpbml0eSAqIDFweCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tYnVyZ2VyLWJhci1oZWlnaHQpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnNpdGUtaGVhZGVyX19tZW51LXRvZ2dsZS1pY29uOjpiZWZvcmUge1xuICB0b3A6IGNhbGModmFyKC0tYnVyZ2VyLWJhci1oZWlnaHQpIC8gMik7XG59XG5cbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbjo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoMTAwJSAtIHZhcigtLWJ1cmdlci1iYXItaGVpZ2h0KSAvIDIpO1xufVxuXG4uc2l0ZS1oZWFkZXJfX21lbnUtdG9nZ2xlLWljb24gaW5wdXQ6Y2hlY2tlZCxcbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbjpoYXMoaW5wdXQ6Y2hlY2tlZCk6OmJlZm9yZSxcbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbjpoYXMoaW5wdXQ6Y2hlY2tlZCk6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4uc2l0ZS1oZWFkZXJfX21lbnUtdG9nZ2xlLWljb24gaW5wdXQ6Y2hlY2tlZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xufVxuXG4uc2l0ZS1oZWFkZXJfX21lbnUtdG9nZ2xlLWljb246aGFzKGlucHV0OmNoZWNrZWQpOjpiZWZvcmUge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbjpoYXMoaW5wdXQ6Y2hlY2tlZCk6OmFmdGVyIHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4uc2l0ZS1oZWFkZXJfX21lbnU6aGFzKC5zaXRlLWhlYWRlcl9fbWVudS10b2dnbGUtaWNvbiBpbnB1dDpjaGVja2VkKSBuYXYge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUxMnB4KSB7XG4gIC5zaXRlLWhlYWRlciAuY3VzdG9tLWxvZ28tdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2l0ZS1oZWFkZXIgLm1lbnUtaXRlbSA+IGE6aG92ZXIsXG4gIC5zaXRlLWhlYWRlciAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSxcbiAgLnNpdGUtaGVhZGVyIC5tZW51LWl0ZW0uY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSxcbiAgYm9keS5zaW5nbGUtbmV3c1xuICAgIC5zaXRlLWhlYWRlclxuICAgIC5tZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGVfYXJjaGl2ZS5tZW51LWl0ZW0tb2JqZWN0LW5ld3NcbiAgICA+IGEsXG4gIGJvZHkuc2luZ2xlLWV2ZW50XG4gICAgLnNpdGUtaGVhZGVyXG4gICAgLm1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZV9hcmNoaXZlLm1lbnUtaXRlbS1vYmplY3QtZXZlbnRcbiAgICA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbi1saW5lOiB1bmRlcmxpbmU7XG4gIH1cblxuICAuc2l0ZS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20pIHZhcigtLW1hcmdpbik7XG5cbiAgICBuYXYge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIG5hdiA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubWVudSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSBhID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0gYSA+IHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IGNhbGModmFyKC0tc3BhY2luZy1tZCkgKiAtMSk7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLnN1Yi1tZW51IC5tZW51LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLW1kKSB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICB9XG5cbiAgICAuc3ViLW1lbnUgLm1lbnUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOmxhc3QtY2hpbGQgLnN1Yi1tZW51IHtcbiAgICAgIHJpZ2h0OiBjYWxjKHZhcigtLXNwYWNpbmctbWQpICogLTEpO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06bGFzdC1jaGlsZCAuc3ViLW1lbnUgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOmhvdmVyIC5zdWItbWVudSxcbiAgICAubWVudS1pdGVtOmZvY3VzLXdpdGhpbiAuc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLnNpdGUtaGVhZGVyX19sb2dvIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyX19tZW51LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICBib2R5LmFkbWluLWJhciAuc2l0ZS1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxufVxuIiwiLnNpdGUtaGVybyB7XG4gIC0tcGFnZS1zaXplOiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgbWFyZ2luLXRvcDogdmFyKC0tc2l0ZS1oZWFkZXItaGVpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xufVxuXG4uc2l0ZS1oZXJvX19zbGlkZXMge1xuICBnYXA6IDA7XG59XG5cbi5zaXRlLWhlcm9fX3NsaWRlIHtcbiAgbWluLWhlaWdodDogMjByZW07XG59XG5cbi5zaXRlLWhlcm9fX3NsaWRlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYS5zaXRlLWhlcm9fX3NsaWRlLWNvbnRlbnQ6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmEuc2l0ZS1oZXJvX19zbGlkZS1jb250ZW50OmhvdmVyIC5zaXRlLWhlcm9fX3RleHQtLXRpdGxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zaXRlLWhlcm9fX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbn1cblxuLnNpdGUtaGVyb19faW1hZ2UgLmltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNpdGUtaGVyb19faW1hZ2UgaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5zaXRlLWhlcm9fX2JvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tbWFyZ2luKTtcbn1cblxuLnNpdGUtaGVyb19fdGV4dC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5zaXRlLWhlcm9fX3RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy1zbSk7XG59XG5cbi5zaXRlLWhlcm9fX3RleHQtLWhlYWRsaW5lIHtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy14eHMpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG59XG5cbi5zaXRlLWhlcm9fX3RleHQtLWhlYWRsaW5lIC5icmVhZGNydW1icyB7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uc2l0ZS1oZXJvX190ZXh0LS10aXRsZSB7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpO1xufVxuXG4uc2l0ZS1oZXJvX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhsKTtcbn1cblxuLnNpdGUtaGVyb19fbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5zaXRlLWhlcm9fX21ldGEtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLnNpdGUtaGVyb19fbWV0YS1pdGVtIHN2ZyB7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xufVxuXG4uc2l0ZS1oZXJvX19tZXRhLWl0ZW0gdGltZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zaXRlLWhlcm9fX21ldGEtaXRlbS0tZmVlcyAuaGFzLWRpc2NvdW50IC5zaXRlLWhlcm9fX21ldGEtdmFsdWUtLWZlZXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG4uc2l0ZS1oZXJvX19tZXRhLWl0ZW0tLWZlZXNcbiAgLmhhcy1kaXNjb3VudFxuICAuc2l0ZS1oZXJvX19tZXRhLXZhbHVlLS1kaXNjb3VudGVkLWZlZXMge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uc2l0ZS1oZXJvX19tZXRhLWl0ZW0tLWZlZXNcbiAgLmhhcy1kaXNjb3VudFxuICAuc2l0ZS1oZXJvX19tZXRhLXZhbHVlLS1kaXNjb3VudC1jb2RlIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctc20pO1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItcmVkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctc20pO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG4uc2l0ZS1oZXJvX19tZXRhLWl0ZW0tLWZlZXNcbiAgLmhhcy1kaXNjb3VudFxuICAuc2l0ZS1oZXJvX19tZXRhLXZhbHVlLS1kaXNjb3VudC1jb2RlXG4gIGkge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG59XG5cbi5zaXRlLWhlcm8gLmNhcm91c2VsX19jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhsKSB2YXIoLS1zcGFjaW5nLTJ4bCk7XG59XG5cbi5zaXRlLWhlcm8gLmNhcm91c2VsX19pbmRpY2F0b3JzIGJ1dHRvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbn1cblxuLnNpdGUtaGVybyAuY2Fyb3VzZWxfX2luZGljYXRvcnMgYnV0dG9uLmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbi5zaXRlLWhlcm8gLmNhcm91c2VsX19wcmV2LFxuLnNpdGUtaGVybyAuY2Fyb3VzZWxfX25leHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtaGVyb19fc2xpZGUuaGFzLWltYWdlIHtcbiAgICBoZWlnaHQ6IDYwZHZoO1xuICB9XG59XG4iLCIucXVpY2stbGlua3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG59XG5cbi5xdWljay1saW5rcyB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKSB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmcteGwpO1xufVxuIiwiLnNpdGUtbWFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy00eGwpO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctNHhsKTtcbn1cbiIsIi5zZWN0aW9uX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xufVxuXG4uc2VjdGlvbl9fYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy00eGwpO1xufVxuIiwiLnNpZGViYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWd1dHRlcik7XG59XG4iLCIuc2l0ZS1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNHhsKTtcbn1cblxuLnNpdGUtZm9vdGVyX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTN4bCk7XG59XG5cbi5zaXRlLWZvb3Rlcl9fY29udGVudCA+ICoge1xuICBmbGV4OiAxO1xufVxuXG4uc2l0ZS1mb290ZXJfX2luZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xufVxuXG4uc2l0ZS1mb290ZXJfX2xvZ28ge1xuICBtYXgtd2lkdGg6IDEwcmVtO1xufVxuXG4uc2l0ZS1mb290ZXJfX25hbWUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uc2l0ZS1mb290ZXJfX2VtYWlsIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnNpdGUtZm9vdGVyIC5tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLW1kKTtcbn1cblxuLnNpdGUtZm9vdGVyIC5tZW51ID4gbGkgPiBhIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xufVxuXG4uc2l0ZS1mb290ZXJfX21lbnUgYSA+IHN2ZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuc2l0ZS1mb290ZXJfX2NvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAubWVudSA+IGxpID4gYSB7XG4gICAgZm9udC13ZWlnaHQ6IGluaXRpYWw7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2l0ZS1mb290ZXJfX21lbnUge1xuICAgIGZsZXg6IDI7XG4gIH1cblxuICAuc2l0ZS1mb290ZXJfX21lbnUgLm1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxuXG4gIC5zaXRlLWZvb3Rlcl9fbWVudSAubWVudSA+IGxpIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbWQpO1xuICB9XG59XG4iLCIuYXJjaGl2ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy00eGwpO1xufVxuXG4uYXJjaGl2ZV9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy00eGwpO1xufVxuXG4uYXJjaGl2ZV9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLWd1dHRlcik7XG59XG5cbi5hcmNoaXZlX19pbWFnZSB7XG4gIGZsZXg6IDE7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG59XG5cbi5hcmNoaXZlX19pbWFnZSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmFyY2hpdmVfX2ltYWdlIGZpZ3VyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5hcmNoaXZlX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhsKTtcbn1cblxuLmFyY2hpdmVfX2NvbnRlbnQgaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XG59XG5cbi5hcmNoaXZlX19tZXRhLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAgdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5hcmNoaXZlX19tZXRhLWl0ZW0gc3ZnIHtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG59XG5cbi5hcmNoaXZlX19wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5hcmNoaXZlX19pdGVtLS1uZXdzIHtcbiAgLmFyY2hpdmVfX2hlYWRsaW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmFyY2hpdmVfX21ldGEtaXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAuYXJjaGl2ZV9fbWV0YSBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmFyY2hpdmVfX2l0ZW0tLWV2ZW50IHtcbiAgYm9yZGVyLWxlZnQ6IDAuNXJlbSBzb2xpZCB2YXIoLS1jb2xvci1yZWQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteGwpO1xuXG4gIC5hcmNoaXZlX19pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5hcmNoaXZlX19tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3JkZXI6IDE7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKSB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgfVxuXG4gIC5hcmNoaXZlX19tZXRhLWl0ZW0gPiBzdHJvbmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuYXJjaGl2ZV9fbWV0YS1pdGVtID4gc3BhbiB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gIC5hcmNoaXZlX19tZXRhLWl0ZW0tLWNhdGVnb3JpZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hcmNoaXZlX19pdGVtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmFyY2hpdmVfX2NvbnRlbnQge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gIH1cblxuICAuYXJjaGl2ZV9fY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gIH1cblxuICAuYXJjaGl2ZV9faXRlbS0tbmV3cyB7XG4gICAgLmFyY2hpdmVfX21ldGEtaXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgfVxuXG4gIC5hcmNoaXZlX19pdGVtLS1ldmVudCB7XG4gICAgLmFyY2hpdmVfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZykgdmFyKC0tc3BhY2luZy0zeGwpO1xuICAgIH1cblxuICAgIC5hcmNoaXZlX19tZXRhIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICB9XG59XG4iLCIuZmlsdGVycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5maWx0ZXJzX19oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgdmFyKC0tc3BhY2luZy0yeGwpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG4uZmlsdGVyc19faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcbn1cblxuLmZpbHRlcnNfX2JvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbn1cblxuLmZpbHRlcnNfX2xhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuZGl2ICsgLmZpbHRlcnNfX2xhYmVsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5maWx0ZXJzX19pdGVtcyB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKSB2YXIoLS1zcGFjaW5nLW1kKTtcbn1cblxuLmZpbHRlcnNfX2l0ZW0ge1xuICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyhpbmZpbml0eSAqIDFweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZpbHRlcnNfX2l0ZW0sXG4uZmlsdGVyc19faXRlbSBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14eHMpIHZhcigtLXNwYWNpbmctc20pO1xufVxuXG4uZmlsdGVyc19faXRlbTpoYXMoYSkge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZmlsdGVyc19faXRlbSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZmlsdGVyc19faXRlbS5hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XG59XG5cbi5maWx0ZXJzX19pdGVtLWljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4uZmlsdGVyc19faXRlbS1pY29uIGZpbHRlciB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXJzX19ib2R5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWF4LWNvbnRlbnQgMWZyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKSB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIH1cbn1cbiIsIi5wb3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTR4bCk7XG59XG5cbi5wb3N0X19ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG59XG5cbi5wb3N0X19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG59XG5cbi5wb3N0X19leGNlcnB0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xufVxuXG4ucG9zdF9fZ2FsbGVyeSAuY2Fyb3VzZWxfX3NsaWRlIGZpZ3VyZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbn1cblxuLnBvc3RfX3NpZGViYXIge1xuICBmbGV4OiAxO1xufVxuXG4ucG9zdF9fYmxvY2tzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTR4bCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucG9zdF9fYm9keSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IHZhcigtLWd1dHRlcik7XG4gIH1cbn1cbiIsIi5zZWFyY2gtZm9ybV9faW5wdXQge1xuICAtLWJ1dHRvbi13aWR0aDogNHJlbTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zZWFyY2gtZm9ybV9faW5wdXQgPiBpbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJ1dHRvbi13aWR0aCk7XG59XG5cbi5zZWFyY2gtZm9ybV9faW5wdXQgPiBidXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiB2YXIoLS1idXR0b24td2lkdGgpO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zZWFyY2gtZm9ybV9faW5wdXQgPiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiIsIi5ibG9jay0tYWNjb3JkaW9uIHtcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAtLWl0ZW0tYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZm9nLWdyZXkpO1xuXG4gIC5ibG9ja19faXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0taXRlbS1ib3JkZXIpO1xuICB9XG5cbiAgLmJsb2NrX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1pdGVtLWJvcmRlcik7XG4gIH1cblxuICBkZXRhaWxzIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgZGV0YWlsczo6ZGV0YWlscy1jb250ZW50IHtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgY29udGVudC12aXNpYmlsaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGFsbG93LWRpc2NyZXRlLFxuICAgICAgYmxvY2stc2l6ZSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbiAgICBibG9jay1zaXplOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICBkZXRhaWxzW29wZW5dIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIH1cblxuICBkZXRhaWxzW29wZW5dOjpkZXRhaWxzLWNvbnRlbnQge1xuICAgIGJsb2NrLXNpemU6IGF1dG87XG4gIH1cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgc3VtbWFyeTo6bWFya2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICBzdW1tYXJ5ID4gc3ZnIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gIH1cblxuICBkZXRhaWxzW29wZW5dID4gc3VtbWFyeSA+IHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxuXG4gIC5ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLW1kKSB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgfVxufVxuIiwiLmJsb2NrLS1hdWRpbyB7XG4gIC5ibG9ja19fYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgfVxuXG4gIC5ibG9ja19faW1hZ2UgZmlndXJlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cblxuICAuYmxvY2tfX21haW4gPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteGwpIHZhcigtLXNwYWNpbmcteGwpIHZhcigtLXNwYWNpbmctNXhsKTtcbiAgfVxuXG4gIGgyLFxuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJsb2NrLS1hdWRpbyB7XG4gICAgLmJsb2NrX19ib2R5IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLmJsb2NrX19ib2R5ID4gZGl2IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuXG4gICAgLmJsb2NrX19tYWluID4gZGl2IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3hsKTtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYuYmxvY2stLWltYWdlLXJpZ2h0IC5ibG9ja19fYm9keSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stLWJ1dHRvbnMge1xuICAuYmxvY2tfX2JvZHkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMHJlbSwgMWZyKSk7XG4gICAgZ2FwOiB2YXIoLS1tYXJnaW4pO1xuICB9XG5cbiAgLmJsb2NrX19ib2R5Omhhcyg+IDpvbmx5LWNoaWxkKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cblxuICAuYmxvY2tfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuYmxvY2tfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmJsb2NrLS1idXR0b25zIHtcbiAgICAuYmxvY2tfX2JvZHk6aGFzKD4gOm9ubHktY2hpbGQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLWJ1dHRvbiB7XG4gICAgLmJsb2NrX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmctM3hsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay0tZG93bmxvYWRzIHtcbiAgLmJsb2NrX19tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgICBib3JkZXItdG9wOiAwLjVyZW0gc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteGwpO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICB9XG5cbiAgLmJsb2NrX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAuYmxvY2tfX2NvbnRlbnQgPiB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuYmxvY2tfX2NvbnRlbnQgLmxpbmsgPiBzdmcge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLmJsb2NrX19jb250ZW50IC5saW5rID4gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLWRvd25sb2FkcyB7XG4gICAgLmJsb2NrX19tYWluIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctNHhsKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmctM3hsKTtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLS1mZWF0dXJlZC1jb250ZW50IHtcbiAgdHIuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5zaG93LWFsbCB0ci5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmLnNob3ctYWxsIC5ibG9ja19fYWN0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC50YWJsZV9fYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIH1cblxuICAudGFibGUgLnRhYmxlX19jZWxsLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmFjY2VudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLWZlYXR1cmVkLWNvbnRlbnQge1xuICAgICYuc2hvdy1hbGwgdHIuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG5cbiAgICB0ZDpoYXMoLnRhYmxlX19jZWxsLS1zY29wZSksXG4gICAgdGQ6aGFzKC50YWJsZV9fY2VsbC0tZGF0ZSkge1xuICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgLnRhYmxlX19jZWxsLS1zY29wZSxcbiAgICAudGFibGVfX2NlbGwtLWRhdGUge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay0taW5mby1ib3gge1xuICAuYmxvY2tfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXItbGVmdDogMC41cmVtIHNvbGlkIHZhcigtLWNvbG9yLW1vdXNlLWdyZXkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgfVxuXG4gIC5ibG9ja19faW1hZ2UgZmlndXJlIHtcbiAgICBhc3BlY3QtcmF0aW86IDQgLyAzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5ibG9ja19fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14bCk7XG4gIH1cblxuICBoMixcbiAgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gIH1cblxuICAuYmxvY2tfX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9jay0taW5mby1ib3gge1xuICAgIC5ibG9ja19fbWFpbiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5ibG9ja19faW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDExLjI1cmVtO1xuICAgIH1cblxuICAgIC5ibG9ja19fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnKSB2YXIoLS1zcGFjaW5nLTN4bCk7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay0taW50cm8ge1xuICAuYmxvY2tfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLWd1dHRlcik7XG4gIH1cblxuICAuYmxvY2tfX21haW4ge1xuICAgIGZsZXg6IDI7XG4gIH1cblxuICAuYmxvY2tfX3NpZGViYXIge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9jay0taW50cm8ge1xuICAgIC5ibG9ja19fYm9keSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLS1saXN0IHtcbiAgLS1ib3JkZXItd2lkdGg6IDAuNXJlbTtcblxuICAuYmxvY2tfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLWd1dHRlcik7XG4gIH1cblxuICAuYmxvY2tfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXItbGVmdDogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGZpZ3VyZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmJsb2NrX19pbWFnZSBpbWcge1xuICAgIGFzcGVjdC1yYXRpbzogNCAvIDM7XG4gIH1cblxuICAuYmxvY2tfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteGwpO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICB9XG5cbiAgLmJsb2NrX19saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1zbSk7XG4gIH1cblxuICAuYmxvY2tfX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuYmxvY2tfX2xpbmsgYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJsb2NrLS1saXN0W2RhdGEtbGF5b3V0PVwiY29sdW1uXCJdIHtcbiAgLmJsb2NrX19pdGVtIHtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWNvbG9yLW1vdXNlLWdyZXkpO1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLWxpc3Qge1xuICAgIC5ibG9ja19faXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5ibG9ja19fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnKSB2YXIoLS1zcGFjaW5nLTN4bCk7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cblxuICAuYmxvY2stLWxpc3RbZGF0YS1sYXlvdXQ9XCJjb2x1bW5cIl0ge1xuICAgIC5ibG9ja19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNHJlbSwgMWZyKSk7XG4gICAgfVxuXG4gICAgLmJsb2NrX19saXN0Omhhcyg+IDpvbmx5LWNoaWxkKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgIC5ibG9ja19faXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5ibG9ja19faW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5ibG9ja19faW1hZ2UgZmlndXJlIHtcbiAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgIH1cbiAgfVxuXG4gIC5ibG9jay0tbGlzdFtkYXRhLWxheW91dD1cInJvd1wiXSB7XG4gICAgLmJsb2NrX19pbWFnZSBmaWd1cmUge1xuICAgICAgd2lkdGg6IDExLjI1cmVtO1xuICAgIH1cblxuICAgIC5ibG9ja19fbGlua3Mge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stLWxvZ28tZ3JpZCB7XG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcblxuICAuYmxvY2tfX2dyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMHJlbSwgMWZyKSk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuYmxvY2tfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMnhsKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuYmxvY2tfX2xvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmJsb2NrX19sb2dvIGZpZ3VyZSB7XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIG1heC1oZWlnaHQ6IDEycmVtO1xuICB9XG5cbiAgLmJsb2NrX19sb2dvIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgfVxufVxuIiwiLmJsb2NrLS1tb2RlbC1ncmlkIHtcbiAgLmJsb2NrX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjByZW0sIDFmcikpO1xuICAgIGdhcDogdmFyKC0tZ3V0dGVyKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5ibG9ja19faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIH1cblxuICAuYmxvY2tfX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmJsb2NrX19pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGZpZ3VyZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGltZyB7XG4gICAgYXNwZWN0LXJhdGlvOiAyIC8gMTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgLmJsb2NrX19uZXdzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mb2ctZ3JleSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgdmFyKC0tc3BhY2luZy14bCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLW1vZGVsLWdyaWQge1xuICAgIC5ibG9ja19faW1hZ2Uge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stLXJlY2VudC1hcnRpY2xlcyB7XG4gIHRyLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuc2hvdy1hbGwgdHIuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi5zaG93LWFsbCAuYmxvY2tfX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAudGFibGVfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeGwpO1xuICB9XG5cbiAgLnRhYmxlIC50YWJsZV9fY2VsbC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5hY2NlbnQge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJsb2NrLS1yZWNlbnQtYXJ0aWNsZXMge1xuICAgICYuc2hvdy1hbGwgdHIuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG5cbiAgICB0ZDpoYXMoLnRhYmxlX19jZWxsLS1zY29wZSksXG4gICAgdGQ6aGFzKC50YWJsZV9fY2VsbC0tZGF0ZSkge1xuICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgLnRhYmxlX19jZWxsLS1zY29wZSxcbiAgICAudGFibGVfX2NlbGwtLWRhdGUge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay0tc2xpZGVyIHtcbiAgLmJsb2NrX19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIH1cblxuICAuYmxvY2tfX3NsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmNhcm91c2VsIHtcbiAgICAtLXBhZ2Utc2l6ZTogMTtcbiAgfVxuXG4gIC5ibG9ja19fc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmlnaHQtZ3JleSk7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGZpZ3VyZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmJsb2NrX19pbWFnZSBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG5cbiAgLmJsb2NrX19tYWluID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14bCkgdmFyKC0tc3BhY2luZy14bCkgdmFyKC0tc3BhY2luZy01eGwpO1xuICB9XG5cbiAgLmJsb2NrX19tYWluID4gZGl2ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgfVxuXG4gIGgyLFxuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcbiAgfVxuXG4gIC5ibG9ja19fbWFpbiA+IGRpdiA+IC5ibG9ja19fc3ViaGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gIH1cblxuICAuYmxvY2tfX2xpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgfVxuXG4gIC5ibG9ja19fbGlua3MgLmJsb2NrX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5ibG9ja19fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLmNhcm91c2VsX19jb250cm9scyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmcteGwpO1xuICB9XG5cbiAgLmJsb2NrX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5ibG9jay0tc2xpZGVyLXZpZGVvIHtcbiAgLmJsb2NrX19zbGlkZSA+IC5ibG9ja19fdmlkZW8ge1xuICAgIGZsZXg6IDI7XG4gIH1cblxuICAuYmxvY2tfX3ZpZGVvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuYmxvY2tfX3ZpZGVvIGlmcmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmJsb2NrX19uYXYge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLXNsaWRlciB7XG4gICAgLmJsb2NrX19zbGlkZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5ibG9ja19fbWFpbiA+IGRpdiB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4bCk7XG4gICAgfVxuXG4gICAgLmJsb2NrX19ib2R5OmhhcyguYmxvY2tfX25hdikgLmJsb2NrX19tYWluID4gZGl2IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3hsKSB2YXIoLS1zcGFjaW5nLTN4bCkgdmFyKC0tc3BhY2luZy01eGwpO1xuICAgIH1cblxuICAgIC5ibG9ja19fc2xpZGUgPiBkaXYge1xuICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYuYmxvY2stLWltYWdlLXJpZ2h0IC5ibG9ja19fc2xpZGUge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgICYuYmxvY2stLWltYWdlLXJpZ2h0IC5ibG9ja19fbmF2IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay0tdGVhc2VyIHtcbiAgLmJsb2NrX19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4bCk7XG4gIH1cblxuICAuYmxvY2tfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLWd1dHRlcik7XG4gIH1cblxuICAuYmxvY2tfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICB9XG5cbiAgLmJsb2NrX19iYWRnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXh4cykgdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gIC5ibG9ja19faW1hZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZvZy1ncmV5KTtcbiAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gIH1cblxuICAuYmxvY2tfX2ltYWdlIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5ibG9ja19faW1hZ2UgZmlndXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuYmxvY2tfX21ldGEge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteGwpO1xuICB9XG5cbiAgLmJsb2NrX19oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICB9XG5cbiAgLmJsb2NrX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvY2stLXRlYXNlciB7XG4gICAgLmJsb2NrX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmJsb2NrX19tZXRhIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmcteGwpO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLS10b29scy10YWJsZSB7XG4gIC0tZ3V0dGVyOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgLS1yb3ctc2VwYXJhdG9yOiAxcHggc29saWQgdmFyKC0tY29sb3ItZm9nLWdyZXkpO1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG5cbiAgLnRhYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTN4bCk7XG4gIH1cblxuICAudGFibGVfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbGcpO1xuICB9XG5cbiAgLnRhYmxlX19oZWFkZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tcm93LXNlcGFyYXRvcik7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAudGFibGVfX3Jvdy0tY29udGVudCB0ZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHRoLnNvcnRhYmxlIC50YWJsZV9faGVhZGVyLWxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICB0aC5zb3J0YWJsZSAudGFibGVfX2hlYWRlci1sYWJlbDpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLnRhYmxlX19oZWFkZXItbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAudGFibGVfX2hlYWRlci1sYWJlbDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLXhzKSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xuICB9XG5cbiAgdGguc29ydC1hc2MgLnRhYmxlX19oZWFkZXItbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKWvFwiO1xuICB9XG5cbiAgdGguc29ydC1kZXNjIC50YWJsZV9faGVhZGVyLWxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogXCLilrJcIjtcbiAgfVxuXG4gIC50YWJsZV9fcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLnRhYmxlX19yb3ctLWRhdGEge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20pIDA7XG4gIH1cblxuICAudGFibGVfX3Jvdy0tZGF0YSxcbiAgLnRhYmxlX19yb3ctLWVtcHR5IHtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1yb3ctc2VwYXJhdG9yKTtcbiAgfVxuXG4gIC50YWJsZV9fY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICAgIHBhZGRpbmctYmxvY2s6IDAuMTI1cmVtO1xuICB9XG5cbiAgLnRhYmxlX19jZWxsLWxlZ2VuZCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC50YWJsZV9fY2VsbC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gIH1cblxuICAudGFibGVfX2NlbGwtaWNvbiBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIH1cblxuICAudGFibGVfX2NlbGwtLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IHZhcigtLXNwYWNpbmctc20pO1xuICB9XG5cbiAgLnRhYmxlX19jb250ZW50IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICB0ci52aXNpYmxlIC50YWJsZV9fY29udGVudCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgdHI6aGFzKCsgdHIgLnRhYmxlX19jb250ZW50KSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5ibG9jay0tdG9vbHMtdGFibGUge1xuICAuZmlsdGVyc19faXRlbXMtLWJhc2VfbW9kZWxzIC5maWx0ZXJzX19pdGVtLWljb24gKyAuZmlsdGVyc19faXRlbS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5maWx0ZXJzX19pdGVtcy0tYmFzZV9tb2RlbHMgLmZpbHRlcnNfX2l0ZW0taWNvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAudGFibGVfX2NlbGwtaWNvbiArIC50YWJsZV9fY2VsbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC50YWJsZV9fY2VsbC0tYmFzZV9tb2RlbHMge1xuICAgIC50YWJsZV9fY2VsbC1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgfVxuICB9XG5cbiAgLnRhYmxlX19jZWxsLS1hcHBsaWNhdGlvbixcbiAgLnRhYmxlX19jZWxsLS1saWNlbnNlIHtcbiAgICAudGFibGVfX2NlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLW1vdXNlLWdyZXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyhpbmZpbml0eSAqIDFweCk7XG4gICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgd2lkdGg6IDEuNjI1cmVtO1xuICAgICAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgICB9XG4gIH1cblxuICAudGFibGVfX2NlbGwtLW9wZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAudGFibGVfX2NlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6IDFyZW07XG4gICAgICBoZWlnaHQ6IDFyZW07XG4gICAgfVxuICB9XG5cbiAgdHI6aGFzKCsgdHIgLnRhYmxlX19jb250ZW50KSAudGFibGVfX2NlbGwtLW9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICB0cjpoYXMoKyB0ci52aXNpYmxlKSAudGFibGVfX2NlbGwtLW9wZW4gLnRhYmxlX19jZWxsLWljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cblxuICAudGFibGVfX2NvbnRlbnQtaXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctbWQpO1xuICB9XG5cbiAgLnRhYmxlX19jb250ZW50LWl0ZW0tLW5ld3MgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICB9XG5cbiAgLnRhYmxlX19uZXdzLWRhdGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAudGFibGVfX2NvbnRlbnQtaXRlbS0tdXJsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9jay0tdG9vbHMtdGFibGUge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHJldmVydDtcbiAgICB9XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhzKSB2YXIoLS1ndXR0ZXIpIHZhcigtLXNwYWNpbmcteHMpIDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIHRoOmxhc3QtY2hpbGQsXG4gICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC50YWJsZV9fcm93IHtcbiAgICAgIGRpc3BsYXk6IHJldmVydDtcbiAgICB9XG5cbiAgICAudGFibGVfX2NlbGwge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAudGFibGVfX2NlbGwtbGVnZW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stLXZpZGVvIHtcbiAgLmJsb2NrX19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICB9XG5cbiAgLmJsb2NrX19ib2R5ID4gLmJsb2NrX192aWRlbyB7XG4gICAgZmxleDogMjtcbiAgfVxuXG4gIC5ibG9ja19fbWFpbiA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14bCkgdmFyKC0tc3BhY2luZy14bCkgdmFyKC0tc3BhY2luZy01eGwpO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICB9XG5cbiAgLmJsb2NrX192aWRlbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLmJsb2NrX192aWRlbyBpZnJhbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJsb2NrLS12aWRlbyB7XG4gICAgLmJsb2NrX19ib2R5IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLmJsb2NrX19ib2R5ID4gZGl2IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuXG4gICAgLmJsb2NrX19tYWluID4gZGl2IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3hsKTtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYuYmxvY2stLXZpZGVvLXJpZ2h0IC5ibG9ja19fYm9keSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG59XG4iLCIud2lkZ2V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhsKTtcbn1cblxuLndpZGdldCBoMyB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC53aWRnZXQge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmctM3hsKTtcbiAgfVxufVxuIiwiLndpZGdldC0tY29udGFjdCB7XG4gIC53aWRnZXRfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICB9XG5cbiAgLndpZGdldF9faXRlbS0taGVhZGluZyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC53aWRnZXRfX2l0ZW0tLWltYWdlIHtcbiAgICBtYXgtd2lkdGg6IDVyZW07XG4gIH1cbn1cbiIsIi53aWRnZXQtLWN0YSB7XG4gIC53aWRnZXRfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbGcpO1xuICB9XG5cbiAgLndpZGdldF9faW1hZ2UgaW1nIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICB9XG59XG4iLCIud2lkZ2V0LS10cmFpbmluZy1tZXRhIHtcbiAgaDQge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAud2lkZ2V0X19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgfVxuXG4gIC53aWRnZXRfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICB9XG5cbiAgLndpZGdldF9faXRlbS0tbG9jYXRpb24gLndpZGdldF9fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1sZyk7XG4gIH1cblxuICAud2lkZ2V0X19pdGVtLS1yZWdpc3RyYXRpb24gLndpZGdldF9fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1sZyk7XG4gIH1cblxuICAuYnV0dG9uLmJ1dHRvbi1wcmltYXJ5IHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgfVxuXG4gIC5idXR0b24uYnV0dG9uLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgfVxufVxuIl19 */