/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */

/* Document (https://html.spec.whatwg.org/multipage/semantics.html#semantics)
   ========================================================================== */

/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */

*,
::before,
::after {
	background-repeat: no-repeat; /* 1 */
	box-sizing: inherit; /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */

::before,
::after {
	text-decoration: inherit; /* 1 */
	vertical-align: inherit; /* 2 */
}

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Prevent font size adjustments after orientation changes in IE and iOS.
 */

html {
	box-sizing: border-box; /* 1 */
	cursor: default; /* 2 */
	-ms-text-size-adjust: 100%; /* 3 */
	-webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections (https://html.spec.whatwg.org/multipage/semantics.html#sections)
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
	display: block;
}

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
	margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
	font-size: 2em;
	margin: .67em 0;
}

/* Grouping content (https://html.spec.whatwg.org/multipage/semantics.html#grouping-content)
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
	display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
	margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */

nav ol,
nav ul {
	list-style: none;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/* Text-level semantics (https://html.spec.whatwg.org/multipage/semantics.html#text-level-semantics)
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
	background-color: transparent; /* 1 */
	-webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
	font-weight: inherit;
}

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

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
	font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
	background-color: #ffff00;
	color: #000000;
}

/**
 * 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: -.25em;
}

sup {
	top: -.5em;
}

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */

::-moz-selection {
	background-color: #b3d4fc; /* 1 */
	color: #000000; /* 1 */
	text-shadow: none;
}

::selection {
	background-color: #b3d4fc; /* 1 */
	color: #000000; /* 1 */
	text-shadow: none;
}

/* Embedded content (https://html.spec.whatwg.org/multipage/embedded-content.html#embedded-content)
   ========================================================================== */

/*
 * Change the alignment on media elements in all browers (opinionated).
 */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
	display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
	display: none;
	height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
	border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */

svg {
	fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
	overflow: hidden;
}

/* Tabular data (https://html.spec.whatwg.org/multipage/tables.html#tables)
   ========================================================================== */

/**
 * Collapse border spacing
 */

table {
	border-collapse: collapse;
}

/* Forms (https://html.spec.whatwg.org/multipage/forms.html#forms)
   ========================================================================== */

/**
 * Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
	margin: 0;
}

/**
 * Inherit styling in all browsers (opinionated).
 */

button,
input,
select,
textarea {
	background-color: transparent;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
	text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
	-webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
	box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	display: inline-block; /* 1 */
	vertical-align: baseline; /* 2 */
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */

textarea {
	overflow: auto; /* 1 */
	resize: vertical; /* 2 */
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

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

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/* Interactive elements (https://html.spec.whatwg.org/multipage/forms.html#interactive-elements)
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Scripting (https://html.spec.whatwg.org/multipage/scripting.html#scripting-3)
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
	display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
	display: none;
}

/* User interaction (https://html.spec.whatwg.org/multipage/interaction.html#editing)
   ========================================================================== */

/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
	-ms-touch-action: manipulation; /* 1 */
	touch-action: manipulation;
}

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
	display: none;
}

/* ARIA (https://w3c.github.io/html-aria/)
   ========================================================================== */

/**
 * Change the cursor on busy elements (opinionated).
 */

[aria-busy="true"] {
	cursor: progress;
}

/*
 * Change the cursor on control elements (opinionated).
 */

[aria-controls] {
	cursor: pointer;
}

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */

[aria-hidden="false"][hidden]:not(:focus) {
	clip: rect(0, 0, 0, 0);
	display: inherit;
	position: absolute;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */

[aria-disabled] {
	cursor: default;
}

@custom-media --desktop (width >= 500px) and (width <= 1200px);

:root {
  --font-system-ui: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-serif: 'Roboto Slab', serif;
  --font-sans: 'Ropa Sans', sans-serif;
  --color-text: #010101;
  --color-bg: #fefefe;
  --color-link: #0e0e0e;
  --color-link-border: #0e0e0e;
  --color-link-hover: #fefefe;
  --color-link-hover-bg: #262626;
  --color-info: #fff;
  --color-main-bg: #fefefe;
  --color-yellow: #faed18;
  --color-red:#ff4800;
  --color-blue: #41d5e6;
  --color-green: #0a9797;
  --path-fill-1: #0a9797;
  --path-fill-2: #faed18;
  --path-fill-3: #41d5e6;
  --path-fill-4: #ff4800;
  --color-title: #fff;
  --font-family-title: 'Roboto Slab', serif;
  --font-size-title: 7vmax;
  --font-weight-title: 700;
  --color-menu: #171616;
  --color-menu-hover: #ffffff;
  --font-family-menu: 'Roboto Slab', serif;
  --font-size-menu: 2vmax;
  --font-weight-menu: 700;
  --button-bg: #fff;
  --button-circle: #6b6b6b;
  --button-line: #222;
}

.js body {
  opacity: 0;
  transition: opacity 0.3s;		
}

.js body.render {
  opacity: 1;
}

body {
  font-family: var(--font-sans);
  min-height: 100vh;
  color: #57585c;
  color: var(--color-text); 
  background-color: #fff;
  background-color: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  font-size: 18px;
}

h1, h2, h3, h4, h5, strong {
  display: block;
  font-family: var(--font-serif);
  width: 100%;
}

strong {
  font-size: 0.84em;
  /*	margin-top: 1em;
  margin-bottom: 0.45em;*/
}

em {
  font-style: normal;
  font-weight: 700;
}

a {
  text-decoration: none;
  color: #5d93d8;
  color: var(--color-link);
  outline: none;
  border-bottom: 1px solid var(--color-link-border);
  transition: all .3s ease;
}

a:hover,
a:focus {
  color: var(--color-link-hover);
  background-color: var(--color-link-hover-bg);
  outline: none;
}

img {
}

.hidden {
  position: absolute;
  overflow: hidden;
  width: 0;
  height: 0;
  pointer-events: none;
}

/* Icons */

.icon {
  display: block;
  width: 1.5em;
  height: 1.5em;
  margin: 0 auto;
  fill: currentColor;
}

.icon--keyboard {
  display: none;
}

main {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--color-main-bg);
}

.content {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-height: 100vh;
  margin: 0 auto;
}

.borderb {
  border-bottom: 32px solid var(--color-link-hover-bg);
  }

.content--fixed {
  position: fixed;
  top: 0;
  left: 0;
  display: grid;
  align-content: space-between;
  width: 100%;
  max-width: none;
  min-height: 0;
  height: 100vh;
  padding: 1.5em;
  grid-template-columns: 50% 50%;
  grid-template-rows: auto auto 4em;
  grid-template-areas: 'header ...'
  '... ...'
  'github demos';
}

.content--fixed a {
  pointer-events: auto;
}

.home-part {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  width: 100%;
  overflow: hidden;
  min-height: 74vh;
}

.yellow {
  background-color: var(--color-yellow);
}

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

.blue {
  background-color: var(--color-blue);
}

.green {
  background-color: var(--color-green);
}

.home-part .cover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  overflow: hidden;
  width: 42vw;
}

.home-part.single .cover  {
  width: 100%;
}

.abstract {
  font-size: 24px;
  line-height: 1.2;
}

.home-part .title {
  z-index: 1;
  font-size: 1.5em;
  margin-top: 32px;
  padding-left: 1em;
}

.home-part .title h1{
  margin-top: 32px;
}

.home-part .text {
  z-index: 1;
  line-height: 1.4;
  padding-left: 1em;
}

.home-part .text p {
  background: var(--color-main-bg);
  display: inline-block;
  max-width: 420px;
  min-width: 320px;
  margin-top: 32px;
  margin-right: 1em;
  padding: 1em 2em;
}

.item.interview {
  position: relative;
  min-height: 64vh;
  overflow:hidden;
}

.item.interview .cover {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  transition: all .2s ease;
}

.item.interview .cover:hover {
  opacity: 0.2;
}

.item.interview .text {
  z-index: 1;
  position: relative;
  transition: all .2s ease;
}

.item.interview.yellow:hover {
  background: var(--color-yellow);
}

.item.interview.red:hover {
  background: var(--color-red);
}

.item.interview.blue:hover {
  background: var(--color-blue);
}

.item.interview.green:hover {
  background: var(--color-green);
}

.item.interview .text.yellow-text {
  color: var(--color-yellow);
}

.item.interview .text.red-text {
  color: var(--color-red);
}

.item.interview .text.blue-text {
  color: var(--color-blue);
}

.item.interview .text.green-text {
  color: var(--color-green);
}

.item.interview:hover .text.yellow-text,
.item.interview:hover .text.blue-text,
.item.interview:hover .text.red-text,
.item.interview:hover .text.green-text {
  color: var(--color-text);
}

.single .cover img {
    max-width: 100%;
  }

@media screen and (min-width: 55em) {
.item.interview .title h1 {
  font-size: 64px;
}
  .home-part .cover {
    width: 84vw;
  }
  .home-part {
    flex-direction: row;
  }
  .home-part .title {
    font-size: 2em;
    width: calc(50% - 1em);
    margin-top: 64px;
    padding-left: 1em;
  }
  .home-part .text {
    z-index: 1;
    width: calc(50% - 2em);
    margin-top: 64px;
    padding-left: 2em;
  }
}

@media screen and (min-width: 55em) {
  .index {
    width: 50%;
  }
}

.index .cover img {
  max-width: 100%;
}

.index a:hover {
  color: var(--color-text);
}

.item {
  min-height: 42vh;
  padding: 32px;
  transition: all .2s ease;
}

.item .title {
  
}

.item.yellow:hover {
  background-color: initial;
}

.item.red:hover {
  background-color: initial;
}

.item.blue:hover {
  background-color: initial;
}

.item.green:hover {
  background-color: initial;
}

.article {
  width: 100%;
  max-width: 660px;
  padding: 2em;
  margin: 0 auto;

  line-height: 1.4;
}

.article .formatted {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
}

.article img {
  width: 100vw;
  max-width: 100%;
}

.text-part, .text-part-full {
  width: 100%;
  margin: 0.5em auto;
}

/* Navigation */

/* demo 3 */

.global-menu {
  width: 100vw;
  height: 90vh;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 100;
  padding: 64px 32px;
  line-height: 1.4;
}

.global-menu__sub {
  padding-left: 32px;
  width: calc(100% - 32px);
}

.global-menu__item {
  color: var(--color-menu);
  font-family: var(--font-family-menu);
  font-size: var(--font-size-menu);
  font-weight: var(--font-weight-menu);
  opacity: 0;
  transform: translateY(-100%);
  pointer-events: none;
  display: block;
  margin: 0.25em 0;
  transition: transform 0.1s, opacity 0.1s;
  transform: translateY(100%);
  transition-timing-function: ease-out;
  width: 100%;
}

.global-menu__item:hover {
  color: var(--color-menu-hover);
}

.global-menu__item.is-opened {
  opacity: 1;
  z-index: 9;
  transform: translateY(0) rotate(0);
  pointer-events: auto;
  transition-timing-function: ease;
}

.global-menu__item.is-opened {
  transition-duration: 0.3s;
}

.global-menu__item:nth-of-type(1) {
  transition-delay: 0s;
}

.global-menu__item.is-opened:nth-of-type(1) {
  transition-delay: 0.65s;
}

.global-menu__item:nth-of-type(2) {
  transition-delay: 0s;
}

.global-menu__item.is-opened:nth-of-type(2) {
  transition-delay: 0.7s;
}

.global-menu__item:nth-of-type(3) {
  transition-delay: 0s;
}

.global-menu__item.is-opened:nth-of-type(3) {
  transition-delay: 0.75s;
}

.global-menu__item:nth-of-type(4) {
  transition-delay: 0s;
}

.global-menu__item.is-opened:nth-of-type(4) {
  transition-delay: 0.8s;
}

@media screen and (min-width: 55em) {
.global-menu__item {
  max-width: 45%;
}
}

.shape-overlays {
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
}

.shape-overlays.is-opened {
  pointer-events: auto;
}

.shape-overlays__path:nth-of-type(1) {
  fill: var(--path-fill-1);
}

.shape-overlays__path:nth-of-type(2) {
  fill: var(--path-fill-2);
}

.shape-overlays__path:nth-of-type(3) {
  fill: var(--path-fill-3);
}

.shape-overlays__path:nth-of-type(4) {
  fill: var(--path-fill-4);
}

.shape-overlays__path:nth-of-type(4) {
  fill: var(--path-fill-4);
}

@-webkit-keyframes intervalHamburgerBorder {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  80% {
    -webkit-transform: scale(1.6);
    transform: scale(1.6);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.6);
    transform: scale(1.6);
  }
}

@keyframes intervalHamburgerBorder {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  80% {
    -webkit-transform: scale(1.6);
    transform: scale(1.6);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.6);
    transform: scale(1.6);
  }
}

.hamburger {
  width: 64px;
  height: 64px;
  display: block;
  position: relative;
  cursor: pointer;
  position: absolute;
  top: 2.25em;
  right: 2.25em;
  z-index: 110;
  border-radius: 50%;
  background-color: var(--button-bg);
  pointer-events: auto;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.hamburger::after {
  width: 64px;
  height: 64px;
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-name: intervalHamburgerBorder;
  animation-name: intervalHamburgerBorder;
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
}

.hamburger__line {
  width: 28px;
  height: 2px;
  overflow: hidden;
  position: absolute;
  z-index: 10;
}

.hamburger__line-in {
  width: 84px;
  height: 2px;
  position: absolute;
  top: 0;
  left: 0;
}

.hamburger__line-in::before,
.hamburger__line-in::after {
  width: 28px;
  height: 2px;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  background-color: var(--button-line);
}

.hamburger__line-in::before {
  left: -56px;
}

.hamburger__line-in::after {
  left: 0;
}

.hamburger__line--01,
.hamburger__line--02,
.hamburger__line--03,
.hamburger__line--cross01,
.hamburger__line--cross02 {
  left: 18px;
}

.hamburger__line--01 {
  top: 24.6px;
}

.hamburger__line--02,
.hamburger__line--cross01,
.hamburger__line--cross02 {
  top: 31px;
}

.hamburger__line--03 {
  top: 37.4px;
}

.hamburger__line--cross01 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.hamburger__line--cross02 {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.hamburger__line {
  -webkit-transition-duration: 0.6s;
  transition-duration: 0.6s;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger__line-in {
  -webkit-transition-duration: 0.6s;
  transition-duration: 0.6s;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger__line-in::before,
.hamburger__line-in::after {
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.hamburger__line-in--cross01,
.hamburger__line-in--cross02 {
  -webkit-transform: translateX(-33.3%);
  transform: translateX(-33.3%);
}

.hamburger__line-in--01 {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.hamburger__line-in--02 {
  -webkit-transition-delay: 0.25s;
  transition-delay: 0.25s;
}

.hamburger__line-in--02::before,
.hamburger__line-in--02::after {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.hamburger__line-in--03 {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.hamburger__line-in--03::before,
.hamburger__line-in--03::after {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.hamburger__line-in--cross01 {
  -webkit-transition-delay: 0.0s;
  transition-delay: 0.0s;
}

.hamburger__line-in--cross02 {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.hamburger__line-in--cross02::before,
.hamburger__line-in--cross02::after {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.hamburger.is-opened-navi .hamburger__line-in--01,
.hamburger.is-opened-navi .hamburger__line-in--02,
.hamburger.is-opened-navi .hamburger__line-in--03 {
  -webkit-transform: translateX(33.3%);
  transform: translateX(33.3%);
}

.hamburger.is-opened-navi .hamburger__line-in--cross01,
.hamburger.is-opened-navi .hamburger__line-in--cross02 {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.hamburger.is-opened-navi .hamburger__line-in--01 {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.hamburger.is-opened-navi .hamburger__line-in--02 {
  -webkit-transition-delay: 0.05s;
  transition-delay: 0.05s;
}

.hamburger.is-opened-navi .hamburger__line-in--03 {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.hamburger.is-opened-navi .hamburger__line-in--cross01 {
  -webkit-transition-delay: 0.25s;
  transition-delay: 0.25s;
}

.hamburger.is-opened-navi .hamburger__line-in--cross02 {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.hamburger:hover .hamburger__line-in::before,
.hamburger:hover .hamburger__line-in::after {
  -webkit-transform: translateX(200%);
  transform: translateX(200%);
}

.hamburger:hover .hamburger__line-in--01::before,
.hamburger:hover .hamburger__line-in--01::after,
.hamburger:hover .hamburger__line-in--02::before,
.hamburger:hover .hamburger__line-in--02::after,
.hamburger:hover .hamburger__line-in--03::before,
.hamburger:hover .hamburger__line-in--03::after {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
}

.hamburger:hover .hamburger__line-in--cross01::before,
.hamburger:hover .hamburger__line-in--cross01::after,
.hamburger:hover .hamburger__line-in--cross02::before,
.hamburger:hover .hamburger__line-in--cross02::after {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.hamburger.is-opened-navi:hover .hamburger__line-in--cross01::before,
.hamburger.is-opened-navi:hover .hamburger__line-in--cross01::after,
.hamburger.is-opened-navi:hover .hamburger__line-in--cross02::before,
.hamburger.is-opened-navi:hover .hamburger__line-in--cross02::after {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
}

.hamburger.is-opened-navi:hover .hamburger__line-in--01::before,
.hamburger.is-opened-navi:hover .hamburger__line-in--01::after,
.hamburger.is-opened-navi:hover .hamburger__line-in--02::before,
.hamburger.is-opened-navi:hover .hamburger__line-in--02::after,
.hamburger.is-opened-navi:hover .hamburger__line-in--03::before,
.hamburger.is-opened-navi:hover .hamburger__line-in--03::after {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.footer {
  padding: 32px;

  line-height: 1.4;
}

.footer {
}

.footer p:first-child {
  margin-top: 0;
}

.footer img {
  height: 42px;
}

.section {
  margin-top: 32px;
}

.section:first-child {
  padding-top: 0;
}

#mc_embed_signup { 
  font:14px var(--font-sans); 
}

#mc_embed_signup input, #mc_embed_signup .button {
  border-radius: 0;
  color: var(--color-text);
  font-weight: 700;
}

#mc_embed_signup form {
  padding: 0;
}

.single-home {
flex-direction: column;
}

.index {
    width: 100%;
  }

.index-title {
  margin: 0 auto;
  text-align: center;
  padding: 64px 0 32px;
}

@media screen and (min-width: 55em) {
.single-home {
flex-direction: row;
}

  .footer {
    padding: 64px;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 80vw;
  }
  .section {
    width: calc(50% - 32px);
    margin-right: auto;
    padding: 0 16px;
    max-width: 420px;
  }
  html,
  body {
    overflow-x: hidden;
    width: 100vw;
    height: 100%;
  }
  .hamburger {
    position: fixed;
    top: 0.5em;
    right: 0.5em;
    transform: scale(0.75);
  }
  .content {
    height: auto;
    min-height: 0;
    padding-bottom: 0;
  }
  .borderb {
    border-bottom: 128px solid var(--color-link-hover-bg);
  }
  .content--fixed {
    position: relative;
    z-index: 0;
    display: block;
    padding: 0.85em;
  }
  .text-part {
    width: 50%;
  }
}



/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYW5pdGl6ZS5jc3Mvc2FuaXRpemUuY3NzIiwiLi4vLi4vLi4vc3JjL2Nzcy9tYWluLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnRkFBZ0Y7O0FBRWhGO2dGQUNnRjs7QUFFaEY7OztHQUdHOztBQUVIOzs7Q0FHQyw2QkFBNkIsQ0FBQyxPQUFPO0NBQ3JDLG9CQUFvQixDQUFDLE9BQU87Q0FDNUI7O0FBRUQ7OztHQUdHOztBQUVIOztDQUVDLHlCQUF5QixDQUFDLE9BQU87Q0FDakMsd0JBQXdCLENBQUMsT0FBTztDQUNoQzs7QUFFRDs7OztHQUlHOztBQUVIO0NBQ0MsdUJBQXVCLENBQUMsT0FBTztDQUMvQixnQkFBZ0IsQ0FBQyxPQUFPO0NBQ3hCLDJCQUEyQixDQUFDLE9BQU87Q0FDbkMsK0JBQStCLENBQUMsT0FBTztDQUN2Qzs7QUFFRDtnRkFDZ0Y7O0FBRWhGOztHQUVHOztBQUVIOzs7Ozs7Q0FNQyxlQUFlO0NBQ2Y7O0FBRUQ7O0dBRUc7O0FBRUg7Q0FDQyxVQUFVO0NBQ1Y7O0FBRUQ7OztHQUdHOztBQUVIO0NBQ0MsZUFBZTtDQUNmLGdCQUFnQjtDQUNoQjs7QUFFRDtnRkFDZ0Y7O0FBRWhGOzs7R0FHRzs7QUFFSDs7T0FFTyxPQUFPO0NBQ2IsZUFBZTtDQUNmOztBQUVEOztHQUVHOztBQUVIO0NBQ0MsaUJBQWlCO0NBQ2pCOztBQUVEOzs7R0FHRzs7QUFFSDtDQUNDLHdCQUF3QixDQUFDLE9BQU87Q0FDaEMsVUFBVSxDQUFDLE9BQU87Q0FDbEIsa0JBQWtCLENBQUMsT0FBTztDQUMxQjs7QUFFRDs7R0FFRzs7QUFFSDs7Q0FFQyxpQkFBaUI7Q0FDakI7O0FBRUQ7OztHQUdHOztBQUVIO0NBQ0Msa0NBQWtDLENBQUMsT0FBTztDQUMxQyxlQUFlLENBQUMsT0FBTztDQUN2Qjs7QUFFRDtnRkFDZ0Y7O0FBRWhGOzs7R0FHRzs7QUFFSDtDQUNDLDhCQUE4QixDQUFDLE9BQU87Q0FDdEMsc0NB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QUNEO0lBQ0UsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxlQUFlO0lBQ2YsZ0JBQWdCO0dBQ2pCO0VBQ0Q7SUFDRSxXQUFXO0dBQ1o7Q0FDRiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBzYW5pdGl6ZS5jc3MgdjUuMC4wIHwgQ0MwIExpY2Vuc2UgfCBnaXRodWIuY29tL2pvbmF0aGFudG5lYWwvc2FuaXRpemUuY3NzICovXG5cbi8qIERvY3VtZW50IChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zZW1hbnRpY3MuaHRtbCNzZW1hbnRpY3MpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSByZXBlYXRpbmcgYmFja2dyb3VuZHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBBZGQgYm94IHNpemluZyBpbmhlcml0ZW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgLyogMSAqL1xuXHRib3gtc2l6aW5nOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW5oZXJpdGVuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuOjpiZWZvcmUsXG46OmFmdGVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiAxICovXG5cdHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQWRkIGJvcmRlciBib3ggc2l6aW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIHRoZSBkZWZhdWx0IGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDMuIFByZXZlbnQgZm9udCBzaXplIGFkanVzdG1lbnRzIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuXG5odG1sIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRjdXJzb3I6IGRlZmF1bHQ7IC8qIDIgKi9cblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cbi8qIFNlY3Rpb25zIChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zZW1hbnRpY3MuaHRtbCNzZWN0aW9ucylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuXHRtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG5cdGZvbnQtc2l6ZTogMmVtO1xuXHRtYXJnaW46IC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnQgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3NlbWFudGljcy5odG1sI2dyb3VwaW5nLWNvbnRlbnQpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4geyAvKiAxICovXG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuXG5maWd1cmUge1xuXHRtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG5cdGhlaWdodDogMDsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbGlzdCBzdHlsZSBvbiBuYXZpZ2F0aW9uIGxpc3RzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbm5hdiBvbCxcbm5hdiB1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3MgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3NlbWFudGljcy5odG1sI3RleHQtbGV2ZWwtc2VtYW50aWNzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG5cdC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cblxubWFyayB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmMDA7XG5cdGNvbG9yOiAjMDAwMDAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcblx0Zm9udC1zaXplOiA3NSU7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtLjI1ZW07XG59XG5cbnN1cCB7XG5cdHRvcDogLS41ZW07XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIHRleHQgc2hhZG93IG9uIHRleHQgc2VsZWN0aW9ucyAob3BpbmlvbmF0ZWQpLlxuICogMS4gUmVzdG9yZSB0aGUgY29sb3JpbmcgdW5kb25lIGJ5IGRlZmluaW5nIHRoZSB0ZXh0IHNoYWRvdyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjOyAvKiAxICovXG5cdGNvbG9yOiAjMDAwMDAwOyAvKiAxICovXG5cdHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNiM2Q0ZmM7IC8qIDEgKi9cblx0Y29sb3I6ICMwMDAwMDA7IC8qIDEgKi9cblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnQgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2VtYmVkZGVkLWNvbnRlbnQuaHRtbCNlbWJlZGRlZC1jb250ZW50KVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIENoYW5nZSB0aGUgYWxpZ25tZW50IG9uIG1lZGlhIGVsZW1lbnRzIGluIGFsbCBicm93ZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbnN2ZyB7XG5cdGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIFRhYnVsYXIgZGF0YSAoaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvdGFibGVzLmh0bWwjdGFibGVzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb2xsYXBzZSBib3JkZXIgc3BhY2luZ1xuICovXG5cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLyogRm9ybXMgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Zvcm1zLmh0bWwjZm9ybXMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRtYXJnaW46IDA7XG59XG5cbi8qKlxuICogSW5oZXJpdCBzdHlsaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IGluaGVyaXQ7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0bGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcblx0b3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG5cdGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAzICovXG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqIDIuIENoYW5nZSB0aGUgcmVzaXplIGRpcmVjdGlvbiBvbiB0ZXh0YXJlYXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxudGV4dGFyZWEge1xuXHRvdmVyZmxvdzogYXV0bzsgLyogMSAqL1xuXHRyZXNpemU6IHZlcnRpY2FsOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuXHRmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlIGVsZW1lbnRzIChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9mb3Jtcy5odG1sI2ludGVyYWN0aXZlLWVsZW1lbnRzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMsIC8qIDEgKi9cbm1lbnUge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcblx0ZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBTY3JpcHRpbmcgKGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3NjcmlwdGluZy5odG1sI3NjcmlwdGluZy0zKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKiBVc2VyIGludGVyYWN0aW9uIChodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbnRlcmFjdGlvbi5odG1sI2VkaXRpbmcpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIHRoZSB0YXBwaW5nIGRlbGF5IG9uIGNsaWNrYWJsZSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICogMS4gUmVtb3ZlIHRoZSB0YXBwaW5nIGRlbGF5IGluIElFIDEwLlxuICovXG5cbmEsXG5hcmVhLFxuYnV0dG9uLFxuaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCxcbnN1bW1hcnksXG50ZXh0YXJlYSxcblt0YWJpbmRleF0ge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC8qIDEgKi9cblx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogQVJJQSAoaHR0cHM6Ly93M2MuZ2l0aHViLmlvL2h0bWwtYXJpYS8pXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGJ1c3kgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5bYXJpYS1idXN5PVwidHJ1ZVwiXSB7XG5cdGN1cnNvcjogcHJvZ3Jlc3M7XG59XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBjb250cm9sIGVsZW1lbnRzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuW2FyaWEtY29udHJvbHNdIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKlxuICogQ2hhbmdlIHRoZSBkaXNwbGF5IG9uIHZpc3VhbGx5IGhpZGRlbiBhY2Nlc3NpYmxlIGVsZW1lbnRzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl1baGlkZGVuXTpub3QoOmZvY3VzKSB7XG5cdGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG5cdGRpc3BsYXk6IGluaGVyaXQ7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGRpc2FibGVkLCBub3QtZWRpdGFibGUsIG9yIG90aGVyd2lzZVxuICogaW5vcGVyYWJsZSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICovXG5cblthcmlhLWRpc2FibGVkXSB7XG5cdGN1cnNvcjogZGVmYXVsdDtcbn1cbiIsIkBpbXBvcnQgJ3Nhbml0aXplLmNzcyc7XG5cbkBjdXN0b20tbWVkaWEgLS1kZXNrdG9wICh3aWR0aCA+PSA1MDBweCkgYW5kICh3aWR0aCA8PSAxMjAwcHgpO1xuXG46cm9vdCB7XG4gIC0tZm9udC1zeXN0ZW0tdWk6IHN5c3RlbS11aSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuICAtLWZvbnQtc2VyaWY6ICdSb2JvdG8gU2xhYicsIHNlcmlmO1xuICAtLWZvbnQtc2FuczogJ1JvcGEgU2FucycsIHNhbnMtc2VyaWY7XG4gIC0tY29sb3ItdGV4dDogIzAxMDEwMTtcbiAgLS1jb2xvci1iZzogI2ZlZmVmZTtcbiAgLS1jb2xvci1saW5rOiAjMGUwZTBlO1xuICAtLWNvbG9yLWxpbmstYm9yZGVyOiAjMGUwZTBlO1xuICAtLWNvbG9yLWxpbmstaG92ZXI6ICNmZWZlZmU7XG4gIC0tY29sb3ItbGluay1ob3Zlci1iZzogIzI2MjYyNjtcbiAgLS1jb2xvci1pbmZvOiAjZmZmO1xuICAtLWNvbG9yLW1haW4tYmc6ICNmZWZlZmU7XG4gIC0tY29sb3IteWVsbG93OiAjZmFlZDE4O1xuICAtLWNvbG9yLXJlZDojZmY0ODAwO1xuICAtLWNvbG9yLWJsdWU6ICM0MWQ1ZTY7XG4gIC0tY29sb3ItZ3JlZW46ICMwYTk3OTc7XG4gIC0tcGF0aC1maWxsLTE6ICMwYTk3OTc7XG4gIC0tcGF0aC1maWxsLTI6ICNmYWVkMTg7XG4gIC0tcGF0aC1maWxsLTM6ICM0MWQ1ZTY7XG4gIC0tcGF0aC1maWxsLTQ6ICNmZjQ4MDA7XG4gIC0tY29sb3ItdGl0bGU6ICNmZmY7XG4gIC0tZm9udC1mYW1pbHktdGl0bGU6ICdSb2JvdG8gU2xhYicsIHNlcmlmO1xuICAtLWZvbnQtc2l6ZS10aXRsZTogN3ZtYXg7XG4gIC0tZm9udC13ZWlnaHQtdGl0bGU6IDcwMDtcbiAgLS1jb2xvci1tZW51OiAjMTcxNjE2O1xuICAtLWNvbG9yLW1lbnUtaG92ZXI6ICNmZmZmZmY7XG4gIC0tZm9udC1mYW1pbHktbWVudTogJ1JvYm90byBTbGFiJywgc2VyaWY7XG4gIC0tZm9udC1zaXplLW1lbnU6IDJ2bWF4O1xuICAtLWZvbnQtd2VpZ2h0LW1lbnU6IDcwMDtcbiAgLS1idXR0b24tYmc6ICNmZmY7XG4gIC0tYnV0dG9uLWNpcmNsZTogIzZiNmI2YjtcbiAgLS1idXR0b24tbGluZTogIzIyMjtcbn1cblxuLmpzIGJvZHkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XHRcdFxufVxuXG4uanMgYm9keS5yZW5kZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1zYW5zKTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGNvbG9yOiAjNTc1ODVjO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc2VyaWYpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuc3Ryb25nIHtcbiAgZm9udC1zaXplOiAwLjg0ZW07XG4gIC8qXHRtYXJnaW4tdG9wOiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNDVlbTsqL1xufVxuXG5cbmVtIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzVkOTNkODtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGluay1ib3JkZXIpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG59XG5cbmE6aG92ZXIsXG5hOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWhvdmVyLWJnKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW1nIHtcbn1cblxuLmhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIEljb25zICovXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5pY29uLS1rZXlib2FyZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbm1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1iZyk7XG59XG5cbi5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiAgXG4gIC5ib3JkZXJiIHtcbiAgYm9yZGVyLWJvdHRvbTogMzJweCBzb2xpZCB2YXIoLS1jb2xvci1saW5rLWhvdmVyLWJnKTtcbiAgfVxuLmNvbnRlbnQtLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmc6IDEuNWVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSA1MCU7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDRlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogJ2hlYWRlciAuLi4nXG4gICcuLi4gLi4uJ1xuICAnZ2l0aHViIGRlbW9zJztcbn1cblxuLmNvbnRlbnQtLWZpeGVkIGEge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cblxuLmhvbWUtcGFydCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogNzR2aDtcbn1cblxuXG4ueWVsbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3IteWVsbG93KTtcbn1cbi5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xufVxuLmJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcbn1cbi5ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcbn1cblxuLmhvbWUtcGFydCAuY292ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDQydnc7XG59XG5cbi5ob21lLXBhcnQuc2luZ2xlIC5jb3ZlciAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFic3RyYWN0IHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uaG9tZS1wYXJ0IC50aXRsZSB7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIG1hcmdpbi10b3A6IDMycHg7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4uaG9tZS1wYXJ0IC50aXRsZSBoMXtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cblxuLmhvbWUtcGFydCAudGV4dCB7XG4gIHotaW5kZXg6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4uaG9tZS1wYXJ0IC50ZXh0IHAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWJnKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBtaW4td2lkdGg6IDMyMHB4O1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgcGFkZGluZzogMWVtIDJlbTtcbn1cblxuXG4uaXRlbS5pbnRlcnZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDY0dmg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbn1cbi5pdGVtLmludGVydmlldyAuY292ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTtcbn1cbi5pdGVtLmludGVydmlldyAuY292ZXI6aG92ZXIge1xuICBvcGFjaXR5OiAwLjI7XG59XG5cbi5pdGVtLmludGVydmlldyAudGV4dCB7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xufVxuXG4uaXRlbS5pbnRlcnZpZXcueWVsbG93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTtcbn1cbi5pdGVtLmludGVydmlldy5yZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpO1xufVxuLml0ZW0uaW50ZXJ2aWV3LmJsdWU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibHVlKTtcbn1cbi5pdGVtLmludGVydmlldy5ncmVlbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuKTtcbn1cblxuLml0ZW0uaW50ZXJ2aWV3IC50ZXh0LnllbGxvdy10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXllbGxvdyk7XG59XG4uaXRlbS5pbnRlcnZpZXcgLnRleHQucmVkLXRleHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbn1cbi5pdGVtLmludGVydmlldyAudGV4dC5ibHVlLXRleHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XG59XG4uaXRlbS5pbnRlcnZpZXcgLnRleHQuZ3JlZW4tdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XG59XG5cbi5pdGVtLmludGVydmlldzpob3ZlciAudGV4dC55ZWxsb3ctdGV4dCxcbi5pdGVtLmludGVydmlldzpob3ZlciAudGV4dC5ibHVlLXRleHQsXG4uaXRlbS5pbnRlcnZpZXc6aG92ZXIgLnRleHQucmVkLXRleHQsXG4uaXRlbS5pbnRlcnZpZXc6aG92ZXIgLnRleHQuZ3JlZW4tdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbiAgXG4gIC5zaW5nbGUgLmNvdmVyIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NWVtKSB7XG4uaXRlbS5pbnRlcnZpZXcgLnRpdGxlIGgxIHtcbiAgZm9udC1zaXplOiA2NHB4O1xufVxuICAuaG9tZS1wYXJ0IC5jb3ZlciB7XG4gICAgd2lkdGg6IDg0dnc7XG4gIH1cbiAgLmhvbWUtcGFydCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAuaG9tZS1wYXJ0IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMWVtKTtcbiAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICB9XG4gIC5ob21lLXBhcnQgLnRleHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMmVtKTtcbiAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1ZW0pIHtcbiAgLmluZGV4IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5pbmRleCAuY292ZXIgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uaW5kZXggYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuLml0ZW0ge1xuICBtaW4taGVpZ2h0OiA0MnZoO1xuICBwYWRkaW5nOiAzMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG59XG5cbi5pdGVtIC50aXRsZSB7XG4gIFxufVxuXG4uaXRlbS55ZWxsb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xufVxuLml0ZW0ucmVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbn1cbi5pdGVtLmJsdWU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xufVxuLml0ZW0uZ3JlZW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xufVxuXG5cblxuXG4uYXJ0aWNsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDY2MHB4O1xuICBwYWRkaW5nOiAyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5hcnRpY2xlIC5mb3JtYXR0ZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5hcnRpY2xlIGltZyB7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5cbi50ZXh0LXBhcnQsIC50ZXh0LXBhcnQtZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAuNWVtIGF1dG87XG59XG4vKiBOYXZpZ2F0aW9uICovXG5cblxuLyogZGVtbyAzICovXG4uZ2xvYmFsLW1lbnUge1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogOTB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTAwO1xuICBwYWRkaW5nOiA2NHB4IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5nbG9iYWwtbWVudV9fc3ViIHtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gMzJweCk7XG59XG5cbi5nbG9iYWwtbWVudV9faXRlbSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tZW51KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LW1lbnUpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZW51KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lbnUpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMC4yNWVtIDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzLCBvcGFjaXR5IDAuMXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4uZ2xvYmFsLW1lbnVfX2l0ZW06aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbWVudS1ob3Zlcik7XG59XG5cbi5nbG9iYWwtbWVudV9faXRlbS5pcy1vcGVuZWQge1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiA5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDApO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5cbi5nbG9iYWwtbWVudV9faXRlbS5pcy1vcGVuZWQge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuXG4uZ2xvYmFsLW1lbnVfX2l0ZW06bnRoLW9mLXR5cGUoMSkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLmdsb2JhbC1tZW51X19pdGVtLmlzLW9wZW5lZDpudGgtb2YtdHlwZSgxKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNjVzO1xufVxuXG4uZ2xvYmFsLW1lbnVfX2l0ZW06bnRoLW9mLXR5cGUoMikge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLmdsb2JhbC1tZW51X19pdGVtLmlzLW9wZW5lZDpudGgtb2YtdHlwZSgyKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7XG59XG5cbi5nbG9iYWwtbWVudV9faXRlbTpudGgtb2YtdHlwZSgzKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uZ2xvYmFsLW1lbnVfX2l0ZW0uaXMtb3BlbmVkOm50aC1vZi10eXBlKDMpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC43NXM7XG59XG5cbi5nbG9iYWwtbWVudV9faXRlbTpudGgtb2YtdHlwZSg0KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uZ2xvYmFsLW1lbnVfX2l0ZW0uaXMtb3BlbmVkOm50aC1vZi10eXBlKDQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC44cztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTVlbSkge1xuLmdsb2JhbC1tZW51X19pdGVtIHtcbiAgbWF4LXdpZHRoOiA0NSU7XG59XG59XG4uc2hhcGUtb3ZlcmxheXMge1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLnNoYXBlLW92ZXJsYXlzLmlzLW9wZW5lZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnNoYXBlLW92ZXJsYXlzX19wYXRoOm50aC1vZi10eXBlKDEpIHtcbiAgZmlsbDogdmFyKC0tcGF0aC1maWxsLTEpO1xufVxuLnNoYXBlLW92ZXJsYXlzX19wYXRoOm50aC1vZi10eXBlKDIpIHtcbiAgZmlsbDogdmFyKC0tcGF0aC1maWxsLTIpO1xufVxuLnNoYXBlLW92ZXJsYXlzX19wYXRoOm50aC1vZi10eXBlKDMpIHtcbiAgZmlsbDogdmFyKC0tcGF0aC1maWxsLTMpO1xufVxuLnNoYXBlLW92ZXJsYXlzX19wYXRoOm50aC1vZi10eXBlKDQpIHtcbiAgZmlsbDogdmFyKC0tcGF0aC1maWxsLTQpO1xufVxuLnNoYXBlLW92ZXJsYXlzX19wYXRoOm50aC1vZi10eXBlKDQpIHtcbiAgZmlsbDogdmFyKC0tcGF0aC1maWxsLTQpO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaW50ZXJ2YWxIYW1idXJnZXJCb3JkZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjYpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS42KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjYpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS42KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGludGVydmFsSGFtYnVyZ2VyQm9yZGVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS42KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNik7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS42KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNik7XG4gIH1cbn1cblxuLmhhbWJ1cmdlciB7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIuMjVlbTtcbiAgcmlnaHQ6IDIuMjVlbTtcbiAgei1pbmRleDogMTEwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1iZyk7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG5cbi5oYW1idXJnZXI6OmFmdGVyIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjJzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuMnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGludGVydmFsSGFtYnVyZ2VyQm9yZGVyO1xuICBhbmltYXRpb24tbmFtZTogaW50ZXJ2YWxIYW1idXJnZXJCb3JkZXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMztcbn1cblxuLmhhbWJ1cmdlcl9fbGluZSB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbiB7XG4gIHdpZHRoOiA4NHB4O1xuICBoZWlnaHQ6IDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW46OmJlZm9yZSxcbi5oYW1idXJnZXJfX2xpbmUtaW46OmFmdGVyIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMnB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tbGluZSk7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW46OmJlZm9yZSB7XG4gIGxlZnQ6IC01NnB4O1xufVxuXG4uaGFtYnVyZ2VyX19saW5lLWluOjphZnRlciB7XG4gIGxlZnQ6IDA7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtLTAxLFxuLmhhbWJ1cmdlcl9fbGluZS0tMDIsXG4uaGFtYnVyZ2VyX19saW5lLS0wMyxcbi5oYW1idXJnZXJfX2xpbmUtLWNyb3NzMDEsXG4uaGFtYnVyZ2VyX19saW5lLS1jcm9zczAyIHtcbiAgbGVmdDogMThweDtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS0tMDEge1xuICB0b3A6IDI0LjZweDtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS0tMDIsXG4uaGFtYnVyZ2VyX19saW5lLS1jcm9zczAxLFxuLmhhbWJ1cmdlcl9fbGluZS0tY3Jvc3MwMiB7XG4gIHRvcDogMzFweDtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS0tMDMge1xuICB0b3A6IDM3LjRweDtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS0tY3Jvc3MwMSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtLWNyb3NzMDIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNnM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNnM7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC42cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC42cztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuXG4uaGFtYnVyZ2VyX19saW5lLWluOjpiZWZvcmUsXG4uaGFtYnVyZ2VyX19saW5lLWluOjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMSxcbi5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzMuMyUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMzLjMlKTtcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDEge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW4tLTAyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW4tLTAyOjpiZWZvcmUsXG4uaGFtYnVyZ2VyX19saW5lLWluLS0wMjo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDMge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW4tLTAzOjpiZWZvcmUsXG4uaGFtYnVyZ2VyX19saW5lLWluLS0wMzo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDEge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMHM7XG59XG5cbi5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbn1cblxuLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMjo6YmVmb3JlLFxuLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMjo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5oYW1idXJnZXIuaXMtb3BlbmVkLW5hdmkgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDEsXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAyLFxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aSAuaGFtYnVyZ2VyX19saW5lLWluLS0wMyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMzLjMlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMzLjMlKTtcbn1cblxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aSAuaGFtYnVyZ2VyX19saW5lLWluLS1jcm9zczAxLFxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aSAuaGFtYnVyZ2VyX19saW5lLWluLS1jcm9zczAyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aSAuaGFtYnVyZ2VyX19saW5lLWluLS0wMSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG59XG5cbi5oYW1idXJnZXIuaXMtb3BlbmVkLW5hdmkgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDMge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5oYW1idXJnZXIuaXMtb3BlbmVkLW5hdmkgLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xufVxuXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpIC5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbjo6YmVmb3JlLFxuLmhhbWJ1cmdlcjpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluOjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwJSk7XG59XG5cbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDE6OmJlZm9yZSxcbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDE6OmFmdGVyLFxuLmhhbWJ1cmdlcjpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS0wMjo6YmVmb3JlLFxuLmhhbWJ1cmdlcjpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS0wMjo6YWZ0ZXIsXG4uaGFtYnVyZ2VyOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAzOjpiZWZvcmUsXG4uaGFtYnVyZ2VyOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAzOjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDFzO1xufVxuXG4uaGFtYnVyZ2VyOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDE6OmJlZm9yZSxcbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMTo6YWZ0ZXIsXG4uaGFtYnVyZ2VyOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDI6OmJlZm9yZSxcbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tY3Jvc3MwMjo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbn1cblxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aTpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS1jcm9zczAxOjpiZWZvcmUsXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDE6OmFmdGVyLFxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aTpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS1jcm9zczAyOjpiZWZvcmUsXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLWNyb3NzMDI6OmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7XG59XG5cbi5oYW1idXJnZXIuaXMtb3BlbmVkLW5hdmk6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDE6OmJlZm9yZSxcbi5oYW1idXJnZXIuaXMtb3BlbmVkLW5hdmk6aG92ZXIgLmhhbWJ1cmdlcl9fbGluZS1pbi0tMDE6OmFmdGVyLFxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aTpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS0wMjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1vcGVuZWQtbmF2aTpob3ZlciAuaGFtYnVyZ2VyX19saW5lLWluLS0wMjo6YWZ0ZXIsXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAzOjpiZWZvcmUsXG4uaGFtYnVyZ2VyLmlzLW9wZW5lZC1uYXZpOmhvdmVyIC5oYW1idXJnZXJfX2xpbmUtaW4tLTAzOjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xufVxuXG5cbi5mb290ZXIge1xuICBwYWRkaW5nOiAzMnB4O1xuXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5mb290ZXIge1xufVxuXG4uZm9vdGVyIHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZm9vdGVyIGltZyB7XG4gIGhlaWdodDogNDJweDtcbn1cbi5zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cbi5zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbiNtY19lbWJlZF9zaWdudXAgeyBcbiAgZm9udDoxNHB4IHZhcigtLWZvbnQtc2Fucyk7IFxufVxuI21jX2VtYmVkX3NpZ251cCBpbnB1dCwgI21jX2VtYmVkX3NpZ251cCAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4jbWNfZW1iZWRfc2lnbnVwIGZvcm0ge1xuICBwYWRkaW5nOiAwO1xufVxuLnNpbmdsZS1ob21lIHtcbmZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cblxuICAuaW5kZXgge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbi5pbmRleC10aXRsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDY0cHggMCAzMnB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NWVtKSB7XG4uc2luZ2xlLWhvbWUge1xuZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nOiA2NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogODB2dztcbiAgfVxuICAuc2VjdGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMzJweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICBtYXgtd2lkdGg6IDQyMHB4O1xuICB9XG4gIGh0bWwsXG4gIGJvZHkge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5oYW1idXJnZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDAuNWVtO1xuICAgIHJpZ2h0OiAwLjVlbTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB9XG4gIC5jb250ZW50IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAuYm9yZGVyYiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMTI4cHggc29saWQgdmFyKC0tY29sb3ItbGluay1ob3Zlci1iZyk7XG4gIH1cbiAgLmNvbnRlbnQtLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjg1ZW07XG4gIH1cbiAgLnRleHQtcGFydCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG5cbiJdfQ== */