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

html {
  height: 100%;
}

body {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-cold-grey-secondary-light);
  height: 100%;
}

.login-container {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3xl);
  margin: var(--spacing-md);
  box-shadow: var(--shadow-default);
  border-radius: 0.375rem;
  background-color: var(--color-white);
  padding: var(--spacing-2xl);
  width: 100%;
  max-width: 28rem;
  overflow: hidden;
}

.login-logo {
  display: flex;
  justify-content: center;
}

.login-logo img {
  width: auto;
  height: 4rem;
}

.login-container h1 {
  font-weight: 500;
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  text-align: center;
}

#login {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.wp-login-logo {
  display: none;
}

.notice {
  border-left-width: 0.375rem;
  border-left-style: solid;
  padding: var(--spacing-xs) var(--spacing-md);
}

.notice a {
  text-decoration-line: underline;
}

.notice a:hover {
  text-decoration-line: none;
}

.notice-error {
  background-color: var(--color-error-light);
  color: var(--color-error);
}

.notice-info {
  background-color: var(--color-info-light);
  color: var(--color-info);
}

.notice.reset-pass a {
  display: none;
}

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

label[for="user_login"],
label[for="user_email"],
label[for="user_pass"],
label[for="pass1"],
label[for^="kihub_"] {
  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[for="user_login"]:has(+ input:focus, + input:valid[required]),
label[for="user_email"]:has(+ input:focus, + input:valid[required]),
label[for="user_pass"]:has(
    + .wp-pwd > input:focus,
    + .wp-pwd > input:valid[required]
  ),
.user-pass1-wrap:has(
    input:focus,
    input.short,
    input.bad,
    input.good,
    input.strong
  )
  label[for="pass1"],
label[for^="kihub_"]:has(+ input:focus, + input:not(:placeholder-shown)),
label:has(+ select) {
  transform: scale(0.8) translateY(-0.5rem) translateX(0.2rem);
  color: var(--color-focus);
}

.wp-pwd {
  display: flex;
  position: relative;
  flex-direction: column;
  gap: var(--spacing-xs);
}

button.wp-hide-pw {
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 1px solid transparent;
  border-radius: 0;
  background-color: transparent;
  padding: 0;
  color: var(--black);
}

button.wp-hide-pw:hover {
  border-color: transparent;
  background-color: transparent;
  color: var(--mouse-grey);
}

button.wp-hide-pw > span {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1;
  width: auto;
  height: 3.5rem;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

.forgetmenot {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.forgetmenot label {
  padding-left: var(--spacing-md);
}

#pass-strength-result {
  margin-bottom: var(--spacing-xs);
  padding: var(--spacing-xxs) var(--spacing-xs);
  font-weight: 500;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  text-align: center;
}

#pass-strength-result {
  &:is(.short, .bad, .good) {
    background-color: var(--color-error-light);
    color: var(--color-error);
  }

  &:is(.strong) {
    background-color: var(--color-success-light);
    color: var(--color-success);
  }
}

.pw-weak {
  display: flex;
  gap: var(--spacing-xs);
  font-weight: 500;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
}

.description {
  color: var(--color-mouse-grey);
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
}

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

#nav {
  text-align: center;
}

#backtoblog {
  display: none;
}

.admin-email__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-md);
}

.admin-email__actions-primary {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  width: 100%;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9tb2Rlcm4tbm9ybWFsaXplL21vZGVybi1ub3JtYWxpemUuY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9yZXNldC5wY3NzIiwiLi4vLi4vc3JjL2Nzcy9wYXJ0aWFscy9iYXNlLnBjc3MiLCIuLi8uLi9zcmMvY3NzL2xvZ2luLnBjc3MiLCIuLi8uLi9zcmMvY3NzL21peGlucy9sYWJlbC5wY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhGQUE4Rjs7QUFFOUY7OztDQUdDOztBQUVEOztDQUVDOztBQUVEOzs7Q0FHQyxzQkFBc0I7QUFDdkI7O0FBRUE7Q0FDQyxzSEFBc0g7Q0FDdEg7Ozs7Ozs7O2tCQVFpQjtDQUNqQixpQkFBaUIsRUFBRSxnREFBZ0Q7Q0FDbkUsOEJBQThCLEVBQUUsMEVBQTBFO0NBQzFHLFdBQVcsRUFBRSxtREFBbUQ7QUFDakU7O0FBRUE7OztDQUdDOztBQUVEO0NBQ0MsU0FBUyxFQUFFLHVDQUF1QztBQUNuRDs7QUFFQTs7O0NBR0M7O0FBRUQ7O0NBRUM7O0FBRUQ7O0NBRUMsbUJBQW1CO0FBQ3BCOztBQUVBOzs7Q0FHQzs7QUFFRDs7OztDQUlDOzs7Ozs7V0FNVSxFQUFFLE1BQU07Q0FDbEIsY0FBYyxFQUFFLE1BQU07QUFDdkI7O0FBRUE7O0NBRUM7O0FBRUQ7Q0FDQyxjQUFjO0FBQ2Y7O0FBRUE7O0NBRUM7O0FBRUQ7O0NBRUMsY0FBYztDQUNkLGNBQWM7Q0FDZCxrQkFBa0I7Q0FDbEIsd0JBQXdCO0FBQ3pCOztBQUVBO0NBQ0MsZUFBZTtBQUNoQjs7QUFFQTtDQUNDLFdBQVc7QUFDWjs7QUFFQTs7O0NBR0M7O0FBRUQ7O0NBRUM7O0FBRUQ7Q0FDQywwQkFBMEI7QUFDM0I7O0FBRUE7OztDQUdDOztBQUVEOzs7Q0FHQzs7QUFFRDs7Ozs7Q0FLQyxvQkFBb0IsRUFBRSxNQUFNO0NBQzVCLGVBQWUsRUFBRSxNQUFNO0NBQ3ZCLGlCQUFpQixFQUFFLE1BQU07Q0FDekIsU0FBUyxF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bkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsK0JBQStCO0FBQ2pDOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLDZDQUE2QztFQUM3QyxnQkFBZ0I7RUFDaEIsOEJBQThCO0VBQzlCLGtDQUFrQztFQUNsQyxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRTtJQUNFLDBDQUEwQztJQUMxQyx5QkFBeUI7RUFDM0I7O0VBRUE7SUFDRSw0Q0FBNEM7SUFDNUMsMkJBQTJCO0VBQzdCO0FBQ0Y7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsOEJBQThCO0VBQzlCLDhCQUE4QjtFQUM5QixrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYiIsImZpbGUiOiJsb2dpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbW9kZXJuLW5vcm1hbGl6ZSB2My4wLjEgfCBNSVQgTGljZW5zZSB8IGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZSAqL1xuXG4vKlxuRG9jdW1lbnRcbj09PT09PT09XG4qL1xuXG4vKipcblVzZSBhIGJldHRlciBib3ggbW9kZWwgKG9waW5pb25hdGVkKS5cbiovXG5cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcblx0LyogSW1wcm92ZSBjb25zaXN0ZW5jeSBvZiBkZWZhdWx0IGZvbnRzIGluIGFsbCBicm93c2Vycy4gKGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZS9pc3N1ZXMvMykgKi9cblx0Zm9udC1mYW1pbHk6XG5cdFx0c3lzdGVtLXVpLFxuXHRcdCdTZWdvZSBVSScsXG5cdFx0Um9ib3RvLFxuXHRcdEhlbHZldGljYSxcblx0XHRBcmlhbCxcblx0XHRzYW5zLXNlcmlmLFxuXHRcdCdBcHBsZSBDb2xvciBFbW9qaScsXG5cdFx0J1NlZ29lIFVJIEVtb2ppJztcblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy4gKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy4gKi9cblx0dGFiLXNpemU6IDQ7IC8qIDMuIFVzZSBhIG1vcmUgcmVhZGFibGUgdGFiIHNpemUgKG9waW5pb25hdGVkKS4gKi9cbn1cblxuLypcblNlY3Rpb25zXG49PT09PT09PVxuKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDsgLyogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLiAqL1xufVxuXG4vKlxuVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbj09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4vKipcbkFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbjEuIEltcHJvdmUgY29uc2lzdGVuY3kgb2YgZGVmYXVsdCBmb250cyBpbiBhbGwgYnJvd3NlcnMuIChodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL21vZGVybi1ub3JtYWxpemUvaXNzdWVzLzMpXG4yLiBDb3JyZWN0IHRoZSBvZGQgJ2VtJyBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5jb2RlLFxua2JkLFxuc2FtcCxcbnByZSB7XG5cdGZvbnQtZmFtaWx5OlxuXHRcdHVpLW1vbm9zcGFjZSxcblx0XHRTRk1vbm8tUmVndWxhcixcblx0XHRDb25zb2xhcyxcblx0XHQnTGliZXJhdGlvbiBNb25vJyxcblx0XHRNZW5sbyxcblx0XHRtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG5BZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuUHJldmVudCAnc3ViJyBhbmQgJ3N1cCcgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiovXG5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG5cdGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcblx0dG9wOiAtMC41ZW07XG59XG5cbi8qXG5UYWJ1bGFyIGRhdGFcbj09PT09PT09PT09PVxuKi9cblxuLyoqXG5Db3JyZWN0IHRhYmxlIGJvcmRlciBjb2xvciBpbmhlcml0YW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS4gKGh0dHBzOi8vaXNzdWVzLmNocm9taXVtLm9yZy9pc3N1ZXMvNDA2MTU1MDMsIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUwMTYpXG4qL1xuXG50YWJsZSB7XG5cdGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG4vKlxuRm9ybXNcbj09PT09XG4qL1xuXG4vKipcbjEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbkNvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4qL1xuXG5idXR0b24sXG5bdHlwZT0nYnV0dG9uJ10sXG5bdHlwZT0ncmVzZXQnXSxcblt0eXBlPSdzdWJtaXQnXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcblJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXQgJ2ZpZWxkc2V0JyBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5sZWdlbmQge1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbkFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lIGFuZCBGaXJlZm94LlxuKi9cblxucHJvZ3Jlc3Mge1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbjEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4qL1xuXG5bdHlwZT0nc2VhcmNoJ10ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcblJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4xLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byAnaW5oZXJpdCcgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLypcbkludGVyYWN0aXZlXG49PT09PT09PT09PVxuKi9cblxuLypcbkFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIENocm9tZSBhbmQgU2FmYXJpLlxuKi9cblxuc3VtbWFyeSB7XG5cdGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cbiIsIkBpbXBvcnQgXCJtb2Rlcm4tbm9ybWFsaXplXCI7XG5cbi8qIGh0dHBzOi8vdW5wa2cuY29tL3RhaWx3aW5kY3NzQDMuNC4xNy9zcmMvY3NzL3ByZWZsaWdodC5jc3MgKi9cblxuOnJvb3Qge1xuICBpbnRlcnBvbGF0ZS1zaXplOiBhbGxvdy1rZXl3b3Jkcztcbn1cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCB7XG4gIG1hcmdpbjogMDtcbn1cblxub2wsXG51bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5hZGRyZXNzLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG5cbnN2ZyB7XG4gIGZpbGwtcnVsZTogZXZlbm9kZDtcbn1cbiIsIkBpbXBvcnQgXCIuL3Jlc2V0LnBjc3NcIjtcblxuLyogVmFyaWFibGVzICovXG5cbjpyb290IHtcbiAgLS1jb2xvci1yZWQ6ICNlMjA2MTM7XG4gIC0tY29sb3ItYmxhY2s6ICMwMDAwMDA7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmZmZmY7XG4gIC0tY29sb3IteWVsbG93OiAjZmZmZjFjO1xuXG4gIC0tY29sb3ItbW91c2UtZ3JleTogIzY2NjY2NjtcbiAgLS1jb2xvci1mb2ctZ3JleTogI2RkZGRkZDtcblxuICAtLWNvbG9yLWZvY3VzOiAjMDg3NWUyO1xuICAtLWNvbG9yLWxhYmVsOiAjNGQ0ZDRkO1xuXG4gIC0tY29sb3ItZXJyb3I6ICNiYjBkM2I7XG4gIC0tY29sb3ItZXJyb3ItbGlnaHQ6ICNmY2YyZjU7XG5cbiAgLS1jb2xvci1zdWNjZXNzOiAjMTY3NDQxO1xuICAtLWNvbG9yLXN1Y2Nlc3MtbGlnaHQ6ICNlN2YxZWI7XG5cbiAgLS1jb2xvci1pbmZvOiAjMWI0YmFmO1xuICAtLWNvbG9yLWluZm8tbGlnaHQ6ICNlY2YwZjk7XG5cbiAgLS1jb2xvci1icmlnaHQtZ3JleTogI2Y2ZjZmNjtcblxuICAtLWNvbG9yLWNvbGQtZ3JleS1wcmltYXJ5OiAjNzE4NTk3O1xuICAtLWNvbG9yLWNvbGQtZ3JleS1wcmltYXJ5LWxpZ2h0OiAjZDRkYWUwO1xuXG4gIC0tY29sb3ItY29sZC1ncmV5LXNlY29uZGFyeTogI2VhZWRmMDtcbiAgLS1jb2xvci1jb2xkLWdyZXktc2Vjb25kYXJ5LWxpZ2h0OiAjZjZmNmY2O1xuXG4gIC0taWNvbi1jaGVja2VkOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuXG4gIC0tc2hhZG93LWRlZmF1bHQ6IDAgNHB4IDhweCByZ2IoMCAwIDAgLyAxMCUpO1xuXG4gIC0tc3BhY2luZy14eHM6IDAuMjVyZW07XG4gIC0tc3BhY2luZy14czogMC41cmVtO1xuICAtLXNwYWNpbmctc206IDAuNXJlbTtcbiAgLS1zcGFjaW5nLW1kOiAwLjc1cmVtO1xuICAtLXNwYWNpbmctbGc6IDFyZW07XG4gIC0tc3BhY2luZy14bDogMS4yNXJlbTtcbiAgLS1zcGFjaW5nLTJ4bDogMS41cmVtO1xuICAtLXNwYWNpbmctM3hsOiAycmVtO1xuICAtLXNwYWNpbmctNHhsOiAyLjVyZW07XG4gIC0tc3BhY2luZy01eGw6IDMuNXJlbTtcblxuICAtLWZvbnQtc2l6ZS1oMTogMi41cmVtO1xuICAtLWZvbnQtc2l6ZS1oMjogMS44NzVyZW07XG4gIC0tZm9udC1zaXplLWgzOiAxLjQzNzVyZW07XG4gIC0tZm9udC1zaXplLWg0OiAxcmVtO1xuICAtLWZvbnQtc2l6ZS1oNTogMXJlbTtcbiAgLS1mb250LXNpemUtaDY6IDAuODc1cmVtO1xuXG4gIC0tbGluZS1oZWlnaHQtaDE6IDMuMTI1cmVtO1xuICAtLWxpbmUtaGVpZ2h0LWgyOiAyLjM3NXJlbTtcbiAgLS1saW5lLWhlaWdodC1oMzogMS43NXJlbTtcbiAgLS1saW5lLWhlaWdodC1oNDogMS41cmVtO1xuICAtLWxpbmUtaGVpZ2h0LWg1OiAxLjVyZW07XG4gIC0tbGluZS1oZWlnaHQtaDY6IDEuMTI1cmVtO1xuXG4gIC0tZ3V0dGVyOiAxcmVtO1xuICAtLW1hcmdpbjogMXJlbTtcblxuICAtLWFkbWluLWJhci1oZWlnaHQ6IDA7XG4gIC0tc2l0ZS1oZWFkZXItaGVpZ2h0OiA0cmVtO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC0tc3BhY2luZy14eHM6IDAuMjVyZW07XG4gICAgLS1zcGFjaW5nLXhzOiAwLjVyZW07XG4gICAgLS1zcGFjaW5nLXNtOiAwLjc1cmVtO1xuICAgIC0tc3BhY2luZy1tZDogMXJlbTtcbiAgICAtLXNwYWNpbmctbGc6IDEuMjVyZW07XG4gICAgLS1zcGFjaW5nLXhsOiAxLjVyZW07XG4gICAgLS1zcGFjaW5nLTJ4bDogMnJlbTtcbiAgICAtLXNwYWNpbmctM3hsOiAyLjVyZW07XG4gICAgLS1zcGFjaW5nLTR4bDogMy41cmVtO1xuICAgIC0tc3BhY2luZy01eGw6IDRyZW07XG5cbiAgICAtLWZvbnQtc2l6ZS1oMTogMy4zNzVyZW07XG4gICAgLS1mb250LXNpemUtaDI6IDIuNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMS44NzVyZW07XG4gICAgLS1mb250LXNpemUtaDQ6IDEuNDM3NXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMC44NzVyZW07XG5cbiAgICAtLWxpbmUtaGVpZ2h0LWgxOiA0LjI1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDI6IDMuMTI1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDM6IDIuMzc1cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDQ6IDEuNzVyZW07XG4gICAgLS1saW5lLWhlaWdodC1oNTogMS41cmVtO1xuICAgIC0tbGluZS1oZWlnaHQtaDY6IDEuMTI1cmVtO1xuXG4gICAgLS1ndXR0ZXI6IDEuNXJlbTtcbiAgICAtLW1hcmdpbjogMS41cmVtO1xuICB9XG59XG5cbmJvZHkuYWRtaW4tYmFyIHtcbiAgLS1hZG1pbi1iYXItaGVpZ2h0OiAzMnB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MnB4KSB7XG4gICAgLS1hZG1pbi1iYXItaGVpZ2h0OiA0NnB4O1xuICB9XG59XG5cbi8qIEZvbnRzICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy8xNWFjOGU3Zi1jMWU0LTQ5ZTItYTRjNS03MGM1MDEwYTQxMmIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvOTRmOGRiMTEtZGRhNi00OTE3LWJlZDktYzYzNDAzMTI1ZDI1LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy81Y2Y2YzUzNy1mOWIwLTQzZDctYTYxNi1iYWVmZTgzNjMxZmQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvMDhkNDU5ZmQtNjQ5NC00MTc5LWFkODYtNWUxNDVjNDJmM2QwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy9mNjNjOTU2Yi1mZDJlLTQ0ODctODIyZS1mNTQ5NzA2MDcxOTEud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvNjI0NmI3MjQtODRlMS00OTg3LWJmYjItYzRlZGVhNzE2ZDRhLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy80N2RmMzE1Yy0zYmQ1LTQwMTMtODcxMi1iOTQ1MTYzZmM3NDYud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvODNmNmNjNmEtZTUzYy00ZTU3LTg1ZDQtMWQ5YzI5MmY0MTc2LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzpcbiAgICB1cmwoXCIuLi9mb250cy8wMTBhOGE0NS1iODM3LTQ0M2EtYTY0Mi00YTUxMzEzNDlmZmQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvNDQ1MmQzYTktZjcxNS00Mzc5LWJiOWItNzg0NWRlODQ3YzIzLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbi8qIEdsb2JhbCAqL1xuXG5odG1sIHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIHNjcm9sbC1wYWRkaW5nLXRvcDogdmFyKC0tc2l0ZS1oZWFkZXItaGVpZ2h0KTtcbiAgZm9udC1mYW1pbHk6IFwiRElOIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG5odG1sOmhhcygjd3BhZG1pbmJhcikge1xuICBzY3JvbGwtcGFkZGluZy10b3A6IGNhbGModmFyKC0tc2l0ZS1oZWFkZXItaGVpZ2h0KSArIDMycHgpO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5saW5rIHN2ZyB7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5saW5rOmhhcyhzdmcpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xufVxuXG4uY2Fwcy13YXJuaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogRm9ybXMgKi9cblxuaW5wdXQ6aXMoXG4gICAgW3R5cGU9XCJ0ZXh0XCJdLFxuICAgIFt0eXBlPVwiZW1haWxcIl0sXG4gICAgW3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICBbdHlwZT1cIm51bWJlclwiXSxcbiAgICBbdHlwZT1cInRlbFwiXSxcbiAgICBbdHlwZT1cInVybFwiXSxcbiAgICBbdHlwZT1cInNlYXJjaFwiXVxuICApLFxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgcGFkZGluZzogMS41cmVtIDFyZW0gMC41cmVtO1xuICB3aWR0aDogMTAwJTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMpO1xuICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICB9XG59XG5cbmJ1dHRvbixcbmlucHV0OmlzKFt0eXBlPVwiYnV0dG9uXCJdLCBbdHlwZT1cInN1Ym1pdFwiXSksXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGNvbG9yO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKGluZmluaXR5ICogMXB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcblxuICAmLmJ1dHRvbi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9nLWdyZXkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyaWdodC1ncmV5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2ctZ3JleSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJpZ2h0LWdyZXkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxufVxuXG5pbnB1dDppcyhbdHlwZT1cImNoZWNrYm94XCJdLCBbdHlwZT1cInJhZGlvXCJdKSxcbmlucHV0OmlzKFt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl0pICsgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0OmlzKFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbW91c2UtZ3JleSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG5cbiAgJjpjaGVja2VkIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pY29uLWNoZWNrZWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgfVxufVxuXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEuNXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtIDQuNXJlbSAwLjc1cmVtIDFyZW07XG59XG4iLCJAaW1wb3J0IFwiLi9wYXJ0aWFscy9iYXNlLnBjc3NcIjtcblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jb2xkLWdyZXktc2Vjb25kYXJ5LWxpZ2h0KTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubG9naW4tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTN4bCk7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2luZy1tZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1kZWZhdWx0KTtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeGwpO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyOHJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmxvZ2luLWxvZ28ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmxvZ2luLWxvZ28gaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogNHJlbTtcbn1cblxuLmxvZ2luLWNvbnRhaW5lciBoMSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jbG9naW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xufVxuXG4ud3AtbG9naW4tbG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ub3RpY2Uge1xuICBib3JkZXItbGVmdC13aWR0aDogMC4zNzVyZW07XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgdmFyKC0tc3BhY2luZy1tZCk7XG59XG5cbi5ub3RpY2UgYSB7XG4gIHRleHQtZGVjb3JhdGlvbi1saW5lOiB1bmRlcmxpbmU7XG59XG5cbi5ub3RpY2UgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbi1saW5lOiBub25lO1xufVxuXG4ubm90aWNlLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3ItbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuXG4ubm90aWNlLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1pbmZvLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWluZm8pO1xufVxuXG4ubm90aWNlLnJlc2V0LXBhc3MgYSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xufVxuXG5sYWJlbFtmb3I9XCJ1c2VyX2xvZ2luXCJdLFxubGFiZWxbZm9yPVwidXNlcl9lbWFpbFwiXSxcbmxhYmVsW2Zvcj1cInVzZXJfcGFzc1wiXSxcbmxhYmVsW2Zvcj1cInBhc3MxXCJdLFxubGFiZWxbZm9yXj1cImtpaHViX1wiXSB7XG4gIEBtaXhpbiBpbmxpbmUtbGFiZWwgdmFyKC0tY29sb3ItbGFiZWwpO1xufVxuXG5sYWJlbFtmb3I9XCJ1c2VyX2xvZ2luXCJdOmhhcygrIGlucHV0OmZvY3VzLCArIGlucHV0OnZhbGlkW3JlcXVpcmVkXSksXG5sYWJlbFtmb3I9XCJ1c2VyX2VtYWlsXCJdOmhhcygrIGlucHV0OmZvY3VzLCArIGlucHV0OnZhbGlkW3JlcXVpcmVkXSksXG5sYWJlbFtmb3I9XCJ1c2VyX3Bhc3NcIl06aGFzKFxuICAgICsgLndwLXB3ZCA+IGlucHV0OmZvY3VzLFxuICAgICsgLndwLXB3ZCA+IGlucHV0OnZhbGlkW3JlcXVpcmVkXVxuICApLFxuLnVzZXItcGFzczEtd3JhcDpoYXMoXG4gICAgaW5wdXQ6Zm9jdXMsXG4gICAgaW5wdXQuc2hvcnQsXG4gICAgaW5wdXQuYmFkLFxuICAgIGlucHV0Lmdvb2QsXG4gICAgaW5wdXQuc3Ryb25nXG4gIClcbiAgbGFiZWxbZm9yPVwicGFzczFcIl0sXG5sYWJlbFtmb3JePVwia2lodWJfXCJdOmhhcygrIGlucHV0OmZvY3VzLCArIGlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pKSxcbmxhYmVsOmhhcygrIHNlbGVjdCkge1xuICBAbWl4aW4gaW5saW5lLWxhYmVsLS1hY3RpdmUgdmFyKC0tY29sb3ItZm9jdXMpO1xufVxuXG4ud3AtcHdkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xufVxuXG5idXR0b24ud3AtaGlkZS1wdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogdmFyKC0tYmxhY2spO1xufVxuXG5idXR0b24ud3AtaGlkZS1wdzpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tbW91c2UtZ3JleSk7XG59XG5cbmJ1dHRvbi53cC1oaWRlLXB3ID4gc3BhbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDMuNXJlbTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xufVxuXG4uZm9yZ2V0bWVub3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZm9yZ2V0bWVub3QgbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbWQpO1xufVxuXG4jcGFzcy1zdHJlbmd0aC1yZXN1bHQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14eHMpIHZhcigtLXNwYWNpbmcteHMpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3Bhc3Mtc3RyZW5ndGgtcmVzdWx0IHtcbiAgJjppcyguc2hvcnQsIC5iYWQsIC5nb29kKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3ItbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIH1cblxuICAmOmlzKC5zdHJvbmcpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdWNjZXNzLWxpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIH1cbn1cblxuLnB3LXdlYWsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XG59XG5cbi5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tb3VzZS1ncmV5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xufVxuXG4uc3VibWl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuI25hdiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2JhY2t0b2Jsb2cge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYWRtaW4tZW1haWxfX2FjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xufVxuXG4uYWRtaW4tZW1haWxfX2FjdGlvbnMtcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiQGRlZmluZS1taXhpbiBpbmxpbmUtbGFiZWwgJGNvbG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zaXRpb246IGFsbCAxMjVtcyBlYXNlLWluLW91dDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJGNvbG9yO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQGRlZmluZS1taXhpbiBpbmxpbmUtbGFiZWwtLWFjdGl2ZSAkY29sb3Ige1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMnJlbSk7XG4gIGNvbG9yOiAkY29sb3I7XG59XG4iXX0= */