/*!********************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/normalize.css/normalize.css ***!
  \********************************************************************************************/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

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

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

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

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

/* Grouping content
   ========================================================================== */

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

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

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

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

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

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

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

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

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

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

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

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

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

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

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

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

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

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

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

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

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

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

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

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

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

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

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

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

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

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

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

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

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

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

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

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

template {
  display: none;
}

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

[hidden] {
  display: none;
}

/*!****************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/highlight.js/styles/github-dark.css ***!
  \****************************************************************************************************/
pre code.hljs {
  display: block;
  overflow-x: auto;
  padding: 1em
}
code.hljs {
  padding: 3px 5px
}
/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/
.hljs {
  color: #c9d1d9;
  background: #0d1117
}
.hljs-doctag,
.hljs-keyword,
.hljs-meta .hljs-keyword,
.hljs-template-tag,
.hljs-template-variable,
.hljs-type,
.hljs-variable.language_ {
  /* prettylights-syntax-keyword */
  color: #ff7b72
}
.hljs-title,
.hljs-title.class_,
.hljs-title.class_.inherited__,
.hljs-title.function_ {
  /* prettylights-syntax-entity */
  color: #d2a8ff
}
.hljs-attr,
.hljs-attribute,
.hljs-literal,
.hljs-meta,
.hljs-number,
.hljs-operator,
.hljs-variable,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-id {
  /* prettylights-syntax-constant */
  color: #79c0ff
}
.hljs-regexp,
.hljs-string,
.hljs-meta .hljs-string {
  /* prettylights-syntax-string */
  color: #a5d6ff
}
.hljs-built_in,
.hljs-symbol {
  /* prettylights-syntax-variable */
  color: #ffa657
}
.hljs-comment,
.hljs-code,
.hljs-formula {
  /* prettylights-syntax-comment */
  color: #8b949e
}
.hljs-name,
.hljs-quote,
.hljs-selector-tag,
.hljs-selector-pseudo {
  /* prettylights-syntax-entity-tag */
  color: #7ee787
}
.hljs-subst {
  /* prettylights-syntax-storage-modifier-import */
  color: #c9d1d9
}
.hljs-section {
  /* prettylights-syntax-markup-heading */
  color: #1f6feb;
  font-weight: bold
}
.hljs-bullet {
  /* prettylights-syntax-markup-list */
  color: #f2cc60
}
.hljs-emphasis {
  /* prettylights-syntax-markup-italic */
  color: #c9d1d9;
  font-style: italic
}
.hljs-strong {
  /* prettylights-syntax-markup-bold */
  color: #c9d1d9;
  font-weight: bold
}
.hljs-addition {
  /* prettylights-syntax-markup-inserted */
  color: #aff5b4;
  background-color: #033a16
}
.hljs-deletion {
  /* prettylights-syntax-markup-deleted */
  color: #ffdcd7;
  background-color: #67060c
}
.hljs-char.escape_,
.hljs-link,
.hljs-params,
.hljs-property,
.hljs-punctuation,
.hljs-tag {
  /* purposely ignored */
  
}
/*!***************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./app/scss/ajmoon.scss ***!
  \***************************************************************************************************************/
html {
  height: 100%;
}

body {
  height: 100%;
  background: #202020 url(79b35010f7e8df3758b2.jpg) no-repeat fixed center center;
  background-size: cover;
  color: #f5f5f5;
  font-family: "Raleway", sans-serif;
}
body h1, body h2, body h3, body h4, body h5, body h6 {
  font-weight: normal;
  font-family: "Montserrat", sans-serif;
}
body h1 {
  font-weight: 900;
  color: #ff4500;
}
body h2 {
  color: #6699cc;
}
body h3 {
  font-weight: 700;
}
body a {
  text-decoration: none;
  color: #ff8050;
}
body a:hover, body a:active, body a:focus {
  color: #6699cc;
}

.container {
  display: flex;
  flex-direction: column;
  height: 100vh;
}
@media (max-width: 599px) {
  .container {
    height: 100%;
  }
}
.container .header .wrapper {
  height: 64px;
  padding: 8px 64px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #202020;
  color: #f5f5f5;
}
.container .header .wrapper h1 {
  color: #ff4500;
}
@media (max-width: 599px) {
  .container .header .wrapper {
    padding: 8px 16px;
  }
}
.container .body {
  flex-grow: 1;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: auto;
}
.container .body .wrapper {
  display: flex;
  padding: 8px 64px;
  box-sizing: border-box;
}
@media (max-width: 599px) {
  .container .body .wrapper {
    padding: 8px 16px;
  }
}
.container .body .subheader {
  min-height: 48px;
  padding: 8px 64px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #202020;
  color: #f5f5f5;
}
@media (max-width: 599px) {
  .container .body .subheader {
    padding: 8px 16px;
  }
}
.container .body .nav .wrapper {
  display: flex;
  padding: 16px 56px;
  box-sizing: border-box;
}
@media (max-width: 599px) {
  .container .body .nav .wrapper {
    padding: 16px 8px;
  }
}
.container .body .nav .wrapper .grid {
  display: flex;
  flex-wrap: wrap;
}
.container .body .nav .wrapper .grid .tile {
  width: 128px;
  margin: 8px;
}
@media (max-width: 599px) {
  .container .body .nav .wrapper .grid .tile {
    width: calc(50vw - 26px);
  }
}
.container .body .nav .wrapper .grid .tile img {
  width: 128px;
}
@media (max-width: 599px) {
  .container .body .nav .wrapper .grid .tile img {
    width: calc(50vw - 26px);
  }
}
.container .body .post {
  display: flex;
  flex-direction: column;
}
.container .body .post .subheader {
  padding: 8px 56px;
}
@media (max-width: 599px) {
  .container .body .post .subheader {
    padding: 8px 8px;
  }
}
.container .body .post .post-body {
  display: flex;
  flex-direction: column;
  padding: 16px 56px;
  box-sizing: border-box;
}
@media (max-width: 599px) {
  .container .body .post .post-body {
    padding: 16px 8px;
  }
}
.container .body .post .hljs {
  border: solid 2px #cba4f8;
  border-radius: 8px;
}
.container .body .post .author {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  color: #b5b5b5;
}
.container .body .post .author img.avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  margin-right: 16px;
  background-color: #002233;
  flex-shrink: 0;
}
.container .body .post .author .name {
  font-weight: bold;
  margin-right: 8px;
}
.container .body .post .author .date {
  font-style: italic;
}
.container .body .post .content {
  max-width: 800px;
}
.container .body .post .content img {
  width: 75%;
  display: block;
  margin-bottom: 4px;
}
@media (max-width: 599px) {
  .container .body .post .content img {
    width: 100%;
  }
}
.container .body .post .sources {
  margin-top: 24px;
}
.container .body .post .sources .sources-label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: 14px;
  color: #b5b5b5;
}
.container .body .post .sources .sources-label svg {
  flex-shrink: 0;
}
.container .body .post .sources .source-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px;
}
.container .body .post .sources a.source-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: solid 1px rgba(245, 245, 245, 0.25);
  border-radius: 8px;
  box-sizing: border-box;
  color: #f5f5f5;
}
.container .body .post .sources a.source-card img {
  width: 16px;
  height: 16px;
  display: block;
  margin-bottom: 0;
  border-radius: 3px;
  flex-shrink: 0;
}
.container .body .post .sources a.source-card .source-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.container .body .post .sources a.source-card .source-body .source-title {
  font-size: 13px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.container .body .post .sources a.source-card .source-body .source-domain {
  font-size: 11px;
  color: #b5b5b5;
}
.container .body .post .sources a.source-card:hover, .container .body .post .sources a.source-card:active, .container .body .post .sources a.source-card:focus {
  color: #f5f5f5;
  border-color: #6699cc;
  background-color: rgba(245, 245, 245, 0.03);
}
.container .body .wrapper .intro {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.container .body .wrapper .intro .avatar {
  width: 64px;
  height: 64px;
  margin: 8px 16px 8px 0;
}
.container .body .wrapper .intro .avatar img {
  width: 64px;
  height: 64px;
  border-radius: 50%;
}
@media (max-width: 599px) {
  .container .body .wrapper .intro {
    flex-direction: column;
  }
}
.container .footer {
  height: 64px;
  padding: 8px 64px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #202020;
  color: #b5b5b5;
}
@media (max-width: 599px) {
  .container .footer {
    padding: 8px 16px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWptb29uLjE2ZjQ2NGY5YWViZmM1OGZhYjlmLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSwyRUFBMkU7O0FBRTNFOytFQUMrRTs7QUFFL0U7OztFQUdFOztBQUVGO0VBQ0UsaUJBQWlCLEVBQUUsTUFBTTtFQUN6Qiw4QkFBOEIsRUFBRSxNQUFNO0FBQ3hDOztBQUVBOytFQUMrRTs7QUFFL0U7O0VBRUU7O0FBRUY7RUFDRSxTQUFTO0FBQ1g7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzs7RUFHRTs7QUFFRjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7QUFDbEI7O0FBRUE7K0VBQytFOztBQUUvRTs7O0VBR0U7O0FBRUY7RUFDRSx1QkFBdUIsRUFBRSxNQUFNO0VBQy9CLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLGlCQUFpQixFQUFFLE1BQU07QUFDM0I7O0FBRUE7OztFQUdFOztBQUVGO0VBQ0UsaUNBQWlDLEVBQUUsTUFBTTtFQUN6QyxjQUFjLEVBQUUsTUFBTTtBQUN4Qjs7QUFFQTsrRUFDK0U7O0FBRS9FOztFQUVFOztBQUVGO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBOzs7RUFHRTs7QUFFRjtFQUNFLG1CQUFtQixFQUFFLE1BQU07RUFDM0IsMEJBQTBCLEVBQUUsTUFBTTtFQUNsQyxpQ0FBaUMsRUFBRSxNQUFNO0FBQzNDOztBQUVBOztFQUVFOztBQUVGOztFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQTs7O0VBR0U7O0FBRUY7OztFQUdFLGlDQUFpQyxFQUFFLE1BQU07RUFDekMsY0FBYyxFQUFFLE1BQU07QUFDeEI7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzs7RUFHRTs7QUFFRjs7RUFFRSxjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBOytFQUMrRTs7QUFFL0U7O0VBRUU7O0FBRUY7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7K0VBQytFOztBQUUvRTs7O0VBR0U7O0FBRUY7Ozs7O0VBS0Usb0JBQW9CLEVBQUUsTUFBTTtFQUM1QixlQUFlLEVBQUUsTUFBTTtFQUN2QixpQkFBaUIsRUFBRSxNQUFNO0VBQ3pCLFNBQVMsRUFBRSxNQUFNO0FBQ25COztBQUVBOzs7RUFHRTs7QUFFRjtRQUNRLE1BQU07RUFDWixpQkFBaUI7QUFDbkI7O0FBRUE7OztFQUdFOztBQUVGO1NBQ1MsTUFBTTtFQUNiLG9CQUFvQjtBQUN0Qjs7QUFFQTs7RUFFRTs7QUFFRjs7OztFQUlFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRTs7QUFFRjs7OztFQUlFLGtCQUFrQjtFQUNsQixVQUFVO0FBQ1o7O0FBRUE7O0VBRUU7O0FBRUY7Ozs7RUFJRSw4QkFBOEI7QUFDaEM7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSw4QkFBOEI7QUFDaEM7O0FBRUE7Ozs7O0VBS0U7O0FBRUY7RUFDRSxzQkFBc0IsRUFBRSxNQUFNO0VBQzlCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLG1CQUFtQixFQUFFLE1BQU07QUFDN0I7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSxjQUFjO0FBQ2hCOztBQUVBOzs7RUFHRTs7QUFFRjs7RUFFRSxzQkFBc0IsRUFBRSxNQUFNO0VBQzlCLFVBQVUsRUFBRSxNQUFNO0FBQ3BCOztBQUVBOztFQUVFOztBQUVGOztFQUVFLFlBQVk7QUFDZDs7QUFFQTs7O0VBR0U7O0FBRUY7RUFDRSw2QkFBNkIsRUFBRSxNQUFNO0VBQ3JDLG9CQUFvQixFQUFFLE1BQU07QUFDOUI7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7OztFQUdFOztBQUVGO0VBQ0UsMEJBQTBCLEVBQUUsTUFBTTtFQUNsQyxhQUFhLEVBQUUsTUFBTTtBQUN2Qjs7QUFFQTsrRUFDK0U7O0FBRS9FOztFQUVFOztBQUVGO0VBQ0UsY0FBYztBQUNoQjs7QUFFQTs7RUFFRTs7QUFFRjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTsrRUFDK0U7O0FBRS9FOztFQUVFOztBQUVGO0VBQ0UsYUFBYTtBQUNmOztBQUVBOztFQUVFOztBQUVGO0VBQ0UsYUFBYTtBQUNmOzs7OztBQzVWQTtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEI7QUFDRjtBQUNBO0VBQ0U7QUFDRjtBQUNBOzs7Ozs7Ozs7Q0FTQztBQUNEO0VBQ0UsY0FBYztFQUNkO0FBQ0Y7QUFDQTs7Ozs7OztFQU9FLGdDQUFnQztFQUNoQztBQUNGO0FBQ0E7Ozs7RUFJRSwrQkFBK0I7RUFDL0I7QUFDRjtBQUNBOzs7Ozs7Ozs7O0VBVUUsaUNBQWlDO0VBQ2pDO0FBQ0Y7QUFDQTs7O0VBR0UsK0JBQStCO0VBQy9CO0FBQ0Y7QUFDQTs7RUFFRSxpQ0FBaUM7RUFDakM7QUFDRjtBQUNBOzs7RUFHRSxnQ0FBZ0M7RUFDaEM7QUFDRjtBQUNBOzs7O0VBSUUsbUNBQW1DO0VBQ25DO0FBQ0Y7QUFDQTtFQUNFLGdEQUFnRDtFQUNoRDtBQUNGO0FBQ0E7RUFDRSx1Q0FBdUM7RUFDdkMsY0FBYztFQUNkO0FBQ0Y7QUFDQTtFQUNFLG9DQUFvQztFQUNwQztBQUNGO0FBQ0E7RUFDRSxzQ0FBc0M7RUFDdEMsY0FBYztFQUNkO0FBQ0Y7QUFDQTtFQUNFLG9DQUFvQztFQUNwQyxjQUFjO0VBQ2Q7QUFDRjtBQUNBO0VBQ0Usd0NBQXdDO0VBQ3hDLGNBQWM7RUFDZDtBQUNGO0FBQ0E7RUFDRSx1Q0FBdUM7RUFDdkMsY0FBYztFQUNkO0FBQ0Y7QUFDQTs7Ozs7O0VBTUUsc0JBQXNCOztBQUV4QixDOzs7O0FDOUdBO0VBQ0U7QUFKRjs7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGNDUlk7RURTWjtBQUpGO0FBTUU7RUFDRTtFQUNBO0FBSko7QUFNRTtFQUNFO0VBQ0EsY0NyQkk7QURpQlI7QUFNRTtFQUNFLGNDdEJVO0FEa0JkO0FBTUU7RUFDRTtBQUpKO0FBT0U7RUFDRTtFQUNBLGNDL0JVO0FEMEJkO0FBT0k7RUFDRSxjQ2pDUTtBRDRCZDs7QUFVQTtFQUNFO0VBQ0E7RUFDQTtBQVBGO0FFaENFO0VGb0NGO0lBTUk7RUFORjtBQUNGO0FHeENFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEseUJGWlM7RUVhVCxjRk5VO0FEK0NkO0FHdkNJO0VBQ0UsY0ZiRTtBRHNEUjtBRWxERTtFQ0hBO0lBZ0JJO0VIeUNKO0FBQ0Y7QUkzREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSjZERjtBSTNERTtFQUNFO0VBQ0E7RUFDQTtBSjZESjtBRXJFRTtFRUtBO0lBS0k7RUorREo7QUFDRjtBSzVFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLHlCSmJXO0VJY1gsY0pQWTtBRG9GZDtBRXBGRTtFR0ZGO0lBWUk7RUw4RUY7QUFDRjtBSzFFRTtFQUNFO0VBQ0E7RUFDQTtBTDRFSjtBRTlGRTtFR2VBO0lBS0k7RUw4RUo7QUFDRjtBSzVFSTtFQUNFO0VBQ0E7QUw4RU47QUs1RU07RUFDRTtFQUNBO0FMOEVSO0FFM0dFO0VHMkJJO0lBS0ksd0JBcENVO0VMbUhsQjtBQUNGO0FLN0VRO0VBQ0U7QUwrRVY7QUVuSEU7RUdtQ007SUFJSSx3QkEzQ1E7RUwySGxCO0FBQ0Y7QU01SEE7RUFDRTtFQUNBO0FOOEhGO0FNNUhFO0VBQ0U7QU44SEo7QUUvSEU7RUlBQTtJQUdJO0VOZ0lKO0FBQ0Y7QU03SEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBTitISjtBRTFJRTtFSU9BO0lBTUk7RU5pSUo7QUFDRjtBTTlIRTtFQUNFO0VBQ0E7QU5nSUo7QU03SEU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjTHpCVTtBRHdKZDtBTTdISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJMdkNPO0VLd0NQO0FOK0hOO0FNNUhJO0VBQ0U7RUFDQTtBTjhITjtBTTNISTtFQUNFO0FONkhOO0FNekhFO0VBQ0U7QU4ySEo7QU0xSEk7RUFDRTtFQUNBO0VBQ0E7QU40SE47QUVoTEU7RUlpREU7SUFLSTtFTjhITjtBQUNGO0FNMUhFO0VBQ0U7QU40SEo7QU0xSEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0xuRVE7QUQrTGQ7QU0xSE07RUFDRTtBTjRIUjtBTXhISTtFQUNFO0VBQ0E7RUFDQTtBTjBITjtBTXZISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0x6RlE7QURrTmQ7QU12SE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU55SFI7QU10SE07RUFDRTtFQUNBO0VBQ0E7QU53SFI7QU10SFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU53SFY7QU1ySFE7RUFDRTtFQUNBLGNMbkhJO0FEME9kO0FNbkhNO0VBR0UsY0wzSE07RUs0SE4scUJMOUhNO0VLK0hOO0FObUhSO0FPalBFO0VBQ0U7RUFDQTtFQUNBO0FQbVBKO0FPalBJO0VBQ0UsV0FUSztFQVVMLFlBVks7RUFXTDtBUG1QTjtBT2pQTTtFQUNFLFdBZEc7RUFlSCxZQWZHO0VBZ0JIO0FQbVBSO0FFL1BFO0VLREE7SUFrQkk7RVBrUEo7QUFDRjtBUXhRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLHlCUFhXO0VPWVgsY1BKWTtBRDZRZDtBRTlRRTtFTUpGO0lBWUk7RVIwUUY7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGlnaGxpZ2h0LmpzL3N0eWxlcy9naXRodWItZGFyay5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvYWptb29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvX2NvbG91cnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hcHAvc2Nzcy9fY29uZmlnLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL2FwcC9zY3NzL19ib2R5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uL2FwcC9zY3NzL19wb3N0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvX2ludHJvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXBwL3Njc3MvX2Zvb3Rlci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJwcmUgY29kZS5obGpzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHBhZGRpbmc6IDFlbVxufVxuY29kZS5obGpzIHtcbiAgcGFkZGluZzogM3B4IDVweFxufVxuLyohXG4gIFRoZW1lOiBHaXRIdWIgRGFya1xuICBEZXNjcmlwdGlvbjogRGFyayB0aGVtZSBhcyBzZWVuIG9uIGdpdGh1Yi5jb21cbiAgQXV0aG9yOiBnaXRodWIuY29tXG4gIE1haW50YWluZXI6IEBIaXJzZVxuICBVcGRhdGVkOiAyMDIxLTA1LTE1XG5cbiAgT3V0ZGF0ZWQgYmFzZSB2ZXJzaW9uOiBodHRwczovL2dpdGh1Yi5jb20vcHJpbWVyL2dpdGh1Yi1zeW50YXgtZGFya1xuICBDdXJyZW50IGNvbG9ycyB0YWtlbiBmcm9tIEdpdEh1YidzIENTU1xuKi9cbi5obGpzIHtcbiAgY29sb3I6ICNjOWQxZDk7XG4gIGJhY2tncm91bmQ6ICMwZDExMTdcbn1cbi5obGpzLWRvY3RhZyxcbi5obGpzLWtleXdvcmQsXG4uaGxqcy1tZXRhIC5obGpzLWtleXdvcmQsXG4uaGxqcy10ZW1wbGF0ZS10YWcsXG4uaGxqcy10ZW1wbGF0ZS12YXJpYWJsZSxcbi5obGpzLXR5cGUsXG4uaGxqcy12YXJpYWJsZS5sYW5ndWFnZV8ge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LWtleXdvcmQgKi9cbiAgY29sb3I6ICNmZjdiNzJcbn1cbi5obGpzLXRpdGxlLFxuLmhsanMtdGl0bGUuY2xhc3NfLFxuLmhsanMtdGl0bGUuY2xhc3NfLmluaGVyaXRlZF9fLFxuLmhsanMtdGl0bGUuZnVuY3Rpb25fIHtcbiAgLyogcHJldHR5bGlnaHRzLXN5bnRheC1lbnRpdHkgKi9cbiAgY29sb3I6ICNkMmE4ZmZcbn1cbi5obGpzLWF0dHIsXG4uaGxqcy1hdHRyaWJ1dGUsXG4uaGxqcy1saXRlcmFsLFxuLmhsanMtbWV0YSxcbi5obGpzLW51bWJlcixcbi5obGpzLW9wZXJhdG9yLFxuLmhsanMtdmFyaWFibGUsXG4uaGxqcy1zZWxlY3Rvci1hdHRyLFxuLmhsanMtc2VsZWN0b3ItY2xhc3MsXG4uaGxqcy1zZWxlY3Rvci1pZCB7XG4gIC8qIHByZXR0eWxpZ2h0cy1zeW50YXgtY29uc3RhbnQgKi9cbiAgY29sb3I6ICM3OWMwZmZcbn1cbi5obGpzLXJlZ2V4cCxcbi5obGpzLXN0cmluZyxcbi5obGpzLW1ldGEgLmhsanMtc3RyaW5nIHtcbiAgLyogcHJldHR5bGlnaHRzLXN5bnRheC1zdHJpbmcgKi9cbiAgY29sb3I6ICNhNWQ2ZmZcbn1cbi5obGpzLWJ1aWx0X2luLFxuLmhsanMtc3ltYm9sIHtcbiAgLyogcHJldHR5bGlnaHRzLXN5bnRheC12YXJpYWJsZSAqL1xuICBjb2xvcjogI2ZmYTY1N1xufVxuLmhsanMtY29tbWVudCxcbi5obGpzLWNvZGUsXG4uaGxqcy1mb3JtdWxhIHtcbiAgLyogcHJldHR5bGlnaHRzLXN5bnRheC1jb21tZW50ICovXG4gIGNvbG9yOiAjOGI5NDllXG59XG4uaGxqcy1uYW1lLFxuLmhsanMtcXVvdGUsXG4uaGxqcy1zZWxlY3Rvci10YWcsXG4uaGxqcy1zZWxlY3Rvci1wc2V1ZG8ge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LWVudGl0eS10YWcgKi9cbiAgY29sb3I6ICM3ZWU3ODdcbn1cbi5obGpzLXN1YnN0IHtcbiAgLyogcHJldHR5bGlnaHRzLXN5bnRheC1zdG9yYWdlLW1vZGlmaWVyLWltcG9ydCAqL1xuICBjb2xvcjogI2M5ZDFkOVxufVxuLmhsanMtc2VjdGlvbiB7XG4gIC8qIHByZXR0eWxpZ2h0cy1zeW50YXgtbWFya3VwLWhlYWRpbmcgKi9cbiAgY29sb3I6ICMxZjZmZWI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkXG59XG4uaGxqcy1idWxsZXQge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LW1hcmt1cC1saXN0ICovXG4gIGNvbG9yOiAjZjJjYzYwXG59XG4uaGxqcy1lbXBoYXNpcyB7XG4gIC8qIHByZXR0eWxpZ2h0cy1zeW50YXgtbWFya3VwLWl0YWxpYyAqL1xuICBjb2xvcjogI2M5ZDFkOTtcbiAgZm9udC1zdHlsZTogaXRhbGljXG59XG4uaGxqcy1zdHJvbmcge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LW1hcmt1cC1ib2xkICovXG4gIGNvbG9yOiAjYzlkMWQ5O1xuICBmb250LXdlaWdodDogYm9sZFxufVxuLmhsanMtYWRkaXRpb24ge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LW1hcmt1cC1pbnNlcnRlZCAqL1xuICBjb2xvcjogI2FmZjViNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAzM2ExNlxufVxuLmhsanMtZGVsZXRpb24ge1xuICAvKiBwcmV0dHlsaWdodHMtc3ludGF4LW1hcmt1cC1kZWxldGVkICovXG4gIGNvbG9yOiAjZmZkY2Q3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjcwNjBjXG59XG4uaGxqcy1jaGFyLmVzY2FwZV8sXG4uaGxqcy1saW5rLFxuLmhsanMtcGFyYW1zLFxuLmhsanMtcHJvcGVydHksXG4uaGxqcy1wdW5jdHVhdGlvbixcbi5obGpzLXRhZyB7XG4gIC8qIHB1cnBvc2VseSBpZ25vcmVkICovXG4gIFxufSIsIkB1c2UgXCJzYXNzOm1ldGFcIjtcbkB1c2UgXCJjb2xvdXJzXCI7XG5cbkB1c2UgXCJjb25maWdcIjtcbkBpbXBvcnQgXCJ+bm9ybWFsaXplLmNzc1wiO1xuQGltcG9ydCAnfmhpZ2hsaWdodC5qcy9zdHlsZXMvZ2l0aHViLWRhcmsuY3NzJztcblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogY29sb3Vycy4kY29sLWJnLXByaSB1cmwoJy9hcHAvYXNzZXRzL2JnLmpwZycpIG5vLXJlcGVhdCBmaXhlZCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBjb2xvcjogY29sb3Vycy4kY29sLXR4dC1wcmk7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG5cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICB9XG4gIGgxIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGNvbG9yOiBjb2xvdXJzLiRjb2wtaDtcbiAgfVxuICBoMiB7XG4gICAgY29sb3I6IGNvbG91cnMuJGNvbC1hY2Mtc2VjO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBjb2xvdXJzLiRjb2wtYWNjLXByaTtcblxuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvdXJzLiRjb2wtYWNjLXNlYztcbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwdmg7XG5cbiAgQGluY2x1ZGUgY29uZmlnLm1vYmlsZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWV0YS5sb2FkLWNzcyhcImhlYWRlclwiKTtcbiAgQGluY2x1ZGUgbWV0YS5sb2FkLWNzcyhcImJvZHlcIik7XG4gIEBpbmNsdWRlIG1ldGEubG9hZC1jc3MoXCJmb290ZXJcIik7XG59XG4iLCIkY29sLWJnLXByaTogIzIwMjAyMDtcbiRjb2wtYmctc2VjOiAjMDAyMjMzO1xuXG4kY29sLWg6ICNmZjQ1MDA7XG4kY29sLWFjYy1wcmk6ICNmZjgwNTA7XG4kY29sLWFjYy1zZWM6ICM2Njk5Y2M7XG5cbiRjb2wtdHh0LXByaTogI2Y1ZjVmNTtcbiRjb2wtdHh0LXNlYzogI2I1YjViNTtcblxuJGNvbC1taXNjLXByaTogI2NiYTRmODtcbiRjb2wtbWlzYy1zZWM6ICMwMDgwODA7XG4iLCJAdXNlIFwiY29sb3Vyc1wiO1xuXG4kbWFyZ2luOiA4cHg7XG5cbiRtb2JpbGUtd2lkdGg6IDYwMHB4O1xuXG5AbWl4aW4gbW9iaWxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1vYmlsZS13aWR0aCAtIDFweH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQHVzZSBcImNvbmZpZ1wiO1xuQHVzZSBcImNvbG91cnNcIjtcblxuLmhlYWRlciB7XG4gIC53cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgcGFkZGluZzogOHB4IDY0cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Vycy4kY29sLWJnLXByaTtcbiAgICBjb2xvcjogY29sb3Vycy4kY29sLXR4dC1wcmk7XG5cbiAgICBoMSB7XG4gICAgICBjb2xvcjogY29sb3Vycy4kY29sLWg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY29uZmlnLm1vYmlsZSB7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1ldGFcIjtcbkB1c2UgXCJjb25maWdcIjtcblxuLmJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgLndyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogOHB4IDY0cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBAaW5jbHVkZSBjb25maWcubW9iaWxlIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1ldGEubG9hZC1jc3MoXCJuYXZcIik7XG4gIEBpbmNsdWRlIG1ldGEubG9hZC1jc3MoXCJwb3N0XCIpO1xuICBAaW5jbHVkZSBtZXRhLmxvYWQtY3NzKFwiaW50cm9cIik7XG59XG4iLCJAdXNlIFwiY29sb3Vyc1wiO1xuQHVzZSBcImNvbmZpZ1wiO1xuXG4kdGlsZS13aWR0aC1tb2JpbGU6IGNhbGMoNTB2dyAtIDI2cHgpO1xuXG4uc3ViaGVhZGVyIHtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgcGFkZGluZzogOHB4IDY0cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvdXJzLiRjb2wtYmctcHJpO1xuICBjb2xvcjogY29sb3Vycy4kY29sLXR4dC1wcmk7XG5cbiAgQGluY2x1ZGUgY29uZmlnLm1vYmlsZSB7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gIH1cbn1cblxuLm5hdiB7XG4gIC53cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDE2cHggNTZweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpbmNsdWRlIGNvbmZpZy5tb2JpbGUge1xuICAgICAgcGFkZGluZzogMTZweCA4cHg7XG4gICAgfVxuXG4gICAgLmdyaWQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLnRpbGUge1xuICAgICAgICB3aWR0aDogMTI4cHg7XG4gICAgICAgIG1hcmdpbjogOHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGNvbmZpZy5tb2JpbGUge1xuICAgICAgICAgIHdpZHRoOiAkdGlsZS13aWR0aC1tb2JpbGU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMjhweDtcblxuICAgICAgICAgIEBpbmNsdWRlIGNvbmZpZy5tb2JpbGUge1xuICAgICAgICAgICAgd2lkdGg6ICR0aWxlLXdpZHRoLW1vYmlsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJjb2xvdXJzXCI7XG5AdXNlIFwiY29uZmlnXCI7XG5cbi5wb3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAuc3ViaGVhZGVyIHtcbiAgICBwYWRkaW5nOiA4cHggNTZweDtcbiAgICBAaW5jbHVkZSBjb25maWcubW9iaWxlIHtcbiAgICAgIHBhZGRpbmc6IDhweCA4cHg7XG4gICAgfVxuICB9XG5cbiAgLnBvc3QtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDE2cHggNTZweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpbmNsdWRlIGNvbmZpZy5tb2JpbGUge1xuICAgICAgcGFkZGluZzogMTZweCA4cHg7XG4gICAgfVxuICB9XG5cbiAgLmhsanMge1xuICAgIGJvcmRlcjogc29saWQgMnB4IGNvbG91cnMuJGNvbC1taXNjLXByaTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIH1cblxuICAuYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBjb2xvcjogY29sb3Vycy4kY29sLXR4dC1zZWM7XG5cbiAgICBpbWcuYXZhdGFyIHtcbiAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Vycy4kY29sLWJnLXNlYztcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgfVxuXG4gICAgLmRhdGUge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICBAaW5jbHVkZSBjb25maWcubW9iaWxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNvdXJjZXMge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICAuc291cmNlcy1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiBjb2xvdXJzLiRjb2wtdHh0LXNlYztcblxuICAgICAgc3ZnIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNvdXJjZS1jYXJkcyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjIwcHgsIDFmcikpO1xuICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgYS5zb3VyY2UtY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMTBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4yNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgY29sb3I6IGNvbG91cnMuJGNvbC10eHQtcHJpO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgLnNvdXJjZS1ib2R5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuXG4gICAgICAgIC5zb3VyY2UtdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuc291cmNlLWRvbWFpbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIGNvbG9yOiBjb2xvdXJzLiRjb2wtdHh0LXNlYztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGNvbG91cnMuJGNvbC10eHQtcHJpO1xuICAgICAgICBib3JkZXItY29sb3I6IGNvbG91cnMuJGNvbC1hY2Mtc2VjO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuMDMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcImNvbmZpZ1wiO1xuQHVzZSBcImNvbG91cnNcIjtcblxuJGltZy1zaXplOiA2NHB4O1xuXG4ud3JhcHBlciB7XG4gIC5pbnRybyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgIC5hdmF0YXIge1xuICAgICAgd2lkdGg6ICRpbWctc2l6ZTtcbiAgICAgIGhlaWdodDogJGltZy1zaXplO1xuICAgICAgbWFyZ2luOiBjb25maWcuJG1hcmdpbiBjb25maWcuJG1hcmdpbiAqIDIgY29uZmlnLiRtYXJnaW4gMDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6ICRpbWctc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkaW1nLXNpemU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjb25maWcubW9iaWxlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwiY29uZmlnXCI7XG5AdXNlIFwiY29sb3Vyc1wiO1xuXG4uZm9vdGVyIHtcbiAgaGVpZ2h0OiA2NHB4O1xuICBwYWRkaW5nOiA4cHggNjRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG91cnMuJGNvbC1iZy1wcmk7XG4gIGNvbG9yOiBjb2xvdXJzLiRjb2wtdHh0LXNlYztcblxuICBAaW5jbHVkZSBjb25maWcubW9iaWxlIHtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/